GroupDocs Conversion Java for Word でフォントを埋め込んだ PDF
この包括的なチュートリアルでは、GroupDocs Conversion Java を使用して DOCX ファイルを PDF に変換する際に フォントを埋め込んだ PDF を作成する方法を紹介します。法務文書のパイプラインを構築する場合でも、電子書籍を出版する場合でも、企業レポートを生成する場合でも、以下の手順に従うことで、生成された PDF がすべてのデバイスで元の Word ファイルとまったく同じ外観になることが保証されます。
クイック回答
- 変換を処理するライブラリは何ですか? GroupDocs Conversion for Java.
- 不足しているフォントを置き換えることはできますか? Yes – use font substitution settings.
- 本番環境でライセンスが必要ですか? A commercial license is required; a free trial is available.
- サポートされている Java バージョンはどれですか? JDK 8 or higher.
- バッチ変換は可能ですか? Absolutely – wrap the converter in a loop or use the API’s batch features.
GroupDocs Conversion Java とは?
GroupDocs Conversion Java は、Microsoft Office を必要とせずに DOCX、PPTX、XLSX、PDF など 70 以上 のドキュメント形式を変換できる高性能 API です。開発者はレンダリング、レイアウト、フォント埋め込み PDF 機能を細かく制御でき、典型的なサーバー上で 500 ページの DOCX を 30 秒未満で処理します。
変換時にカスタムフォントを使用する理由は?
適切なフォントを埋め込むことで、PDF がすべてのデバイスで同一に表示され、「フォントフォールバック」問題が解消され、ブランドガイドラインにも準拠します。この方法により、変換後に手動で PDF を調整する必要があるチームの再作業が最大 40 % 削減されます。
前提条件
- バージョン 8 以上の Java Development Kit (JDK)。
- 依存関係管理のための Maven。
- IDE(IntelliJ IDEA、Eclipse、または VS Code)。
GroupDocs.Conversion for Java の設定
まず、Maven プロジェクトに GroupDocs リポジトリと変換依存関係を追加します。
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/conversion/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-conversion</artifactId>
<version>25.2</version>
</dependency>
</dependencies>
ライセンス取得
無料トライアルで開始するか、拡張テスト用に 一時ライセンス を取得できます。商用利用の場合は、フルライセンスの購入を検討してください。オプションを確認するには、GroupDocs Licensing をご覧ください。
基本的な初期化と設定
依存関係を追加したら、ソース DOCX ファイルを指す Converter インスタンスを作成します。Converter はドキュメント変換操作を管理する主要クラスです。
import com.groupdocs.conversion.Converter;
// Initialize with a document path
Converter converter = new Converter("YOUR_DOCUMENT_DIRECTORY/SampleDocx.docx");
実装ガイド
以下は、デフォルトフォント PDF を設定し、カスタムフォント置換を定義する手順をステップバイステップで示したガイドです。
手順 1: 変換パスとロードオプションの定義
まず、PDF の保存先を指定し、フォント処理を制御するロードオプションを設定します。setAutoFontSubstitution は変換中の自動フォント推測を無効にします。setDefaultFont は元のフォントが見つからない場合に使用するフォールバックフォントを指定します。setFontSubstitutes は利用できないフォントを提供する代替フォントにマッピングします。
import com.groupdocs.conversion.options.load.WordProcessingLoadOptions;
import com.groupdocs.conversion.contracts.FontSubstitute;
// Output PDF path
String convertedFile = "YOUR_OUTPUT_DIRECTORY/ConvertedWordToPdf.pdf";
// Configure load options for Word documents
double autoFontSubstitution(false); // Disable automatic font substitution
defaultFont("resources/fonts/Helvetica.ttf"); // Set a default fallback font
// Prepare font substitutes list
List<FontSubstitute> fontSubstitutes = new ArrayList<>();
fontSubstitutes.add(FontSubstitute.create("Tahoma", "Arial")); // Substitute Tahoma with Arial
fontSubstitutes.add(FontSubstitute.create("Times New Roman", "Arial")); // Substitute Times New Roman with Arial
// Apply the substitutes to load options
setFontSubstitutes(fontSubstitutes);
直接回答
setAutoFontSubstitution(false) を設定して自動推測を無効にし、setDefaultFont("Helvetica.ttf") で信頼できるフォールバックを提供します。最後に、setFontSubstitutes(...) を使用して不足しているフォントを既知の代替フォントにマッピングします。これにより、ソース DOCX のすべての文字が出力 PDF の対応するグリフと一致します。
説明
setAutoFontSubstitution(false): ライブラリの自動推測をオフにし、完全な制御を可能にします。setDefaultFont("Helvetica.ttf"): 要求されたフォントが見つからない場合の汎用フォールバックを提供します。setFontSubstitutes(...): 不足しているフォントを、ターゲットシステムで利用可能な代替フォントにマッピングします。
手順 2: PDF 変換オプションの設定
次に、PDF 固有のオプションオブジェクトを作成します。PdfConvertOptions はフォント埋め込みや圧縮などの PDF 出力パラメータを定義します。setEmbedFonts は生成された PDF に選択したフォントを埋め込むことを有効にします。
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
// Initialize PDF conversion options
double options = new PdfConvertOptions();
直接回答
PdfConvertOptions をインスタンス化し、必要に応じて setEmbedFonts(true) でフォント埋め込みを有効にし、ファイルサイズと品質のバランスを取るように圧縮設定を調整します。これらのオプションにより、最終的な PDF の視覚的忠実度とストレージ要件の両方を満たすように細かく調整できます。
後で PdfConvertOptions を拡張してページサイズ、余白、圧縮設定を調整することも可能です。
手順 3: 変換の実行
最後に、前述のロードオプションと変換オプションを使用して変換を実行します。convert(source, target, loadOptions, pdfOptions) は指定された設定で変換を実行します。
// Convert Word document to PDF with specified font settings
converter.convert(convertedFile, () -> loadOptions, options);
直接回答
converter.convert(sourcePath, targetPath, loadOptions, pdfOptions) を呼び出します。API は DOCX を読み取り、フォントルールを適用し、選択したフォントを埋め込み、元のタイポグラフィを正確に保持した PDF を出力します。
API は DOCX を読み取り、フォントルールを適用し、選択したフォントを埋め込んだ PDF を書き込みます。
実用的な応用例
- Legal Document Management – 法廷用 PDF の正確なタイポグラフィを保持します。
- Publishing Industry – 電子書籍やカタログ全体でブランドフォントの一貫性を保ちます。
- Corporate Reports – ステークホルダー向け PDF が企業のスタイルガイドに合致するようにします。
- Educational Material – 講義ノートを変換し、カスタム学術フォントを保持します。
パフォーマンス上の考慮点
- Memory Management – 大きな DOCX ファイルはヒープを大量に消費する可能性があるため、JVM メモリを監視し、
-Xmxの調整を検討してください。 - Batch Processing – 変換ロジックをループでラップするか、GroupDocs のバッチ API を使用して複数ファイルを効率的に処理します。
- Resource Allocation – 多数のドキュメントを並列変換する際は、十分な CPU コアを割り当てます。
- Throughput – 4 コア VM では、フォント埋め込みを行いながら 1 分間に 最大 12 件の 300 ページ文書を処理できます。
よくある問題と解決策
| Issue | Solution |
|---|---|
| フォントが置換されない | 提供したパスにフォントファイルが存在し、FontSubstitute 名がソース DOCX の正確なフォントファミリー名と一致していることを確認してください。 |
| メモリ不足エラー | JVM ヒープサイズを増やす(-Xmx2g 以上)か、ファイルを小さなバッチで処理してください。 |
| PDF にフォントが埋め込まれていない | setDefaultFont が TrueType(.ttf)または OpenType(.otf)ファイルを指しており、ライセンスがフォント埋め込みを許可していることを確認してください。 |
| 変換後のページレイアウトが正しくない | 元の Word のページサイズに合わせるために PdfConvertOptions.setPageSize(...) を使用してください。 |
| 非常に大きなファイルの変換が遅い | メモリ負荷を減らすために PdfConvertOptions.setStream(true) でストリーミングモードを有効にしてください。 |
よくある質問
Q: ライセンスを購入せずに GroupDocs.Conversion を使用できますか?
A: はい、無料トライアルで開始するか、評価用に一時ライセンスを取得できます。
Q: フォントが正しく置換されない場合はどうすればよいですか?
A: フォントファイルがアクセス可能で、setFontSubstitutes で正しく参照されていることを確認してください。正確なフォントファミリー名を再確認してください。
Q: 大きなドキュメントの変換パフォーマンスを向上させるには?
A: ドキュメントをバッチ処理し、システムリソースを監視し、JVM ヒープサイズを増やし、ストリーミングモードを有効にしてください。
Q: Word 以外のドキュメントタイプも変換できますか?
A: もちろんです。GroupDocs Conversion は画像、スプレッドシート、プレゼンテーションなど多数の形式をサポートしています。
Q: GroupDocs.Conversion の追加ドキュメントはどこで見つけられますか?
A: 詳細な API リファレンスは、公式ガイドの GroupDocs Java Conversion Docs をご覧ください。
結論
これで、GroupDocs Conversion Java を使用して DOCX を PDF に変換する際に フォント埋め込み PDF を実現する、完全な本番対応ソリューションが手に入りました。フォント置換とデフォルトフォントを設定することで、ビューアやプラットフォームに関係なく、すべての PDF が元の Word ドキュメントの外観を忠実に再現することが保証されます。
次のステップ
PdfConvertOptionsの PDF/A 準拠や画像圧縮などの追加オプションを試してみてください。- バッチ変換を検討して、大規模なドキュメントパイプラインを自動化してください。
- 公式ドキュメントで API 全体を確認し、透かしやデジタル署名などの高度な機能を活用してください。
Last Updated: 2026-07-14
Tested With: GroupDocs.Conversion 25.2
Author: GroupDocs
リソース
- ドキュメント: GroupDocs Java Conversion Docs
- API リファレンス: GroupDocs API Reference
- ダウンロード: Get GroupDocs.Conversion
- 購入: Buy a License
- 無料トライアル: Trial Downloads
- 一時ライセンス: Request Temporary License
- サポート: GroupDocs Support Forum