HTMLからPDFへの変換でフォントを管理する方法

How to Manage Fonts in PDFs

This article was translated from English: Does it need improvement?
Translated
View the article in English

フォントとは、一貫したスタイルやデザインを持つ文字、記号、グリフのセットです。 フォントは、特定の書体、サイズ、太さ、スタイル(通常、太字、イタリックなど)を表します。 フォントは、視覚的に魅力的で一貫性のある方法でテキストを表示するためにタイポグラフィで使用されます。

IronPDFは、フォントの検索、取得、埋め込み、埋め込み解除、置換などの機能を提供し、フォントを管理する便利な方法を提供します。

クイックスタート:PDFでのフォント管理と埋め込み

PDFドキュメントでのフォント管理を効率化するために、IronPDFから始めましょう。 このクイックガイドは、異なるプラットフォーム間での視覚的一貫性を保証するために、PDF内のすべてのフォントを埋め込む方法を示します。 ほんの数行のコードで、PDFドキュメントの外観を向上させ、追加のフォントインストールなしで互換性を保つことができます。

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. Copy and run this code snippet.

    var pdf = PdfDocument.FromHtml("<p style='font‑family:MyCustomFont;'>Hello world!</p>");
    pdf.Fonts.Add("MyCustomFont", File.ReadAllBytes("MyCustomFont.ttf"))
      .Embed()
      .SaveAs("withCustomFont.pdf");
  3. Deploy to test on your live environment

    Start using IronPDF in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

最小のワークフロー(5ステップ)

  1. IronPDF C# ライブラリをダウンロード
  2. フォントコレクションにフォントを追加するために Add メソッドを使用する
  3. 持続的な視覚を保証するためにフォントを埋め込むため Embed メソッドを使用する
  4. Unembed メソッドを使用してサイズを縮小するためにフォントの埋め込みを解除
  5. Replace メソッドで簡単にフォントを置き換え

フォントの検索と取得

フォントの取得

Fontsプロパティにアクセスすると、ドキュメント内のすべてのフォントリストを含むPdfFontCollectionオブジェクトが返されます。 Fonts プロパティは、PdfFontCollectionオブジェクトを反復することによって直接アクセスできます。

:path=/static-assets/pdf/content-code-examples/how-to/manage-font-retrieve-font.cs
using IronPdf;
using IronPdf.Fonts;
using System.Collections.Generic;

// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Retreive font
PdfFontCollection fonts = pdf.Fonts;
Imports IronPdf
Imports IronPdf.Fonts
Imports System.Collections.Generic

' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

' Retreive font
Private fonts As PdfFontCollection = pdf.Fonts
$vbLabelText   $csharpLabel

フォントの検索

IronPDFを使用すると、特定のフォントを見つけるのは簡単です。 PdfFontCollectionオブジェクトを使用してフォント名を指定できます。 この例では、名前によってフォントオブジェクトにアクセスし、プロパティを検査する方法を示します。

:path=/static-assets/pdf/content-code-examples/how-to/manage-font-find-font.cs
using IronPdf;
using IronPdf.Fonts;
using System.Collections.Generic;
using System.Linq;

// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Find font
PdfFont font = pdf.Fonts["SpecialFontName"];
Imports IronPdf
Imports IronPdf.Fonts
Imports System.Collections.Generic
Imports System.Linq

' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

' Find font
Private font As PdfFont = pdf.Fonts("SpecialFontName")
$vbLabelText   $csharpLabel

フォントの追加

Add メソッドを使用して、標準フォントとバイトデータとしてのフォントファイルの両方を追加します。 フォント名のみを受け付けるメソッドは、14の標準フォントのいずれかしか受け付けません。 標準フォントの追加は、それを埋め込むことを意味しません。標準フォントはオペレーティングシステム上で既に利用可能であることが保証されているからです。

:path=/static-assets/pdf/content-code-examples/how-to/manage-font-add-font.cs
using IronPdf;
using IronPdf.Fonts;

// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Add font
pdf.Fonts.Add("Helvetica");
Imports IronPdf
Imports IronPdf.Fonts

' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

' Add font
pdf.Fonts.Add("Helvetica")
$vbLabelText   $csharpLabel

フォントの埋め込み

フォントを埋め込むとは、フォントのバイトストリームデータをPDFドキュメント自体に含めることを意味します。 この方法では、PDFドキュメントを適切に表示するためにシステムにフォントをインストールする必要がありません。 これによりPDFドキュメントのファイルサイズが大きくなることがありますが、フォントのインストール不要での視覚的一貫性を保つために有益です。

:path=/static-assets/pdf/content-code-examples/how-to/manage-font-embed-font.cs
using IronPdf;
using System.Linq;

// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Add the font
byte[] fontData = System.IO.File.ReadAllBytes("dir/to/font.ttf");

// Embed the font
pdf.Fonts.Last().Embed(fontData);
Imports IronPdf
Imports System.Linq

' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

' Add the font
Private fontData() As Byte = System.IO.File.ReadAllBytes("dir/to/font.ttf")

' Embed the font
pdf.Fonts.Last().Embed(fontData)
$vbLabelText   $csharpLabel

フォントの埋め込み解除

フォントの埋め込み解除とは、PDFドキュメントに含まれるフォントの埋め込まれたバイトストリームデータを削除することを意味します。 目的はPDFドキュメントのファイルサイズを減らすことです。Unembed メソッドを使用してこれを達成してください。

:path=/static-assets/pdf/content-code-examples/how-to/manage-font-unembed-font.cs
using IronPdf;
using IronPdf.Fonts;

// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Get fonts
PdfFontCollection fonts = pdf.Fonts;

// Unembed a font
pdf.Fonts[0].Unembed();
Imports IronPdf
Imports IronPdf.Fonts

' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

' Get fonts
Private fonts As PdfFontCollection = pdf.Fonts

' Unembed a font
pdf.Fonts(0).Unembed()
$vbLabelText   $csharpLabel

元のドキュメントのフォントがあまりにも珍しいものであるか、フォールバックが欠如している場合、フォントの埋め込みが解除された後に出力PDFで破損して表示されることがあります。 Adob​​eで同じフォントの埋め込み解除が同じ問題を引き起こすかどうか確認することでこれをトラブルシューティングできます。 もしAdobeでも問題が発生する場合は、これは予想された動作です。 しかし、そうでない場合は、さらなる調査のためにサポートチームに問題を報告してください。 破損したフォントは次のように表示されます:

class="content-img-align-center">
class="center-image-wrapper"> 破損したフォントのPDF

フォントの置換

フォント置換操作は、PDFドキュメント内のスタイリングや文字エンコーディングなどの元のフォントデータ構造を保持しつつ、新しく指定されたフォントに置き換えます。 ユーザーは、新しいフォントが元のフォントとよく一致することを確認する必要があります。

[{w:(稀なケースで、結果として視覚面で完璧なフィットではないことがあります。 これはフォント置換メソッドの現在の制限です。)}]

:path=/static-assets/pdf/content-code-examples/how-to/manage-font-replace-font.cs
using IronPdf;
using IronPdf.Fonts;
using System.Linq;

// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

byte[] fontData = System.IO.File.ReadAllBytes("dir/to/font.ttf");
// Get and replace Font
pdf.Fonts["Courier"].ReplaceWith(fontData);
Imports IronPdf
Imports IronPdf.Fonts
Imports System.Linq

' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

Private fontData() As Byte = System.IO.File.ReadAllBytes("dir/to/font.ttf")
' Get and replace Font
pdf.Fonts("Courier").ReplaceWith(fontData)
$vbLabelText   $csharpLabel

標準フォント

