Get Text Portions Introduction
In PowerPoint table cells, you can work with individual parts of text by changing their formatting independently. For example, you can select a portion of text and change its font, size, color, or style (bold, italic, underline) without affecting the rest of the text. Use the following methods to get text portions from a paragraph.
GetTableCellPortions
API
Type
Description
Resource
/slides/{name}/slides/{slideIndex}/shapes/{shapeIndex}/rows/{rowIndex}/cells/{cellIndex}/paragraphs/{paragraphIndex}/portions
GET
Returns text portions from a paragraph in a table cell in a presentation saved in a storage.
GetTableCellPortions
Request Parameters
Name
Type
Location
Required
Description
name
string
path
true
The name of a presentation file.
slideIndex
integer
path
true
The 1-based index of a slide.
shapeIndex
integer
path
true
The 1-based index of a shape (must be a table).
rowIndex
integer
path
true
The 1-based index of a row.
cellIndex
integer
path
true
The 1-based index of a cell.
paragraphIndex
integer
path
true
The 1-based index of a paragraph.
password
string
header
false
The password to open the presentation.
folder
string
query
false
The path to the folder containing the presentation file.
storage
string
query
false
The name of the storage contaning the folder.
Examples
In the default storage, the document MyPresentation.pptx contains a table (the first shape) with four columns and three rows on the ninth slide. The cell (2, 2) contains three paragraphs. Get text portions from the third paragraph.
cURL Solution
Request
Get an Access Token
curl -X POST "https://api.aspose.cloud/connect/token" \
-d "grant_type=client_credentials&client_id=MyClientId&client_secret=MyClientSecret" \
-H "Content-Type: application/x-www-form-urlencoded"
Get the Text Portions
curl -X GET "https://api.aspose.cloud/v3.0/slides/MyPresentation.pptx/slides/9/shapes/1/rows/2/cells/2/paragraphs/3/portions" \
-H "authorization: Bearer MyAccessToken"
Response
{
"items" : [
{
"text" : "Normal font, " ,
"fontBold" : "False" ,
"highlightColor" : "#0" ,
"fontHeight" : 18 ,
"languageId" : "en-US" ,
"selfUri" : {
"href" : "https://api.aspose.cloud/v3.0/slides/MyPresentation.pptx/slides/9/shapes/1/rows/3/cells/3/paragraphs/3/portions/1" ,
"relation" : "self" ,
"slideIndex" : 9 ,
"shapeIndex" : 1
}
},
{
"text" : "bold font." ,
"fontBold" : "True" ,
"highlightColor" : "#0" ,
"fontHeight" : 18 ,
"languageId" : "en-US" ,
"selfUri" : {
"href" : "https://api.aspose.cloud/v3.0/slides/MyPresentation.pptx/slides/9/shapes/1/rows/3/cells/3/paragraphs/3/portions/2" ,
"relation" : "self" ,
"slideIndex" : 9 ,
"shapeIndex" : 1
}
}
],
"selfUri" : {
"href" : "https://api.aspose.cloud/v3.0/slides/MyPresentation.pptx/slides/9/shapes/1/rows/3/cells/3/paragraphs/3/portions" ,
"relation" : "self" ,
"slideIndex" : 9 ,
"shapeIndex" : 1
}
}
SDK Solutions
C#
using System ;
using Aspose.Slides.Cloud.Sdk ;
using Aspose.Slides.Cloud.Sdk.Model ;
class Application
{
static void Main ( string [] args )
{
SlidesApi slidesApi = new SlidesApi ( "MyClientId" , "MyClientSecret" );
string fileName = "MyPresentation.pptx" ;
int slideIndex = 9 ;
int shapeIndex = 1 ;
int rowIndex = 2 ;
int cellIndex = 2 ;
int paragraphIndex = 3 ;
Portions textPortions = slidesApi . GetTableCellPortions ( fileName , slideIndex , shapeIndex , rowIndex , cellIndex , paragraphIndex );
int portionCount = textPortions . Items . Count ;
Console . WriteLine ( "Number of text portions: " + portionCount ); // 2
}
}
Java
import com.aspose.slides.ApiException ;
import com.aspose.slides.api.SlidesApi ;
import com.aspose.slides.model.Portions ;
public class Application {
public static void main ( String [] args ) throws ApiException {
SlidesApi slidesApi = new SlidesApi ( "MyClientId" , "MyClientSecret" );
String fileName = "MyPresentation.pptx" ;
int slideIndex = 9 ;
int shapeIndex = 1 ;
int rowIndex = 2 ;
int cellIndex = 2 ;
int paragraphIndex = 3 ;
Portions textPortions = slidesApi . getTableCellPortions ( fileName , slideIndex , shapeIndex , rowIndex , cellIndex , paragraphIndex , null , null , null );
int portionCount = textPortions . getItems (). size ();
System . out . println ( "Number of text portions: " + portionCount ); // 2
}
}
PHP
use Aspose\Slides\Cloud\Sdk\Api\Configuration ;
use Aspose\Slides\Cloud\Sdk\Api\SlidesApi ;
$configuration = new Configuration ();
$configuration -> setAppSid ( "MyClientId" );
$configuration -> setAppKey ( "MyClientSecret" );
$slidesApi = new SlidesApi ( null , $configuration );
$fileName = "MyPresentation.pptx" ;
$slideIndex = 9 ;
$shapeIndex = 1 ;
$rowIndex = 2 ;
$cellIndex = 2 ;
$paragraphIndex = 3 ;
$textPortions = $slidesApi -> getTableCellPortions ( $fileName , $slideIndex , $shapeIndex , $rowIndex , $cellIndex , $paragraphIndex );
$portionCount = count ( $textPortions -> getItems ());
print ( "Number of text portions: " . $portionCount ); // 2
Ruby
require "aspose_slides_cloud"
include AsposeSlidesCloud
configuration = Configuration . new
configuration . app_sid = "MyClientId"
configuration . app_key = "MyClientSecret"
slides_api = SlidesApi . new ( configuration )
file_name = "MyPresentation.pptx"
slide_index = 9
shape_index = 1
row_index = 2
cell_index = 2
paragraph_index = 3
text_portions = slides_api . get_table_cell_portions ( file_name , slide_index , shape_index , row_index , cell_index , paragraph_index )
portion_count = text_portions . items . length
puts "Number of text portions: #{ portion_count } " # 2
Python
from asposeslidescloud.apis import SlidesApi
slides_api = SlidesApi ( None , "MyClientId" , "MyClientSecret" )
file_name = "MyPresentation.pptx"
slide_index = 9
shape_index = 1
row_index = 2
cell_index = 2
paragraph_index = 3
text_portions = slides_api . get_table_cell_portions ( file_name , slide_index , shape_index , row_index , cell_index , paragraph_index )
portion_count = len ( text_portions . items )
print ( "Number of text portions:" , portion_count ) # 2
Node.js
const cloudSdk = require ( "asposeslidescloud" );
const slidesApi = new cloudSdk . SlidesApi ( "MyClientId" , "MyClientSecret" );
fileName = "MyPresentation.pptx" ;
slideIndex = 9 ;
shapeIndex = 1 ;
rowIndex = 2 ;
cellIndex = 2 ;
paragraphIndex = 3 ;
slidesApi . getTableCellPortions ( fileName , slideIndex , shapeIndex , rowIndex , cellIndex , paragraphIndex ). then ( textPortions => {
portionCount = textPortions . body . items . length ;
console . log ( "Number of text portions:" , portionCount ); // 2
});
Go
import (
"fmt"
asposeslidescloud "github.com/aspose-slides-cloud/aspose-slides-cloud-go/v24"
)
func main () {
configuration := asposeslidescloud . NewConfiguration ()
configuration . AppSid = "MyClientId"
configuration . AppKey = "MyClientSecret"
slidesApi := asposeslidescloud . NewAPIClient ( configuration ). SlidesApi
fileName := "MyPresentation.pptx"
var slideIndex int32 = 9
var shapeIndex int32 = 1
var rowIndex int32 = 2
var cellIndex int32 = 2
var paragraphIndex int32 = 3
textPortions , _ , _ := slidesApi . GetTableCellPortions ( fileName , slideIndex , shapeIndex , rowIndex , cellIndex , paragraphIndex , "" , "" , "" )
portionCount := len ( textPortions . GetItems ())
fmt . Println ( "Number of text portions:" , portionCount ) // 2
}
C++
#include "asposeslidescloud/api/SlidesApi.h"
using namespace asposeslidescloud :: api ;
int main ()
{
std :: shared_ptr < SlidesApi > slidesApi = std :: make_shared < SlidesApi > ( L "MyClientId" , L "MyClientSecret" );
const wchar_t * fileName = L "MyPresentation.pptx" ;
int slideIndex = 9 ;
int shapeIndex = 1 ;
int rowIndex = 2 ;
int cellIndex = 2 ;
int paragraphIndex = 3 ;
std :: shared_ptr < Portions > textPortions = slidesApi -> getTableCellPortions ( fileName , slideIndex , shapeIndex , rowIndex , cellIndex , paragraphIndex ). get ();
int portionCount = textPortions -> getItems (). size ();
std :: wcout << L "Number of text portions: " << portionCount ; // 2
}
Perl
use AsposeSlidesCloud::Configuration ;
use AsposeSlidesCloud::SlidesApi ;
my $configuration = AsposeSlidesCloud::Configuration -> new ();
$configuration -> { app_sid } = "MyClientId" ;
$configuration -> { app_key } = "MyClientSecret" ;
my $slides_api = AsposeSlidesCloud::SlidesApi -> new ( config => $configuration );
my $file_name = "MyPresentation.pptx" ;
my $slide_index = 9 ;
my $shape_index = 1 ;
my $row_index = 2 ;
my $cell_index = 2 ;
my $paragraph_index = 3 ;
my $text_portions = $slides_api -> get_table_cell_portions (
name => $file_name , slide_index => $slide_index , shape_index => $shape_index , row_index => $row_index , cell_index => $cell_index , paragraph_index => $paragraph_index );
my $portion_count = @ { $text_portions -> { items }};
print "Number of text portions: " , $portion_count ; # 2
GetTableCellPortion
API
Type
Description
Resource
/slides/{name}/slides/{slideIndex}/shapes/{shapeIndex}/rows/{rowIndex}/cells/{cellIndex}/paragraphs/{paragraphIndex}/portions/{portionIndex}
GET
Returns a text portion from a paragraph in a table cell in a presentation saved in a storage.
GetTableCellPortion
Request Parameters
Name
Type
Location
Required
Description
name
string
path
true
The name of a presentation file.
slideIndex
integer
path
true
The 1-based index of a slide.
shapeIndex
integer
path
true
The 1-based index of a shape (must be a table).
rowIndex
integer
path
true
The 1-based index of a row.
cellIndex
integer
path
true
The 1-based index of a cell.
paragraphIndex
integer
path
true
The 1-based index of a paragraph.
portionIndex
integer
path
true
The 1-based index of a text portion.
password
string
header
false
The password to open the presentation.
folder
string
query
false
The path to the folder containing the presentation file.
storage
string
query
false
The name of the storage contaning the folder.
Examples
In the default storage, the document MyPresentation.pptx contains a table (the first shape) with four columns and three rows on the ninth slide. The cell (2, 2) contains three paragraphs (see the picture above). Get the second text portion from the third paragraph.
cURL Solution
SDK Solutions
C#
using System ;
using Aspose.Slides.Cloud.Sdk ;
using Aspose.Slides.Cloud.Sdk.Model ;
class Application
{
static void Main ( string [] args )
{
SlidesApi slidesApi = new SlidesApi ( "MyClientId" , "MyClientSecret" );
string fileName = "MyPresentation.pptx" ;
int slideIndex = 9 ;
int shapeIndex = 1 ;
int rowIndex = 2 ;
int cellIndex = 2 ;
int paragraphIndex = 3 ;
int portionIndex = 2 ;
Portion textPortion = slidesApi . GetTableCellPortion ( fileName , slideIndex , shapeIndex , rowIndex , cellIndex , paragraphIndex , portionIndex );
Console . WriteLine ( "Portion text: " + textPortion . Text ); // "bold font."
Console . WriteLine ( "Bold font: " + textPortion . FontBold ); // True
}
}
Java
import com.aspose.slides.ApiException ;
import com.aspose.slides.api.SlidesApi ;
import com.aspose.slides.model.Portion ;
public class Application {
public static void main ( String [] args ) throws ApiException {
SlidesApi slidesApi = new SlidesApi ( "MyClientId" , "MyClientSecret" );
String fileName = "MyPresentation.pptx" ;
int slideIndex = 9 ;
int shapeIndex = 1 ;
int rowIndex = 2 ;
int cellIndex = 2 ;
int paragraphIndex = 3 ;
int portionIndex = 2 ;
Portion textPortion = slidesApi . getTableCellPortion ( fileName , slideIndex , shapeIndex , rowIndex , cellIndex , paragraphIndex , portionIndex , null , null , null );
System . out . println ( "Portion text: " + textPortion . getText ()); // "bold font."
System . out . println ( "Bold font: " + textPortion . getFontBold ()); // True
}
}
PHP
use Aspose\Slides\Cloud\Sdk\Api\Configuration ;
use Aspose\Slides\Cloud\Sdk\Api\SlidesApi ;
$configuration = new Configuration ();
$configuration -> setAppSid ( "MyClientId" );
$configuration -> setAppKey ( "MyClientSecret" );
$slidesApi = new SlidesApi ( null , $configuration );
$fileName = "MyPresentation.pptx" ;
$slideIndex = 9 ;
$shapeIndex = 1 ;
$rowIndex = 2 ;
$cellIndex = 2 ;
$paragraphIndex = 3 ;
$portionIndex = 2 ;
$textPortion = $slidesApi -> getTableCellPortion ( $fileName , $slideIndex , $shapeIndex , $rowIndex , $cellIndex , $paragraphIndex , $portionIndex );
print ( "Portion text: " . $textPortion -> getText () . " \n " ); // "bold font."
print ( "Bold font: " . $textPortion -> getFontBold ()); // True
Ruby
require "aspose_slides_cloud"
include AsposeSlidesCloud
configuration = Configuration . new
configuration . app_sid = "MyClientId"
configuration . app_key = "MyClientSecret"
slides_api = SlidesApi . new ( configuration )
file_name = "MyPresentation.pptx"
slide_index = 9
shape_index = 1
row_index = 2
cell_index = 2
paragraph_index = 3
portion_index = 2
text_portion = slides_api . get_table_cell_portion ( file_name , slide_index , shape_index , row_index , cell_index , paragraph_index , portion_index )
puts "Portion text: #{ text_portion . text } " # "bold font."
puts "Bold font: #{ text_portion . font_bold } " # True
Python
from asposeslidescloud.apis import SlidesApi
slides_api = SlidesApi ( None , "MyClientId" , "MyClientSecret" )
file_name = "MyPresentation.pptx"
slide_index = 9
shape_index = 1
row_index = 2
cell_index = 2
paragraph_index = 3
portion_index = 2
text_portion = slides_api . get_table_cell_portion ( file_name , slide_index , shape_index , row_index , cell_index , paragraph_index , portion_index )
print ( "Portion text:" , text_portion . text ) # "bold font."
print ( "Bold font:" , text_portion . font_bold ) # True
Node.js
const cloudSdk = require ( "asposeslidescloud" );
const slidesApi = new cloudSdk . SlidesApi ( "MyClientId" , "MyClientSecret" );
fileName = "MyPresentation.pptx" ;
slideIndex = 9 ;
shapeIndex = 1 ;
rowIndex = 2 ;
cellIndex = 2 ;
paragraphIndex = 3 ;
portionIndex = 2 ;
slidesApi . getTableCellPortion ( fileName , slideIndex , shapeIndex , rowIndex , cellIndex , paragraphIndex , portionIndex ). then ( textPortion => {
console . log ( "Portion text:" , textPortion . body . text ); // "bold font."
console . log ( "Bold font:" , textPortion . body . fontBold ); // True
});
Go
import (
"fmt"
asposeslidescloud "github.com/aspose-slides-cloud/aspose-slides-cloud-go/v24"
)
func main () {
configuration := asposeslidescloud . NewConfiguration ()
configuration . AppSid = "MyClientId"
configuration . AppKey = "MyClientSecret"
slidesApi := asposeslidescloud . NewAPIClient ( configuration ). SlidesApi
fileName := "MyPresentation.pptx"
var slideIndex int32 = 9
var shapeIndex int32 = 1
var rowIndex int32 = 2
var cellIndex int32 = 2
var paragraphIndex int32 = 3
var portionIndex int32 = 2
textPortion , _ , _ := slidesApi . GetTableCellPortion ( fileName , slideIndex , shapeIndex , rowIndex , cellIndex , paragraphIndex , portionIndex , "" , "" , "" )
fmt . Println ( "Portion text:" , textPortion . GetText ()) // "bold font."
fmt . Println ( "Bold font:" , textPortion . GetFontBold ()) // True
}
C++
#include "asposeslidescloud/api/SlidesApi.h"
using namespace asposeslidescloud :: api ;
int main ()
{
std :: shared_ptr < SlidesApi > slidesApi = std :: make_shared < SlidesApi > ( L "MyClientId" , L "MyClientSecret" );
const wchar_t * fileName = L "MyPresentation.pptx" ;
int slideIndex = 9 ;
int shapeIndex = 1 ;
int rowIndex = 2 ;
int cellIndex = 2 ;
int paragraphIndex = 3 ;
int portionIndex = 2 ;
std :: shared_ptr < Portion > textPortion = slidesApi -> getTableCellPortion ( fileName , slideIndex , shapeIndex , rowIndex , cellIndex , paragraphIndex , portionIndex ). get ();
std :: wcout << L "Portion text: " << textPortion -> getText () << std :: endl ; // "bold font."
std :: wcout << L "Bold font: " << textPortion -> getFontBold (); // True
}
Perl
use AsposeSlidesCloud::Configuration ;
use AsposeSlidesCloud::SlidesApi ;
my $configuration = AsposeSlidesCloud::Configuration -> new ();
$configuration -> { app_sid } = "MyClientId" ;
$configuration -> { app_key } = "MyClientSecret" ;
my $slides_api = AsposeSlidesCloud::SlidesApi -> new ( config => $configuration );
my $file_name = "MyPresentation.pptx" ;
my $slide_index = 9 ;
my $shape_index = 1 ;
my $row_index = 2 ;
my $cell_index = 2 ;
my $paragraph_index = 3 ;
my $portion_index = 2 ;
my $text_portion = $slides_api -> get_table_cell_portion (
name => $file_name , slide_index => $slide_index , shape_index => $shape_index , row_index => $row_index , cell_index => $cell_index , paragraph_index => $paragraph_index , portion_index => $portion_index );
print "Portion text: " , $text_portion -> { text }, "\n" ; # "bold font."
print "Bold font: " , $text_portion -> { font_bold }; # True
SDKs
Check Available SDKs to learn how to add an SDK to your project.