C#でPDFのフォントを管理する方法
IronPDFはC#でフォントの検索、追加、埋め込み、削除、置き換えを含む包括的なフォント管理を可能にし、すべてのプラットフォームで一貫したテキスト表示を実現します。
フォントとは、一貫したスタイルやデザインを持つ文字、記号、グリフのセットです。 フォントは、特定の書体、サイズ、太さ、スタイル(通常、太字、イタリックなど)を表します。 フォントは、視覚的に魅力的で一貫性のある方法でテキストを表示するためにタイポグラフィで使用されます。
IronPDFは、フォントの検索、取得、埋め込み、埋め込み解除、置換などの機能を提供し、フォントを管理する便利な方法を提供します。 新しいPDFを作成する場合でも、既存のドキュメントを編集する場合でも、適切なフォント管理を行うことで、あらゆるプラットフォームやデバイスでPDFが正しく表示されるようになります。
クイックスタート: PDFのフォント管理・埋め込みでPDF編集を効率化する
PDFドキュメントでのフォント管理を効率化するために、IronPDFから始めましょう。 このガイドでは、プラットフォーム間で視覚的な一貫性を保つためにPDFにフォントを埋め込む方法を紹介します。 わずか数行のコードで、文書の外観を向上させ、互換性を維持することができます。
-
IronPDF をNuGetパッケージマネージャでインストール
PM > Install-Package IronPdf -
このコード スニペットをコピーして実行します。
ChromePdfRenderer renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf("<p style='font-family:MyCustomFont;'>Hello world!</p>"); pdf.Fonts.Add(File.ReadAllBytes("MyCustomFont.ttf")) .Embed(); pdf.SaveAs("withCustomFont.pdf"); -
実際の環境でテストするためにデプロイする
今日プロジェクトで IronPDF を使い始めましょう無料トライアル
最小限のワークフロー(5ステップ)
- C#ライブラリをダウンロードする。
- コレクションにフォントを追加するには、
Addメソッドを使用します。 Embedメソッドを使用して、永続的なビジュアルのためにフォントを埋め込みます。Unembedメソッドを使用してファイルサイズを縮小する。- `Replace`メソッドを使ってフォントを簡単に置き換える
PDF内のフォントを検索して取得するにはどうすればよいですか?
PDFからすべてのフォントを取得するにはどうすればよいですか?
Fonts プロパティにアクセスすると、すべてのドキュメント フォントを含む PdfFontCollection オブジェクトが返されます。 Fonts プロパティには、PdfFontCollection オブジェクトを反復処理することで直接アクセスできます。 これは、PDFフォームを使用したり、文書構造を分析したりする場合に特に役立ちます。
: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
特定のフォントを名前で検索するにはどうすればよいですか?
IronPDFで特定のフォントを見つけるのは簡単です。 PdfFontCollection オブジェクトを使用して、フォント名を指定してフォントオブジェクトにアクセスし、プロパティを検査します。 この機能は、フォントの一貫性を維持しながらPDFドキュメントのテキストを置き換える必要がある場合に不可欠です。
: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")
PDFにフォントを追加するにはどうすればよいですか?
標準フォントまたはフォントファイルをバイトデータとして追加するには、Add メソッドを使用します。 フォント名を受け付けるメソッドは、14種類の標準フォントのうちの1つしか受け付けません。 標準的なフォントを追加しても、オペレーティングシステムで利用できることが保証されているため、埋め込むことはありません。 HTMLをPDFに変換する際、IronPDFは自動的にHTMLからWebフォントを扱います。
: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")
ウェブフォントやアイコンフォントを含む高度なフォント管理のために、IronPDFは最新のタイポグラフィのニーズに包括的なサポートを提供します。
なぜPDFにフォントを埋め込む必要があるのでしょうか
フォントを埋め込むと、フォントのバイトストリームデータがPDF文書に含まれます。 これにより、表示システムにフォントをインストールすることなく、適切な表示が保証されます。 このため、ファイルサイズは大きくなりますが、視覚的な一貫性は保証されます。 これは、PDF/A準拠のドキュメントを作成する場合や、ドキュメントの移植性を確保する場合に非常に重要です。
: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)
フォント埋め込みは、すべてのシステムで文字が正しく表示されるように、国際言語とUTF-8のサポートのために特に重要です。
いつPDFからフォントをアンエンベッドすべきですか?
埋め込み解除は、PDF から埋め込まれたフォントのバイトストリームデータを削除してファイルサイズを削減します。これを行うには、Unembed メソッドを使用します。 このテクニックは、ファイルサイズを最小化するPDF圧縮戦略と相性がよいです。
: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()
一般的でないフォントが埋め込み解除後にフォールバックを欠く場合、出力PDFで破損して表示される可能性があります。 Adobeが同じ問題を表示するかどうかを確認してください。 そうでない場合は、調査のためにサポートに連絡してください。 破損したフォントは以下のように表示されます:
PDFドキュメントのフォントを置き換えるにはどうすればよいですか?
フォント置換は、指定されたフォントを置換しながら、スタイルや文字エンコーディングを含む元のフォントデータ構造を保持します。 新しいフォントがオリジナルとうまく整合するようにしてください。 この機能は、PDFを編集するときや、ドキュメント間でフォントを標準化するときに便利です。
まれに、視覚的な結果が完全に一致しない場合があります。 これは、フォント置換方式の現在の限界です。
: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)
14種類の標準PDFフォントは何ですか?
14種類の標準フォント(Base 14 FontsまたはStandard Type 1 Fonts)は、PDFビューアで広くサポートされており、埋め込む必要はありません。 PDF標準は、PDF文書で作業する際にこれらのフォントが利用可能であることを保証します。 これらのフォントは、さまざまなソースからPDFを作成する際の互換性を維持するために不可欠です。
- Courier
- Courier-Bold
- Courier-Oblique
- Courier-BoldOblique
- Helvetica
- Helvetica-Bold
- Helvetica-Oblique
- Helvetica-BoldOblique
- Times-Roman
- Times-Bold
- Times-Italic
- Times-BoldItalic
- Symbol
- ZapfDingbats
どのフォント名が標準フォントに対応しますか?
複数の文字列名は、便宜上、同じ標準フォントを指します。 このマッピングシステムは、異なるPDFツールで作業するときや、PDFをマージまたは分割するときの互換性を保証します。
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
よくある質問
C# を使用して PDF 文書にカスタムフォントを埋め込むにはどうすればよいですか?
IronPDF では、Fonts コレクションの Add メソッドと Embed メソッドを使用することで、カスタムフォントを埋め込むことができます。フォントファイルをバイト配列として読み込み、PDF に追加するだけです:pdf.Fonts.Add(File.ReadAllBytes("MyCustomFont.ttf")).Embed()。これにより、すべてのプラットフォームで PDF が正しく表示されるようになります。
既存のPDF文書からすべてのフォントを取得する方法を教えてください。
IronPDFはPdfFontCollectionオブジェクトを返すFontsプロパティを通してすべてのドキュメントフォントへのアクセスを提供します。このコレクションを繰り返し処理することで、フォント名、埋め込み状態、フォントタイプを含むフォント情報を取得することができます。
PDF 内で特定のフォントを名前で検索する最善の方法は?
IronPDFではPdfFontCollectionオブジェクトを使って特定のフォントを見つけることができます。フォント名を指定してフォントを検索し、フォントオブジェクトとそのプロパティにアクセスすることができます。この機能は、PDF文書内の特定のフォントを置き換えたり変更したりする必要がある場合に特に便利です。
PDFファイルサイズを小さくするために、埋め込まれたフォントを削除できますか?
はい、IronPDFはPDFドキュメントから埋め込まれたフォントを削除するUnembedメソッドを提供します。必要なフォントがインストールされていないシステムでのPDFの表示に影響を与えるかもしれませんが、文書の構造を維持したままファイルサイズを大幅に削減することができます。
既存のPDF文書のフォントを置き換えるにはどうすればよいですか?
IronPDFはフォントの置き換えを簡単にする置き換えメソッドを提供します。PDF文書全体で既存のフォントを新しいフォントと簡単に入れ替えることができ、ブランドの一貫性を維持したり、古い文書を最新の書体で更新したりするのに便利です。