PDFの14の標準フォント、別名「ベース14フォント」または「標準タイプ1フォント」は、PDFビューア内で広くサポートされ、ドキュメントに埋め込む必要がないフォントセットを形成します。 標準フォントはPDFドキュメントを操作する際に利用可能であることが保証された14のフォントを定義します。

  • Courier
  • Courier-Bold
  • Courier-Oblique
  • Courier-BoldOblique
  • Helvetica
  • Helvetica-Bold
  • Helvetica-Oblique
  • Helvetica-BoldOblique
  • Times-Roman
  • Times-Bold
  • Times-Italic
  • Times-BoldItalic
  • Symbol
  • ZapfDingbats

標準フォント Mapping

標準フォントを参照する際の利便性のために、複数の文字列名が同じフォントを指します。

Courierへのマッピング

  • StandardFont.Courier
    • Courier
    • CourierNew
    • CourierNewPSMT
    • CourierStd

Courier-Boldへのマッピング

  • StandardFont.CourierBold
    • Courier,Bold
    • Courier-Bold
    • CourierBold
    • CourierNew,Bold
    • CourierNew-Bold
    • CourierNewBold
    • CourierNewPS-BoldMT
    • CourierStd-Bold

Courier-Obliqueへのマッピング

  • StandardFont.CourierOblique
    • Courier,Italic
    • Courier-Oblique
    • CourierItalic
    • CourierNew,Italic
    • CourierNew-Italic
    • CourierNewItalic
    • CourierNewPS-ItalicMT
    • CourierStd-Oblique

Courier-BoldObliqueへのマッピング

  • StandardFont.CourierBoldOblique
    • Courier,BoldItalic
    • Courier-BoldOblique
    • CourierBoldItalic
    • CourierNew,BoldItalic
    • CourierNew-BoldItalic
    • CourierNewBoldItalic
    • CourierNewPS-BoldItalicMT
    • CourierStd-BoldOblique

Helveticaへのマッピング

  • StandardFont.Helvetica
    • Arial
    • ArialMT
    • Helvetica

Helvetica-Boldへのマッピング

  • StandardFont.HelveticaBold
    • Arial,Bold
    • Arial-Bold
    • Arial-BoldMT
    • ArialBold
    • ArialMT,Bold
    • ArialRoundedMTBold
    • Helvetica,Bold
    • Helvetica-Bold
    • HelveticaBold

Helvetica-Obliqueへのマッピング

  • StandardFont.HelveticaOblique
    • Arial,Italic
    • Arial-Italic
    • Arial-ItalicMT
    • ArialItalic
    • ArialMT,Italic
    • Helvetica,Italic
    • Helvetica-Italic
    • Helvetica-Oblique
    • HelveticaItalic

Helvetica-BoldObliqueへのマッピング

  • StandardFont.HelveticaBoldOblique
    • Arial,BoldItalic
    • Arial-BoldItalic
    • Arial-BoldItalicMT
    • ArialBoldItalic
    • ArialMT,BoldItalic
    • Helvetica,BoldItalic
    • Helvetica-BoldItalic
    • Helvetica-BoldOblique
    • HelveticaBoldItalic

Times-Romanへのマッピング

  • StandardFont.Times
    • Times-Roman
    • TimesNewRoman
    • TimesNewRomanPS
    • TimesNewRomanPSMT

Times-Boldへのマッピング

  • StandardFont.TimesBold
    • Times-Bold
    • TimesBold
    • TimesNewRoman,Bold
    • TimesNewRoman-Bold
    • TimesNewRomanBold
    • TimesNewRomanPS-Bold
    • TimesNewRomanPS-BoldMT
    • TimesNewRomanPSMT,Bold

Times-Italicへのマッピング

  • StandardFont.TimesOblique
    • Times-Italic
    • TimesItalic
    • TimesNewRoman,Italic
    • TimesNewRoman-Italic
    • TimesNewRomanItalic
    • TimesNewRomanPS-Italic
    • TimesNewRomanPS-ItalicMT
    • TimesNewRomanPSMT,Italic

