C#でグレースケールPDFファイルを生成する方法

C#でグレースケールPDFを生成する方法

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

IronPdfは、RenderingOptionsGrayScaleプロパティをtrueに設定することで、PDFをグレースケールでレンダリングすることができます。

セクション見出し:2(クイックスタート: IronPDFでカラートーンPDFをグレースケールに変換する)

わずか数行のコードでIronPDFを使ってカラーPDFをグレースケールに変換します。 WebページやHTMLコンテンツをグレースケールのPDFにレンダリングするには、RenderingOptionsGrayScaleプロパティを設定します。 このガイドでは、一貫した表示のためにグレースケールのドキュメントを生成する方法を紹介します。

Nuget Icon今すぐ NuGet で PDF を作成してみましょう:

  1. NuGet パッケージ マネージャーを使用して IronPDF をインストールします

    PM > Install-Package IronPdf

  2. このコード スニペットをコピーして実行します。

    var renderer = new IronPdf.ChromePdfRenderer();
    renderer.RenderingOptions.GrayScale = true;
    var pdf = renderer.RenderUrlAsPdf("https://example.com");
    pdf.SaveAs("grayscale.pdf");
  3. 実際の環境でテストするためにデプロイする

    今すぐ無料トライアルでプロジェクトに IronPDF を使い始めましょう
    arrow pointer


グレースケールPDFを生成するには?

グレースケールのPDFを生成するには、RenderingOptionsGrayScaleプロパティをtrueに設定します。 この機能はIronPDFの包括的なレンダリングオプションの一部であり、PDF出力を細かくコントロールすることができます。

提供されたコードスニペットでは、ChromePdfRendererをインスタンス化した後にグレースケール機能が有効になっています。 その後、RenderUrlAsPdfメソッドを使用してWebページをレンダリングします。 コードはまた、レンダリングされたPDFの最初のページのみを抽出し、ローカルに保存します。 IronPDFを初めてお使いになる場合は、クイックスタートガイドをご覧ください。

グレースケールを True に設定すると色が変換されるのはなぜですか?

グレースケールPDFとは、フルカラーのスペクトルではなく、すべての色や濃淡がグレーの濃淡で表現された文書のことです。 グレースケールオプションを有効にすると、IronPDFのChromeレンダリングエンジンは、業界標準の輝度計算を使用して、すべてのRGBカラー値を対応するグレースケールに自動的に変換します。 このため、原文の視覚的な階層とコントラストを維持しながら、色情報をすべて削除する必要があります。

どのような場合にグレースケールPDFを使うべきですか?

IronPDFはPDFドキュメントをカラーではなくグレースケールでレンダリングします。 グレースケールでのPDF文書の印刷は、大量のバッチ印刷において費用対効果が高いです。 グレースケールでレンダリングすることで、元の色が明るすぎたり鮮やかすぎたりする場合の可読性を高めています。 グレースケールPDFは、デバイス、ソフトウェア、プラットフォーム間の互換性を高め、一貫した表示と印刷の体験を保証します。

グレースケールPDFの一般的な使用例は以下のとおりです:

  • ビジネスレポート:財務文書は、グレースケールの方がプロフェッショナルに見えることがよくあります。
  • 法律文書:裁判所提出書類や法律概要は、一般的にグレースケールの書式を必要とします。
  • 学術論文:研究論文や学位論文は、一般的にグレースケールで印刷されます。
  • 大量印刷:グレースケールは数百ページを印刷する際のコストを削減します。
  • アーカイブ文書:長期保存やPDF/Aコンプライアンスに最適です。

グレースケールに変換するとテキストはどうなりますか?

グレースケール機能の現在の実装では、レンダリングされた PDF 文書内のテキストが画像に変換されるため、ExtractAllImagesメソッドではテキストが出力されません。

現在、この機能はPDFをレンダリングするときにのみ利用可能です。 将来のアップデートでは、既存のPDFドキュメントをグレースケールに変換する機能が追加される可能性があります。 テキスト抽出作業の詳細については、テキストと画像の抽出のガイドを参照してください。

:path=/static-assets/pdf/content-code-examples/how-to/color-grayscale-grayscale.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

// Set GrayScale to true
renderer.RenderingOptions.GrayScale = true;

PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironsoftware.com/");
pdf.CopyPage(0).SaveAs("test.pdf");
$vbLabelText   $csharpLabel

高度なグレースケール PDF 生成の例

HTMLファイルをグレースケールPDFに変換する

ローカルのHTMLファイルを扱う場合、グレースケールのPDFに変換することができます。 これは、デザイン済みのテンプレートやレポートがあり、色なしでレンダリングする必要がある場合に役立ちます。 HTMLファイルをPDFに変換するについては、こちらをご覧ください。

using IronPdf;

// Create a renderer with grayscale enabled
var renderer = new ChromePdfRenderer()
{
    RenderingOptions = new ChromePdfRenderOptions()
    {
        GrayScale = true,
        MarginTop = 50,
        MarginBottom = 50,
        MarginLeft = 20,
        MarginRight = 20
    }
};

// Render an HTML file to grayscale PDF
var pdf = renderer.RenderHtmlFileAsPdf(@"C:\Reports\MonthlyReport.html");
pdf.SaveAs(@"C:\Reports\MonthlyReport_Grayscale.pdf");
using IronPdf;

// Create a renderer with grayscale enabled
var renderer = new ChromePdfRenderer()
{
    RenderingOptions = new ChromePdfRenderOptions()
    {
        GrayScale = true,
        MarginTop = 50,
        MarginBottom = 50,
        MarginLeft = 20,
        MarginRight = 20
    }
};

// Render an HTML file to grayscale PDF
var pdf = renderer.RenderHtmlFileAsPdf(@"C:\Reports\MonthlyReport.html");
pdf.SaveAs(@"C:\Reports\MonthlyReport_Grayscale.pdf");
$vbLabelText   $csharpLabel

HTML文字列からグレースケールPDFを作成する

動的コンテンツ生成のために、HTML文字列をグレースケールPDFに直接変換します。 このアプローチは、請求書や領収書など、プログラムによってコンテンツが作成される文書の作成に適しています。 詳細については、HTML文字列からPDFへの変換に関するガイドをご覧ください。

using IronPdf;

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.GrayScale = true;

