C++を使用してPowerPointでテーブルを作成および操作する

Microsoft PowerPointには、PowerPointプレゼンテーションにテーブルを挿入する機能があります。テーブルを使用すると、データを行と列の形式で配置できます。さらに、データを整理し、表示と分析を容易にします。そのために、この記事では、C++を使用してPowerPointプレゼンテーションでテーブルを作成および操作する方法を説明します。

PowerPointプレゼンテーションでテーブルを作成および操作するためのC++API

Aspose.Slides for C++ APIを使用して、PowerPointプレゼンテーションのテーブルを作成および操作します。これは、Mircosoft PowerPointをインストールしなくても、PowerPointファイルの作成、読み取り、および変更をサポートする、強力で機能豊富なAPIです。 APIは、NuGetからインストールするか、ダウンロードセクションから直接ダウンロードできます。

PM> Install-Package Aspose.Slides.Cpp

C++を使用してPowerPointプレゼンテーションでテーブルを作成する

以下は、PowerPointプレゼンテーションでテーブルを作成する手順です。

次のサンプルコードは、C++を使用してPowerPointプレゼンテーションでテーブルを作成する方法を示しています。

// ファイルパス
const String outputFilePath = u"OutputDirectory\\CreateTable_out.pptx";

// Presentationクラスのインスタンスを作成します
auto presentation = System::MakeObject<Presentation>();

// 最初のスライドにアクセスする
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// 幅のある列と高さのある行を定義する
System::ArrayPtr<double> dblCols = System::MakeObject<System::Array<double>>(4, 70);
System::ArrayPtr<double> dblRows = System::MakeObject<System::Array<double>>(4, 70);

// スライドにテーブル形状を追加
SharedPtr<ITable> table = slide->get_Shapes()->AddTable(100, 50, dblCols, dblRows);

// 各セルの境界線形式を設定します
for (int x = 0; x < table->get_Rows()->get_Count(); x++)
{
	SharedPtr<IRow> row = table->get_Rows()->idx_get(x);
	for (int y = 0; y < row->get_Count(); y++)
	{
		SharedPtr<ICell> cell = row->idx_get(y);

		cell->get_CellFormat()->get_BorderTop()->get_FillFormat()->set_FillType(FillType::Solid);
		cell->get_CellFormat()->get_BorderTop()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
		cell->get_CellFormat()->get_BorderTop()->set_Width(5);

		cell->get_CellFormat()->get_BorderBottom()->get_FillFormat()->set_FillType(FillType::Solid);
		cell->get_CellFormat()->get_BorderBottom()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
		cell->get_CellFormat()->get_BorderBottom()->set_Width(5);

		cell->get_CellFormat()->get_BorderLeft()->get_FillFormat()->set_FillType(FillType::Solid);
		cell->get_CellFormat()->get_BorderLeft()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
		cell->get_CellFormat()->get_BorderLeft()->set_Width(5);

		cell->get_CellFormat()->get_BorderRight()->get_FillFormat()->set_FillType(FillType::Solid);
		cell->get_CellFormat()->get_BorderRight()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
		cell->get_CellFormat()->get_BorderRight()->set_Width(5);
	}
}

// プレゼンテーションを保存
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
サンプルコードによって生成されたテーブル

サンプルコードによって生成されたテーブル

C++を使用してPowerPointプレゼンテーションのテーブルにアクセスして変更する

PowerPointプレゼンテーションの既存のテーブルにアクセスして変更することもできます。以下は、PowerPointプレゼンテーションのテーブルにアクセスして変更する手順です。

次のサンプルコードは、C++を使用してPowerPointプレゼンテーションのテーブルにアクセスして変更する方法を示しています。

// ファイルパス
const String sourceFilePath = u"OutputDirectory\\CreateTable_out.pptx";
const String outputFilePath = u"OutputDirectory\\AccessTable_out.pptx";

// プレゼンテーションファイルをロードする
auto presentation = System::MakeObject<Presentation>(sourceFilePath);

// 最初のスライドにアクセスする
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// テーブルにアクセスする
SharedPtr<ITable> table;

for (SharedPtr<IShape> shape : slide->get_Shapes())
{
	if (System::ObjectExt::Is<ITable>(shape)) {
		table = System::DynamicCast_noexcept<ITable>(shape);
	}
}

// テキストを設定する
table->idx_get(0, 1)->get_TextFrame()->set_Text(u"Aspose");

// プレゼンテーションを保存
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);

C++を使用してPowerPointテーブルにテキストの方向を設定する

以下は、PowerPointテーブルのテキストの方向を設定する手順です。

次のサンプルコードは、C++を使用してPowerPointテーブルのテキストの方向を設定する方法を示しています。

// ファイルパス
const String sourceFilePath = u"SourceDirectory\\Slides\\PresentationWithTable.pptx";
const String outputFilePath = u"OutputDirectory\\SetTextDirectionInTable_out.pptx";

// プレゼンテーションファイルをロードする
auto presentation = System::MakeObject<Presentation>(sourceFilePath);

// 最初のスライドにアクセスする
SharedPtr<ISlide> slide = presentation->get_Slides()->idx_get(0);

// テーブルにアクセスする
SharedPtr<ITable> table;

for (SharedPtr<IShape> shape : slide->get_Shapes())
{
	if (System::ObjectExt::Is<ITable>(shape)) {
		table = System::DynamicCast_noexcept<ITable>(shape);
	}
}

// テキストの方向を設定する
SharedPtr<ICell> cell = table->idx_get(0, 1);
cell->set_TextAnchorType(TextAnchorType::Center);
cell->set_TextVerticalType(TextVerticalType::Vertical270);

// プレゼンテーションを保存
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
サンプルコードによって生成された出力の画像

サンプルコードによって生成された出力の画像

無料ライセンスを取得する

評価制限なしでAPIを試すために、無料の一時ライセンスをリクエストできます。

結論

この記事では、PowerPointプレゼンテーションでテーブルを作成および更新する方法を学習しました。さらに、Aspose.Slides for C++ APIを使用して、PowerPointテーブルのテキストの方向を設定する方法を見てきました。これは、PowerPointファイルを操作するための一連の追加機能を提供する堅牢なAPIです。 公式ドキュメントにアクセスすると、APIの詳細を調べることができます。ご不明な点がございましたら、無料サポートフォーラムまでお気軽にお問い合わせください。

関連項目