テーブルは、行と列の形式でデータを適切に整理するために使用されます。さらに、それらは表示および分析が容易なデータを要約します。 MS PowerPointを使用すると、プレゼンターはプレゼンテーションにテーブルを作成することもできます。したがって、この記事では、Javaを使用してPowerPointプレゼンテーションでテーブルを作成および操作する方法を学習します。
- PowerPointでテーブルを作成および操作するためのJavaAPI
- PowerPointプレゼンテーションでテーブルを作成する
- Javaを使用してプレゼンテーションのテーブルにアクセスする
- PowerPointテーブルでテキストをフォーマットする
- テーブルのロックアスペクト比
PowerPointでテーブルを作成および操作するためのJavaAPI
PowerPointプレゼンテーションでテーブルを作成および操作するには、Aspose.Slides for Javaを使用します。 APIは、PowerPointおよびOpenOfficeプレゼンテーションを作成、操作、および変換するように設計されています。 APIのJARをダウンロードするか、次のMaven構成を使用してインストールできます。
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-slides</artifactId>
<version>21.8</version>
<classifier>jdk16</classifier>
</dependency>
Javaを使用してPowerPointプレゼンテーションでテーブルを作成する
Aspose.Slides for Javaを使用してテーブルを作成するのは、パイと同じくらい簡単です。次の手順は、Javaを使用してPowerPointプレゼンテーションでテーブルを最初から作成する方法を示しています。
- まず、Presentationクラスを使用して、新しいプレゼンテーションを作成するか、既存のプレゼンテーションをロードします。
- 次に、目的のスライドの参照をISlideオブジェクトに取得します。
- double[]配列で列と行の幅と高さをそれぞれ定義します。
- ISlide.getShapes().addTable(float, float, double[], double[])メソッドを使用して、プレゼンテーションに新しいテーブルを挿入します。
- ITableオブジェクトで新しく作成されたテーブルの参照を取得します。
- テーブルの行を反復処理するループを作成します。
- ネストされたループを作成してテーブルのセルを反復処理し、各反復で次の操作を実行します。
- ITable.getRows().get_Item(rowIndex).get_Item(cellIndex).getTextFrame().setText(String)メソッドを使用してセルのテキストを設定します。
- セルのフォーマットの参照をICellFormatオブジェクトに取得します。
- 必要に応じて、セルの境界線のスタイルを設定します。
- 最後に、Presentation.save(String, SaveFormat)メソッドを使用してプレゼンテーションを保存します。
次のコードサンプルは、PowerPointプレゼンテーションでテーブルを作成する方法を示しています。
// プレゼンテーションを作成またはロードする
Presentation pres = new Presentation();
try {
// 最初のスライドにアクセスする
ISlide sld = pres.getSlides().get_Item(0);
// 幅のある列と高さのある行を定義する
double[] dblCols = { 50, 50, 50 };
double[] dblRows = { 50, 30, 30, 30, 30 };
// スライドにテーブル形状を追加
ITable tbl = sld.getShapes().addTable(100, 50, dblCols, dblRows);
// 各セルのテキストと境界線の形式を設定します
for (int row = 0; row < tbl.getRows().size(); row++) {
for (int cell = 0; cell < tbl.getRows().get_Item(row).size(); cell++) {
// テキストを設定する
tbl.getRows().get_Item(row).get_Item(cell).getTextFrame().setText("Cell_" + cell);
// ボーダーを設定する
ICellFormat cellFormat = tbl.getRows().get_Item(row).get_Item(cell).getCellFormat();
cellFormat.getBorderTop().getFillFormat().setFillType(FillType.Solid);
cellFormat.getBorderTop().getFillFormat().getSolidFillColor().setColor(Color.RED);
cellFormat.getBorderTop().setWidth(5);
cellFormat.getBorderBottom().getFillFormat().setFillType(FillType.Solid);
cellFormat.getBorderBottom().getFillFormat().getSolidFillColor().setColor(Color.RED);
cellFormat.getBorderBottom().setWidth(5);
cellFormat.getBorderLeft().getFillFormat().setFillType(FillType.Solid);
cellFormat.getBorderLeft().getFillFormat().getSolidFillColor().setColor(Color.RED);
cellFormat.getBorderLeft().setWidth(5);
cellFormat.getBorderRight().getFillFormat().setFillType(FillType.Solid);
cellFormat.getBorderRight().getFillFormat().getSolidFillColor().setColor(Color.RED);
cellFormat.getBorderRight().setWidth(5);
}
}
// PPTXをディスクに保存
pres.save("table.pptx", SaveFormat.Pptx);
} finally {
if (pres != null)
pres.dispose();
}
次のスクリーンショットは、上記のコードを使用して作成したテーブルを示しています。
Javaを使用してプレゼンテーションのテーブルにアクセスする
また、既存のPowerPointプレゼンテーションのテーブルにアクセスして、必要に応じて操作することもできます。プレゼンテーションのテーブルにアクセスする手順は次のとおりです。
- まず、Presentationクラスを使用して既存のプレゼンテーションをロードします。
- 次に、目的のスライドの参照をISlideオブジェクトに取得します。
- ITableのインスタンスを作成し、nullで初期化します。
- ISlide.getShapes()コレクション内のすべてのIShapeオブジェクトを反復処理します。
- タイプITableの形状をフィルタリングします。
- 形状をITableに型キャストし、必要に応じて操作します。
- 最後に、Presentation.save(String, SaveFormat)メソッドを使用してプレゼンテーションを保存します。
次のコードサンプルは、Javaを使用してPowerPointプレゼンテーションのテーブルにアクセスする方法を示しています。
// プレゼンテーションを作成またはロードする
Presentation pres = new Presentation("UpdateExistingTable.pptx");
try {
// 最初のスライドにアクセスする
ISlide sld = pres.getSlides().get_Item(0);
// ITableを初期化します
ITable tbl = null;
// 形状を繰り返し処理し、見つかったテーブルへの参照を取得します
for (IShape shp : sld.getShapes())
{
if (shp instanceof ITable)
{
tbl = (ITable) shp;
// 2行目の1列目のテキストを設定します
tbl.get_Item(0, 1).getTextFrame().setText("New");
}
}
// PPTXをディスクに書き込む
pres.save("table1_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Javaを使用してPowerPointテーブルのテキストをフォーマットする
Aspose.Slides for Javaでは、以下の手順に示すように、テーブルのフォーマットを非常に簡単に設定することもできます。
- まず、Presentationクラスを使用して既存のプレゼンテーションをロードします。
- 次に、目的のスライドの参照をISlideオブジェクトに取得します。
- スライドからITableクラスのインスタンスに目的のテーブルの参照を取得します。
- PortionFormat、ParagraphFormat、およびTextFrameFormatクラスを使用してフォーマットを設定します。
- ITable.setTextFormat()メソッドを使用して、テーブルにフォーマットを割り当てます。
- 最後に、Presentation.save(String, SaveFormat)メソッドを使用してプレゼンテーションを保存します。
次のコードサンプルは、Javaを使用してPowerPointでテーブルのフォーマットを設定する方法を示しています。
// プレゼンテーションを読み込む
Presentation pres = new Presentation("simpletable.pptx");
try {
// テーブルの参照を取得します
ITable someTable = (ITable) pres.getSlides().get_Item(0).getShapes().get_Item(0);
// テーブルセルのフォントの高さを設定する
PortionFormat portionFormat = new PortionFormat();
portionFormat.setFontHeight(25);
someTable.setTextFormat(portionFormat);
// 1回の呼び出しでテーブルセルのテキストの配置と右マージンを設定します
ParagraphFormat paragraphFormat = new ParagraphFormat();
paragraphFormat.setAlignment(TextAlignment.Right);
paragraphFormat.setMarginRight(20);
someTable.setTextFormat(paragraphFormat);
// 表のセルのテキストの垂直方向のタイプを設定する
TextFrameFormat textFrameFormat = new TextFrameFormat();
textFrameFormat.setTextVerticalType(TextVerticalType.Vertical);
someTable.setTextFormat(textFrameFormat);
// プレゼンテーションを保存する
pres.save("result.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Javaを使用したPowerPointのテーブルのアスペクト比のロック
Javaを使用して、PowerPointプレゼンテーションのテーブルのアスペクト比をロックすることもできます。これを実現するための手順は次のとおりです。
- まず、Presentationクラスを使用して既存のプレゼンテーションをロードします。
- ISlideオブジェクトへの目的のスライドの参照を取得します。
- テーブルを作成するか、既存のテーブルの参照をITableオブジェクトに取得します。
- ITable.getGraphicalObjectLock().setAspectRatioLocked(!ITable.getGraphicalObjectLock().getAspectRatioLocked())メソッドを使用してアスペクト比をロックします。
- 最後に、Presentation.save(String, SaveFormat)メソッドを使用してプレゼンテーションを保存します。
次のコードサンプルは、PowerPointプレゼンテーションでテーブルのアスペクト比をロックする方法を示しています。
// プレゼンテーションを読み込む
Presentation pres = new Presentation("pres.pptx");
try {
// テーブルの参照を取得します
ITable table = (ITable)pres.getSlides().get_Item(0).getShapes().get_Item(0);
System.out.println("ロックのアスペクト比 set: " + table.getGraphicalObjectLock().getAspectRatioLocked());
// ロックのアスペクト比
table.getGraphicalObjectLock().setAspectRatioLocked(!table.getGraphicalObjectLock().getAspectRatioLocked()); // invert
System.out.println("ロックのアスペクト比 set: " + table.getGraphicalObjectLock().getAspectRatioLocked());
// プレゼンテーションを保存する
pres.save("pres-out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
無料のAPIライセンスを取得する
無料の一時ライセンスを取得することで、評価の制限なしにAspose.Slides for Javaを使用できます。
結論
この記事では、Javaを使用してPowerPointプレゼンテーションでテーブルを作成する方法を学習しました。さらに、テーブルにアクセスし、プログラムでフォーマットとアスペクト比を設定する方法を見てきました。さらに、ドキュメントにアクセスして、Aspose.Slides for Javaの詳細を確認できます。また、フォーラムから質問することもできます。