Linux DockerコンテナにおけるIronPDFでのカスタムフォントの埋め込み

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

WindowsでPDFを生成する際はカスタムフォントは正しく埋め込まれますが、Linux Dockerコンテナ内では埋め込みに失敗します。 意図されたフォントの代わりに、レンダラーはフォールバックとしてDejaVu Sansを使用します。

LinuxシステムおよびDockerコンテナ内では、フォントは明示的にインストールされるか参照される必要があります。 Chromeレンダリングエンジンにフォントが利用できない場合、IronPDFはシステムのデフォルトフォールバッフフォントを代替として使用し、視覚的な違いと埋め込み失敗を引き起こします。

解決策

オプション1:Arialや類似のフォントのためにMicrosoftコアフォントをインストール

Dockerfileに追加します:

RUN apt update && apt install -y ttf-mscorefonts-installer

オプション2:@font-faceを介してカスタムフォントを埋め込む

PoppinsやRobotoなどのシステムフォント以外のフォントの場合、Dockerイメージ内にバンドルされた@font-faceを使用してHTMLで宣言します:

<!DOCTYPE html>
<html>
<head>
<style>
@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Regular.ttf');
}
p {
    font-family: 'Poppins';
    font-size: 16px;
}
</style>
</head>
<body>
<p>Custom font text</p>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<style>
@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Regular.ttf');
}
p {
    font-family: 'Poppins';
    font-size: 16px;
}
</style>
</head>
<body>
<p>Custom font text</p>
</body>
</html>
HTML

オプション3:印刷CSSメディアタイプを使用

@font-face宣言を含む印刷に特化したスタイルを適用します:

renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
$vbLabelText   $csharpLabel

完全なLinux Docker設定については、IronPDF Dockerガイドをご覧ください。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 20,088,359 | バージョン: 2026.7 リリースされたばかり
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package IronPdf
サンプルを実行するHTML が PDF に変換されるのを確認します。