ExcelからPDFへのC++

PDF形式は、利害関係者間でドキュメントを交換するために広く使用されています。さまざまな場合、ドキュメントは共有される前にPDF形式に変換されます。したがって、このような場合、PDFが標準のファイル形式であることが知られています。この記事では、プログラムでExcelからPDFへの変換を対象としています。特に、C++を使用してExcelXLSXまたはXLSワークブックをPDFファイルに変換する方法を学習します。

C++ExcelからPDFへのコンバーターAPI

Aspose.Cells for C++は、C++アプリケーション内にExcel自動化機能を実装するように設計されています。 APIを使用すると、新しいExcelファイルを最初から作成したり、既存のファイルを操作したりできます。 APIに組み込まれているスプレッドシートコンバータを使用すると、Excelファイルを忠実度の高い他の形式に変換できます。 APIパッケージをダウンロードするか、NuGetからインストールできます。

Install-Package Aspose.Cells.Cpp

ExcelファイルをC++でPDFに変換する {#Convert-Excel-Files-to-PDF-in-C++}

以下は、Aspose.Cellsを使用してExcelファイルをPDFに変換する手順です。

次のコードサンプルは、C++を使用してExcelファイルをPDFに変換する方法を示しています。

// ソースディレクトリのパス。
StringPtr srcDir = new String("..\\Data\\01_SourceDirectory\\");

// 出力ディレクトリパス。
StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\");

// 入力Excelファイルのパス
StringPtr sampleConvertExcelWorkbookToPDF = srcDir->StringAppend(new String("sampleConvertExcelWorkbookToPDF.xlsx"));

// 出力PDFファイルのパス
StringPtr outputConvertExcelWorkbookToPDF = outDir->StringAppend(new String("outputConvertExcelWorkbookToPDF_DirectConversion.pdf"));

// サンプルExcelファイルをロードします。
intrusive_ptr<Aspose::Cells::IWorkbook> workbook = Factory::CreateIWorkbook(sampleConvertExcelWorkbookToPDF);

// ExcelドキュメントをPDF形式で保存します
workbook->Save(outputConvertExcelWorkbookToPDF, SaveFormat_Pdf);

コンプライアンスレベルのC++ExcelからPDFへ

Aspose.Cells for C++では、PDF/Aなどの変換されたPDFファイルのコンプライアンスレベルを設定することもできます。このために、APIはIPdfSaveOptionsという名前の追加のクラスを提供します。これにより、さまざまなオプションを使用してExcelからPDFへの変換をカスタマイズできます。以下は、ExcelファイルをPDF/Aに準拠したPDFに変換する手順です。

次のコードサンプルは、ExcelからPDFへの変換でコンプライアンスレベルを設定する方法を示しています。

// ソースディレクトリのパス。
StringPtr srcDir = new String("..\\Data\\01_SourceDirectory\\");

// 出力ディレクトリパス。
StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\");

// 入力Excelファイルのパス
StringPtr sampleConvertExcelWorkbookToPDF = srcDir->StringAppend(new String("sampleConvertExcelWorkbookToPDF.xlsx"));

// 出力PDFファイルのパス
StringPtr outputConvertExcelWorkbookToPDF = outDir->StringAppend(new String("outputConvertExcelWorkbookToPDF_DirectConversion.pdf"));

// サンプルExcelファイルをロードします。
intrusive_ptr<Aspose::Cells::IWorkbook> workbook = Factory::CreateIWorkbook(sampleConvertExcelWorkbookToPDF);

// ExcelドキュメントをPDF形式で保存します
workbook->Save(outputConvertExcelWorkbookToPDF, SaveFormat_Pdf);

ExcelでPDF作成日をPDFに設定

変換したPDFファイルの作成日時を設定することもできます。このためには、IPdfSaveOptions->SetCreatedTime(new Aspose::Cells::Systems::DateTime)メソッドを使用するだけです。この操作を実行する手順は次のとおりです。

次のコードサンプルは、ExcelからPDFへの変換で作成日時を設定する方法を示しています。

// ソースディレクトリのパス。
StringPtr srcDir = new String("..\\Data\\01_SourceDirectory\\");

// 出力ディレクトリパス。
StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\");

// 入力Excelファイルのパス
StringPtr sampleConvertExcelWorkbookToPDF = srcDir->StringAppend(new String("sampleConvertExcelWorkbookToPDF.xlsx"));

// 出力PDFファイルのパス
StringPtr outputConvertExcelWorkbookToPDF = outDir->StringAppend(new String("outputConvertExcelWorkbookToPDF_DirectConversion.pdf"));

// サンプルExcelファイルをロードします。
intrusive_ptr<Aspose::Cells::IWorkbook> workbook = Factory::CreateIWorkbook(sampleConvertExcelWorkbookToPDF);

// ExcelドキュメントをPDF形式で保存します
workbook->Save(outputConvertExcelWorkbookToPDF, SaveFormat_Pdf);

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

評価の制限なしにAPIを試すために、無料の一時ライセンスを取得することができます。

結論

この記事では、C++を使用してExcelファイルをPDFに変換する方法を学習しました。さらに、変換されたPDFファイルのコンプライアンスレベルと作成日を設定する方法を見てきました。 ドキュメントを使用して、APIの詳細を調べることができます。

関連項目