Gérer les lignes et les colonnes
Pour vous permettre de gérer les lignes et les colonnes d’un tableau dans une présentation PowerPoint, Aspose.Slides fournit la classe Table, l’interface ITable et de nombreux autres types.
Définir la première ligne comme en-tête
- Créez une instance de la classe Presentation et chargez la présentation.
- Obtenez la référence d’une diapositive par son index.
- Créez un objet ITable et définissez-le sur null.
- Parcourez tous les objets IShape pour trouver le tableau correspondant.
- Définissez la première ligne du tableau comme son en-tête.
Ce code Java vous montre comment définir la première ligne d’un tableau comme son en-tête :
// Instancie la classe Presentation
Presentation pres = new Presentation("table.pptx");
try {
// Accède à la première diapositive
ISlide sld = pres.getSlides().get_Item(0);
// Initialise le TableEx nul
ITable tbl = null;
// Parcourt les formes et définit une référence au tableau
for (IShape shp : sld.getShapes())
{
if (shp instanceof ITable)
{
tbl = (ITable)shp;
//Définit la première ligne d'un tableau comme son en-tête
tbl.setFirstRow(true);
}
}
// Enregistre la présentation sur le disque
pres.save("pres.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Cloner la ligne ou la colonne d’un tableau
- Créez une instance de la classe Presentation et chargez la présentation.
- Obtenez la référence d’une diapositive par son index.
- Définissez un tableau de
columnWidth
. - Définissez un tableau de
rowHeight
. - Ajoutez un objet ITable à la diapositive par la méthode addTable.
- Clonez la ligne du tableau.
- Clonez la colonne du tableau.
- Enregistrez la présentation modifiée.
Ce code Java vous montre comment cloner une ligne ou une colonne d’un tableau PowerPoint :
// Instancie la classe Presentation
Presentation pres = new Presentation("Test.pptx");
try {
// Accède à la première diapositive
ISlide sld = pres.getSlides().get_Item(0);
// Définit des colonnes avec largeurs et des lignes avec hauteurs
double[] dblCols = { 50, 50, 50 };
double[] dblRows = { 50, 30, 30, 30, 30 };
// Ajoute une forme de tableau à la diapositive
ITable table = sld.getShapes().addTable(100, 50, dblCols, dblRows);
// Ajoute du texte à la cellule 1 de la ligne 1
table.get_Item(0, 0).getTextFrame().setText("Cellule 1 Ligne 1");
// Ajoute du texte à la cellule 2 de la ligne 1
table.get_Item(1, 0).getTextFrame().setText("Cellule 2 Ligne 1");
// Clone la ligne 1 à la fin du tableau
table.getRows().addClone(table.getRows().get_Item(0), false);
// Ajoute du texte à la cellule 1 de la ligne 2
table.get_Item(0, 1).getTextFrame().setText("Cellule 1 Ligne 2");
// Ajoute du texte à la cellule 2 de la ligne 2
table.get_Item(1, 1).getTextFrame().setText("Cellule 2 Ligne 2");
// Clone la ligne 2 comme 4ème ligne du tableau
table.getRows().insertClone(3, table.getRows().get_Item(1), false);
// Clone la première colonne à la fin
table.getColumns().addClone(table.getColumns().get_Item(0), false);
// Clone la 2ème colonne à l'index de la 4ème colonne
table.getColumns().insertClone(3,table.getColumns().get_Item(1), false);
// Enregistre la présentation sur le disque
pres.save("table_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Supprimer une ligne ou une colonne d’un tableau
- Créez une instance de la classe Presentation et chargez la présentation.
- Obtenez la référence d’une diapositive par son index.
- Définissez un tableau de
columnWidth
. - Définissez un tableau de
rowHeight
. - Ajoutez un objet ITable à la diapositive par la méthode addTable.
- Supprimez la ligne du tableau.
- Supprimez la colonne du tableau.
- Enregistrez la présentation modifiée.
Ce code Java vous montre comment supprimer une ligne ou une colonne d’un tableau :
Presentation pres = new Presentation();
try {
ISlide slide = pres.getSlides().get_Item(0);
double[] colWidth = { 100, 50, 30 };
double[] rowHeight = { 30, 50, 30 };
ITable table = slide.getShapes().addTable(100, 100, colWidth, rowHeight);
table.getRows().removeAt(1, false);
table.getColumns().removeAt(1, false);
pres.save("TestTable_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Définir la mise en forme du texte au niveau de la ligne du tableau
- Créez une instance de la classe Presentation et chargez la présentation.
- Obtenez la référence d’une diapositive par son index.
- Accédez à l’objet ITable pertinent de la diapositive.
- Définissez la hauteur de police des cellules de la première ligne avec setFontHeight(float value).
- Définissez l’alignement et la marge droite des cellules de la première ligne avec setAlignment(int value) et setMarginRight(float value).
- Définissez le type de texte vertical des cellules de la deuxième ligne avec setTextVerticalType(byte value).
- Enregistrez la présentation modifiée.
Ce code Java illustre l’opération.
// Crée une instance de la classe Presentation
Presentation pres = new Presentation();
try {
// Supposons que la première forme de la première diapositive soit un tableau
ITable someTable = (ITable)pres.getSlides().get_Item(0).getShapes().get_Item(0);
// Définit la hauteur de police des cellules de la première ligne
PortionFormat portionFormat = new PortionFormat();
portionFormat.setFontHeight(25);
someTable.getRows().get_Item(0).setTextFormat(portionFormat);
// Définit l'alignement du texte et la marge droite des cellules de la première ligne
ParagraphFormat paragraphFormat = new ParagraphFormat();
paragraphFormat.setAlignment(TextAlignment.Right);
paragraphFormat.setMarginRight(20);
someTable.getRows().get_Item(0).setTextFormat(paragraphFormat);
// Définit le type de texte vertical des cellules de la deuxième ligne
TextFrameFormat textFrameFormat = new TextFrameFormat();
textFrameFormat.setTextVerticalType(TextVerticalType.Vertical);
someTable.getRows().get_Item(1).setTextFormat(textFrameFormat);
// Enregistre la présentation sur le disque
pres.save("result.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Définir la mise en forme du texte au niveau de la colonne du tableau
- Créez une instance de la classe Presentation et chargez la présentation.
- Obtenez la référence d’une diapositive par son index.
- Accédez à l’objet ITable pertinent de la diapositive.
- Définissez la hauteur de police des cellules de la première colonne avec setFontHeight(float value).
- Définissez l’alignement et la marge droite des cellules de la première colonne avec setAlignment(int value) et setMarginRight(float value).
- Définissez le type de texte vertical des cellules de la deuxième colonne avec setTextVerticalType(byte value).
- Enregistrez la présentation modifiée.
Ce code Java illustre l’opération :
// Crée une instance de la classe Presentation
Presentation pres = new Presentation();
try {
// Supposons que la première forme de la première diapositive soit un tableau
ITable someTable = (ITable)pres.getSlides().get_Item(0).getShapes().get_Item(0);
// Définit la hauteur de police des cellules de la première colonne
PortionFormat portionFormat = new PortionFormat();
portionFormat.setFontHeight(25);
someTable.getColumns().get_Item(0).setTextFormat(portionFormat);
// Définit l'alignement du texte et la marge droite des cellules de la première colonne en un seul appel
ParagraphFormat paragraphFormat = new ParagraphFormat();
paragraphFormat.setAlignment(TextAlignment.Right);
paragraphFormat.setMarginRight(20);
someTable.getColumns().get_Item(0).setTextFormat(paragraphFormat);
// Définit le type de texte vertical des cellules de la deuxième colonne
TextFrameFormat textFrameFormat = new TextFrameFormat();
textFrameFormat.setTextVerticalType(TextVerticalType.Vertical);
someTable.getColumns().get_Item(1).setTextFormat(textFrameFormat);
pres.save("result.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Obtenir les propriétés de style d’un tableau
Aspose.Slides vous permet de récupérer les propriétés de style d’un tableau afin que vous puissiez utiliser ces détails pour un autre tableau ou ailleurs. Ce code Java vous montre comment obtenir les propriétés de style d’un modèle de tableau prédéfini :
Presentation pres = new Presentation();
try {
ITable table = pres.getSlides().get_Item(0).getShapes().addTable(10, 10, new double[] { 100, 150 }, new double[] { 5, 5, 5 });
table.setStylePreset(TableStylePreset.DarkStyle1); // change le thème de style prédéfini par défaut
pres.save("table.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}