// HTML content with inline CSS
string htmlContent = @"
    <html>
    <head>
        <style>
            body { font-family: Arial, sans-serif; }
            .header { background-color: #4CAF50; color: white; padding: 20px; }
            .content { padding: 20px; }
            .highlight { background-color: #ffeb3b; padding: 5px; }
        </style>
    </head>
    <body>
        <div class='header'>
            <h1>Invoice #12345</h1>
        </div>
        <div class='content'>
            <p>This colorful invoice will be rendered in grayscale.</p>
            <p class='highlight'>Highlighted sections maintain contrast in grayscale.</p>
        </div>
    </body>
    </html>";

var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("invoice_grayscale.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.GrayScale = true;

// HTML content with inline CSS
string htmlContent = @"
    <html>
    <head>
        <style>
            body { font-family: Arial, sans-serif; }
            .header { background-color: #4CAF50; color: white; padding: 20px; }
            .content { padding: 20px; }
            .highlight { background-color: #ffeb3b; padding: 5px; }
        </style>
    </head>
    <body>
        <div class='header'>
            <h1>Invoice #12345</h1>
        </div>
        <div class='content'>
            <p>This colorful invoice will be rendered in grayscale.</p>
            <p class='highlight'>Highlighted sections maintain contrast in grayscale.</p>
        </div>
    </body>
    </html>";

var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("invoice_grayscale.pdf");
$vbLabelText   $csharpLabel

パフォーマンスの考慮事項

グレースケールPDFを生成する際には、以下のパフォーマンス要因を考慮してください:

1.ファイルサイズ:グレースケールPDFはカラー版よりも小さく、電子メールの添付ファイルやWebダウンロードに最適です。 2.レンダリング速度:グレースケール変換は、レンダリング時間に最小限のオーバーヘッドを追加します。 3.メモリ使用量:グレースケール レンダリングは、フルカラー レンダリングよりも少ないメモリしか使用しません。

複数のグレースケールPDFを生成する際にパフォーマンスを向上させるには、asyncとマルチスレッド技術を使用してください。

IronPDFの他の機能との統合

グレースケールPDFをIronPdfの他の機能と組み合わせることで、包括的な文書処理が可能になります:

  • ヘッダーとフッターヘッダーとフッターのガイドを使用して、グレースケール文書にプロフェッショナルなヘッダーとフッターを追加します。
  • ページ番号: ページ番号チュートリアルに従って、グレースケールPDFにページ番号を入れてください。
  • 透かし:ブランディングやセキュリティのためにグレースケールのPDFに透かしを適用します。
  • PDF圧縮:グレースケール レンダリングと PDF 圧縮を組み合わせることで、ファイル サイズをさらに削減します。

グレースケール PDF 生成のベストプラクティス

1.色のコントラストをテストする: 変換する前に、要素間のコントラストが十分であることを確認してください。 2.セマンティックHTMLを使う:適切に構造化されたHTMLは、より良いグレースケール変換結果を生み出します。 3.アクセシビリティを考慮する:グレースケールのPDFは、一部の視覚障害者にとって読みやすさを向上させることができます。 4.本番前のプレビュー:大規模なバッチを生成する前に、常にグレースケール出力をプレビューします。

一般的な問題のトラブルシューティング

グレースケールのPDF生成で問題が発生した場合:

1.文字がぼやけて見える:レンダリング オプションで適切な DPI 設定を使用してください。 2.画像が白っぽく見える:変換前にソース画像のコントラストを調整する 3.パフォーマンスの問題: 頻繁に生成されるグレースケールPDFのキャッシュを実装する。

詳細なトラブルシューティングについては、総合トラブルシューティングガイドをご覧ください。

次に何ができるのかを見てみましょうか? 私たちのチュートリアルページをご覧ください: PDFの変換

よくある質問

C#でカラーPDFをグレースケールに変換するには?

IronPDFを使ってカラーPDFをグレースケールに変換するには、ChromePdfRendererオブジェクトをインスタンス化し、RenderingOptionsのGrayScaleプロパティをtrueに設定します。そしてRenderUrlAsPdf, RenderHtmlAsPdf, RenderHtmlFileAsPdfなどのメソッドを使用してグレースケールPDFドキュメントを生成します。

RenderingOptionsのGrayScaleプロパティの目的は何ですか?

IronPdfのRenderingOptionsのGrayScaleプロパティはPDFのすべての色をグレーの濃淡に変換します。Trueに設定すると、IronPDFのChromeレンダリングエンジンは自動的にRGBカラーの輝度値を計算し、視覚的な階層とコントラストを維持したままグレースケールに変換します。

なぜカラーPDFではなくグレースケールPDFを使用する必要があるのですか?

IronPdfのグレースケールレンダリングは、費用対効果の高い印刷、特に大規模なバッチ処理に最適です。グレースケールPDFはまた、元の色が明るすぎる場合の可読性を高め、異なるデバイスやプラットフォーム間での互換性を確保し、一貫した表示体験を提供します。

他のページはカラーのまま、特定のページをグレースケールに変換できますか?

IronPdfを使えば、ドキュメントをグレースケールでレンダリングし、CopyPageのようなメソッドを使って特定のページを抽出することができます。GrayScaleプロパティが有効な場合はドキュメント全体がグレースケールでレンダリングされますが、異なるレンダリングパスを組み合わせてカラーとグレースケールの混在したドキュメントを作成することもできます。

どのような種類のコンテンツをグレースケールPDFに変換できますか?

IronPDFはRenderUrlAsPdfによるWebページ、RenderHtmlAsPdfによるHTML文字列、RenderHtmlFileAsPdfによるHTMLファイルを含む様々なタイプのコンテンツをグレースケールPDFに変換することができます。すべてのコンテンツタイプは、一貫した結果を得るために、同じグレースケールレンダリングオプションをサポートしています。

Hairil Hasyimi Bin Omar
ソフトウェアエンジニア
すべての優れたエンジニアのように、ハイリルは熱心な学習者です。彼はC#、Python、Javaの知識を磨き、その知識を活用してIron Softwareのチームメンバーに価値を追加しています。ハイリルはマレーシアのマラ工科大学からIron Softwareのチームに参加し、化学およびプロセス工学の学士号を取得しました。
準備はできましたか?
Nuget ダウンロード 17,012,929 | バージョン: 2025.12 リリース