WordDOCXをPDFに変換する

再びファイル形式APIのホームへようこそ!最近、。NET(C#を使用)およびJavaアプリケーションでWord(DOC / DOCX)をプログラムでPDFに変換するさまざまなシナリオをカバーするブログ投稿をいくつか作成しました。これは人気があり広く使用されている機能なので、C++でもカバーすることを考えました。したがって、この投稿では、C++アプリケーションでWordDOC/DOCXをPDFに変換する方法を紹介します。この記事では、次のWordからPDFへの変換について説明します。

  • C++でのシンプルなWordDOC/DOCXからPDFへ。
  • 特定の標準(PDF 1.5、PDF / A-1aなど)を使用したDOCXからPDFへ。
  • DOCXの選択したページをPDFに変換します。
  • DOCXからPDFへの変換で画像/テキスト圧縮を適用します。

C++WordからPDFへのコンバーターライブラリ

Aspose.Words for C++は、MSWordを必要とせずにC++アプリケーション内でWord文書形式を作成および操作するための高度なライブラリです。 NuGetまたはダウンロードを介してインストールできます。ライブラリファイルを含む完全なパッケージと、ソースコードの例を実行する準備ができています。

Word DOC/DOCXをC++でPDFに変換する

Word文書をPDFに変換するのは、Aspose.Words for C++を使用したパイと同じくらい簡単です。以下は、DOC/DOCXファイルをPDFに変換する手順です。

  • Documentクラスのオブジェクトを作成し、Wordドキュメントのパスで初期化します。
  • Document->Save()メソッドを呼び出して、ドキュメントをPDFとして保存します。

次のコードサンプルは、C++でDOCXをPDFに変換する方法を示しています。

// ディスクからドキュメントをロードします。
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// 出力PDFパスを設定します
System::String outputPath =  u"DOCX-to-PDF.pdf";
// DOCXをPDFに変換する
doc->Save(outputPath);
std::cout << "Converted DOCX to PDF successfuly.";

入力ワードドキュメント

DOCXからPDFC++

変換されたPDFドキュメント

C++でのDOCからPDFへ

DOCXをC++でPDF/Aまたはその他のPDF標準に変換する

PDF形式は、PDF / A、PDF/EなどのさまざまなPDF標準をサポートしています。WordファイルをPDF/A-1aなどの特定の標準に変換する必要がある場合があります。このような場合、Aspose.Words for C++を使用すると、変換されたPDFに必要なPDF標準を設定できます。 WordからPDFへの変換でPDF標準を設定する手順は次のとおりです。

  • Documentクラスのオブジェクトを作成し、DOCXファイルのパスで初期化します。
  • PdfSaveOptionsクラスのオブジェクトを作成し、PdfSaveOptions->setCompliance()メソッドを使用してPDFコンプライアンスを設定します。
  • Document->Save()メソッドを呼び出して、ドキュメントをPDFとして保存します。

次のコードサンプルは、WordDOCXをPDF/A-1a標準でPDFに変換する方法を示しています。

// ディスクからドキュメントをロードします。
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// 出力PDFパスを設定します
System::String outputPath =  u"DOCX-to-PDFA.pdf";
// PDFオプションを設定する
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_Compliance(PdfCompliance::PdfA1a);
// ドキュメントをPDF形式で保存します。
doc->Save(outputPath, options);
std::cout << "Converted DOCX to PDF/A successfuly.";

Wordの選択したページをC++でPDFに変換する

Word全体をPDFに変換する代わりに、選択したページのみを変換することもできます。以下は、Wordの目的のページのみをPDFに変換する手順です。

  • Documentクラスを使用してWordドキュメントをロードします。
  • PdfSaveOptions->setPageIndex()メソッドを使用して、開始ページのインデックスを設定します。
  • PdfSaveOptions->setPageCount()メソッドを使用して、変換するページ数を設定します。
  • Document->Save()メソッドを使用して、ドキュメントをPDFとして保存します。

次のコードサンプルは、DOCXの選択したページをC++でPDFに変換する方法を示しています。

// ディスクからドキュメントをロードします。
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// 出力PDFパスを設定します
System::String outputPath =  u"DOCX-to-PDF.pdf";
// PDFオプションを設定する
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_PageIndex(1);
options->set_PageCount(2);
// ドキュメントをPDF形式で保存します。
doc->Save(outputPath, options);

DOCXからPDFへの変換で画像/テキスト圧縮を適用する

サイズを小さくするために、結果のPDFドキュメントを圧縮することもできます。 Aspose.Words for C++では、PdfSaveOptions->setTextCompression()メソッドとPdfSaveOptions->setImageCompression()メソッドをそれぞれ使用して、テキストと画像の圧縮を適用できます。次のコードサンプルは、C++でDOCXをPDFに変換するときに圧縮を適用する方法を示しています。

// ディスクからドキュメントをロードします。
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// 出力PDFパスを設定します
System::String outputPath =  u"DOCX-to-PDF.pdf";
// PDFオプションを設定する
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
// JPEG品質を設定する
options->set_JpegQuality(100);
// ドキュメントをPDF形式で保存します
doc->Save(outputPath, options);

Aspose.Words for C++の詳細

ドキュメントを使用して、Aspose.Words for C++の詳細を調べることができます。混乱を招く可能性がある場合は、フォーラムからお気軽にお知らせください。

関連項目