Times-BoldItalicへのマッピング

  • StandardFont.TimesBoldOblique
    • Times-BoldItalic
    • TimesBoldItalic
    • TimesNewRoman,BoldItalic
    • TimesNewRoman-BoldItalic
    • TimesNewRomanBoldItalic
    • TimesNewRomanPS-BoldItalic
    • TimesNewRomanPS-BoldItalicMT
    • TimesNewRomanPSMT,BoldItalic

Symbolへのマッピング

  • StandardFont.Symbol
    • Symbol
    • SymbolMT

ZapfDingbatsへのマッピング

  • StandardFont.Dingbats
    • ZapfDingbats

よくある質問

PDFドキュメントで使用されているフォントを見つけてリストするにはどうすればよいですか?

IronPDFを使用して、PdfDocumentオブジェクトのFontsプロパティにアクセスできます。これにより、PdfFontCollectionが提供されます。このコレクションを反復することにより、ドキュメントで使用されているすべてのフォントを見つけてリストできます。

PDFにフォントを追加するために利用可能なメソッドは何ですか?

IronPDFはAddメソッドを使用してフォントを追加することを許可しています。これには標準フォントやバイトデータとしてのカスタムフォントファイルを含めることができます。このメソッドにより、PDFドキュメントで利用可能なフォントの範囲を拡張することができます。

ビジュアルの一貫性を確保するためにPDFにフォントを埋め込むにはどうすればよいですか?

IronPDFを使用してフォントを埋め込むには、PdfFontCollectionから目的のフォントを取得し、Embedメソッドを適用することができます。これにより、フォントのバイトストリームデータがPDFに含まれ、異なるシステム間でのビジュアルの一貫性を維持します。

PDFドキュメントでフォントを解除埋め込みする理由は何ですか?

IronPDFでフォントを解除埋め込みすることは、埋め込まれたバイトストリームデータを削除してファイルサイズを縮小することを伴います。これは、ファイルサイズが優先され、フォントが一般に利用可能である場合に有用です。

PDFでフォントを置換するプロセスは何ですか?

IronPDFのReplaceメソッドを使用して、PdfFontCollection内でPDFのフォントを置換できます。これにより、既存のフォントを別のフォントに差し替えることができ、元のスタイルとエンコーディングにできる限り一致させることができます。

Base 14フォントはなぜPDFで重要なのですか?

Base 14フォント、またはStandard Type 1フォントは、Courier、Helvetica、Times-Romanなどがありますが、これらはPDFビューアーで普遍的にサポートされているため重要です。埋め込む必要がないため、互換性を確保し、ファイルサイズを縮小します。

PDFドキュメントでカスタムフォントを使用することは可能ですか?

はい、IronPDFはカスタムフォントの追加をサポートしています。Addメソッドを使用してフォントファイルデータとともに、標準オプションを超えて、任意のフォントをPDFドキュメントに組み込むことができます。

PDFドキュメントでIronPDFを使用してフォントを管理する利点は何ですか?

IronPDFは強力なフォント管理機能を提供しており、フォントを検索、追加、埋め込み、解除埋め込み、置換することができます。この柔軟性により、ドキュメントのカスタマイズが向上し、さまざまなプラットフォーム間でのビジュアルの一貫性が確保されます。

IronPDF はフォント管理操作に関して .NET 10 と完全に互換性がありますか?

はい。IronPDF は .NET 10 との完全な互換性を提供し、回避策や特別な構成を必要とせずに、 AddEmbedUnembedReplace 、標準フォントへのアクセスなどのすべてのフォント管理操作をサポートします。

Chaknith Bin
ソフトウェアエンジニア
ChaknithはIronXLとIronBarcodeに取り組んでいます。彼はC#と.NETの深い専門知識を持ち、ソフトウェアの改善や顧客サポートに貢献しています。ユーザーとの対話から得られる洞察が、より良い製品、ドキュメント、および全体的な経験に寄与しています。
準備はいいですか?
Nuget ダウンロード 16,154,058 | バージョン: 2025.11 ただ今リリースされました