C#でPDFをHTMLに変換する方法

IronPDFを使ってC#でPDFをHTMLに変換する方法

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

IronPDFは、PDFをHTMLに変換することができ、SaveAsHtml メソッドを使用してC#で1行のコードで実現でき、PDFをウェブに適したものにし、アクセシビリティ、SEO、ウェブ統合を向上させます。 IronPDFライブラリは、視覚的な構造とレイアウトを維持しながら、PDFコンテンツをHTML形式に変換するための堅牢なソリューションを提供します。

PDFをHTMLに変換すると、次のような利点があります:

  • ウェブアクセシビリティの向上
  • さまざまなデバイスに対応するレスポンシブデザイン
  • 検索エンジン最適化の改善
  • シームレスなウェブ統合
  • ウェブツールによる簡単なコンテンツ編集
  • クロスプラットフォームの互換性
  • 動的要素のサポート

この変換プロセスは、PDFコンテンツをWebプラットフォーム用に再利用する場合や、さらなる処理のためにPDFからテキストや画像を抽出する必要がある場合に役立ちます。

IronPDFは.NET C#でのPDFからHTMLへの変換を簡素化し、複雑な変換プロセスを内部で処理するメソッドを提供します。 文書管理システムの構築、ウェブベースのPDFビューアの作成、検索エンジンによるPDFコンテンツの検索可能化など、IronPDFの変換機能は信頼性の高いソリューションを提供します。

クイックスタート: IronPDFで PDF を HTML に瞬時に変換する

IronPDFを使って1行のコードでPDFドキュメントをHTMLファイルに変換します。 この例では、IronPDFのSaveAsHtml メソッドを利用した迅速なPDFからHTMLへの変換を示しています。

  1. IronPDF をNuGetパッケージマネージャでインストール

    PM > Install-Package IronPdf
  2. このコード スニペットをコピーして実行します。

    IronPdf.PdfDocument.FromFile("example.pdf").SaveAsHtml("output.html");
  3. 実際の環境でテストするためにデプロイする

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

    arrow pointer


基本的なPDFをHTMLに変換するには?

ToHtmlString メソッドは、既存のPDFドキュメント内のHTML要素を分析することを可能にします。 デバッグやPDFの比較のためのツールとして機能します。 SaveAsHtml メソッドは、PDFドキュメントを直接HTMLファイルとして保存します。 どちらのアプローチも、特定のニーズに柔軟に対応します。

PDFからHTMLへの変換プロセスでは、PDF文書の視覚的なレイアウトを維持しながら、Webアプリケーション用のHTML出力を作成します。 PDFファイルをダウンロードしたり、リーダープラグインをインストールしたりすることなく、ウェブブラウザでPDFコンテンツを表示する必要がある場合に役立ちます。

ご注意注: 元の PDF 内のすべてのインタラクティブ フォーム フィールドは、結果の HTML ドキュメントでは機能しなくなります。

PDFフォームを扱う開発者のために、変換プロセスではフォームフィールドを静的コンテンツとしてレンダリングします。 フォームの機能を維持するために、変換前にIronPDFのフォーム編集機能を使ってフォームデータを抽出することを検討してください。

サンプルPDFはどのようなものですか?

どのように変換コードを実装すればよいですか?

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

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Convert PDF to HTML string
string html = pdf.ToHtmlString();
Console.WriteLine(html);

// Convert PDF to HTML file
pdf.SaveAsHtml("myHtml.html");
Imports IronPdf
Imports System

Dim pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

' Convert PDF to HTML string
Dim html As String = pdf.ToHtmlString()
Console.WriteLine(html)

' Convert PDF to HTML file
pdf.SaveAsHtml("myHtml.html")
$vbLabelText   $csharpLabel

コードは、PDFからHTMLへの変換のための2つの主要な方法を示しています。 HTMLコンテンツをプログラムで処理する必要がある場合はToHtmlString メソッドが動作し、SaveAsHtml はファイルを直接生成します。 複数のPDFについては、同様の手法で一括処理します。

出力されたHTMLはどのように見えますか?

以下のウェブサイトに、SaveAsHtml メソッドから生成された全体の出力HTMLが入力されています。


Icon Quote related to 出力されたHTMLはどのように見えますか?

私のお気に入りのこの種のライブラリはIronPDFです。PDFファイルの迅速で効率的な操作が可能です。また、PDF/A形式へのエクスポートやPDF文書へのデジタル署名といった多くの貴重な機能も備えています。

Milan Jovanovic related to 出力されたHTMLはどのように見えますか?

Milan Jovanovic

Microsoft MVP

ケーススタディを見る
Icon Quote related to 出力されたHTMLはどのように見えますか?

IronOCRのおかげで私たちは年間$40,000を手作業の処理から節約し、生産性を向上させ、高影響のタスクにリソースを充てることができます。非常にお勧めします。

Brent Matzelle related to 出力されたHTMLはどのように見えますか?

Brent Matzelle

最高技術責任者, OPYN

ケーススタディを見る
Icon Quote related to 出力されたHTMLはどのように見えますか?

IronSuiteは私たちの業務において重要な役割を果たしています。これらは、フロアプランの作成や在庫管理の改善を含め、ビジネス全体の効率を向上させるツールです。

David Jones related to 出力されたHTMLはどのように見えますか?

David Jones

リードソフトウェアエンジニア、Agorus Build

ケーススタディを見る

高度な PDF to HTML オプションはどのように設定できますか?

両方のToHtmlStringSaveAsHtml メソッドは、HtmlFormatOptions クラスを通じて構成オプションを提供します。 この設定システムは、生成されたHTML出力の外観と動作をカスタマイズします。 利用可能なプロパティは次のとおりです:

  • BackgroundColor: HTML出力の背景色を設定
  • PdfPageMargin: ピクセル単位でページの余白を設定

以下のプロパティはToHtmlString 及びSaveAsHtml メソッドの 'title' パラメータに適用されます。 元のPDFのタイトルを変更することなく、コンテンツの最初に新しいタイトルを追加します:

  • H1Color: タイトルの色を設定
  • H1FontSize: ピクセル単位でタイトルのフォントサイズを設定
  • H1TextAlignment: タイトルの配置を設定(左、中央、右)

カスタム用紙サイズや特定のページの向きで作業している開発者のために、これらの設定オプションは、HTML出力が意図された視覚構造を維持することを保証します。

どのような設定オプションがありますか?

:path=/static-assets/pdf/content-code-examples/how-to/pdf-to-html-advanced-settings.cs
using IronPdf;
using IronSoftware.Drawing;
using System;

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// PDF to HTML configuration options
HtmlFormatOptions htmlformat = new HtmlFormatOptions();
htmlformat.BackgroundColor = Color.White;
htmlformat.PdfPageMargin = 10;
htmlformat.H1Color = Color.Blue;
htmlformat.H1FontSize = 25;
htmlformat.H1TextAlignment = TextAlignment.Center;

// Convert PDF to HTML string
string html = pdf.ToHtmlString();
Console.WriteLine(html);

// Convert PDF to HTML file
pdf.SaveAsHtml("myHtmlConfigured.html", true, "Hello World", htmlFormatOptions: htmlformat);
Imports IronPdf
Imports IronSoftware.Drawing
Imports System

Dim pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")

' PDF to HTML configuration options
Dim htmlformat As New HtmlFormatOptions()
htmlformat.BackgroundColor = Color.White
htmlformat.PdfPageMargin = 10
htmlformat.H1Color = Color.Blue
htmlformat.H1FontSize = 25
htmlformat.H1TextAlignment = TextAlignment.Center

' Convert PDF to HTML string
Dim html As String = pdf.ToHtmlString()
Console.WriteLine(html)

' Convert PDF to HTML file
pdf.SaveAsHtml("myHtmlConfigured.html", True, "Hello World", htmlFormatOptions:=htmlformat)
$vbLabelText   $csharpLabel

この例では、カスタムスタイルで洗練されたHTML出力を作成する方法を示します。 設定オプションはIronPDFのレンダリングエンジンと連動し、視覚的忠実性を維持した高品質のHTMLを生成します。

設定された出力はどのように違いますか?

以下のウェブサイトに、SaveAsHtml メソッドから生成された全体の出力HTMLが入力されています。

なぜ HTML 出力では SVG タグを使用するのですか?

これらの方法は、インラインCSSを含むHTML文字列を生成します。 出力されるHTMLには、標準的なHTMLタグの代わりにSVGタグが使用されています。 このような違いにもかかわらず、ウェブブラウザで正しく表示される有効なHTMLを作成します。 このメソッドから返されるHTML文字列は、RenderHtmlAsPdf メソッドを使用してレンダリングされたPDFドキュメントの場合、HTML入力と異なることがあります。

SVGベースのアプローチにより、正確な位置、フォント、グラフィックなど、複雑なPDFレイアウトの正確な表現が保証されます。 この方法は、画像や図表、標準的なHTML要素では再現が難しい複雑な書式を含むPDFに効果的です。

追加のコード例:バッチ PDF から HTML への変換

複数のPDFをHTMLに変換するために、PDFファイルのディレクトリ全体を処理する例を示します:

using IronPdf;
using System.IO;

public class BatchPdfToHtmlConverter
{
    public static void ConvertPdfDirectory(string inputDirectory, string outputDirectory)
    {
        // Ensure output directory exists
        Directory.CreateDirectory(outputDirectory);

        // Configure HTML output settings once for consistency
        HtmlFormatOptions formatOptions = new HtmlFormatOptions
        {
            BackgroundColor = Color.WhiteSmoke,
            PdfPageMargin = 15,
            H1FontSize = 28,
            H1TextAlignment = TextAlignment.Left
        };

        // Process all PDF files in the directory
        string[] pdfFiles = Directory.GetFiles(inputDirectory, "*.pdf");

        foreach (string pdfPath in pdfFiles)
        {
            try
            {
                // Load PDF document
                PdfDocument pdf = PdfDocument.FromFile(pdfPath);

                // Generate output filename
                string fileName = Path.GetFileNameWithoutExtension(pdfPath);
                string htmlPath = Path.Combine(outputDirectory, $"{fileName}.html");

                // Convert and save as HTML with consistent formatting
                pdf.SaveAsHtml(htmlPath, true, fileName, htmlFormatOptions: formatOptions);

                Console.WriteLine($"Converted: {fileName}.pdf → {fileName}.html");
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error converting {pdfPath}: {ex.Message}");
            }
        }
    }
}
using IronPdf;
using System.IO;

public class BatchPdfToHtmlConverter
{
    public static void ConvertPdfDirectory(string inputDirectory, string outputDirectory)
    {
        // Ensure output directory exists
        Directory.CreateDirectory(outputDirectory);

        // Configure HTML output settings once for consistency
        HtmlFormatOptions formatOptions = new HtmlFormatOptions
        {
            BackgroundColor = Color.WhiteSmoke,
            PdfPageMargin = 15,
            H1FontSize = 28,
            H1TextAlignment = TextAlignment.Left
        };

        // Process all PDF files in the directory
        string[] pdfFiles = Directory.GetFiles(inputDirectory, "*.pdf");

        foreach (string pdfPath in pdfFiles)
        {
            try
            {
                // Load PDF document
                PdfDocument pdf = PdfDocument.FromFile(pdfPath);

                // Generate output filename
                string fileName = Path.GetFileNameWithoutExtension(pdfPath);
                string htmlPath = Path.Combine(outputDirectory, $"{fileName}.html");

                // Convert and save as HTML with consistent formatting
                pdf.SaveAsHtml(htmlPath, true, fileName, htmlFormatOptions: formatOptions);

                Console.WriteLine($"Converted: {fileName}.pdf → {fileName}.html");
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error converting {pdfPath}: {ex.Message}");
            }
        }
    }
}
Imports IronPdf
Imports System.IO

Public Class BatchPdfToHtmlConverter
    Public Shared Sub ConvertPdfDirectory(inputDirectory As String, outputDirectory As String)
        ' Ensure output directory exists
        Directory.CreateDirectory(outputDirectory)

        ' Configure HTML output settings once for consistency
        Dim formatOptions As New HtmlFormatOptions With {
            .BackgroundColor = Color.WhiteSmoke,
            .PdfPageMargin = 15,
            .H1FontSize = 28,
            .H1TextAlignment = TextAlignment.Left
        }

        ' Process all PDF files in the directory
        Dim pdfFiles As String() = Directory.GetFiles(inputDirectory, "*.pdf")

        For Each pdfPath As String In pdfFiles
            Try
                ' Load PDF document
                Dim pdf As PdfDocument = PdfDocument.FromFile(pdfPath)

                ' Generate output filename
                Dim fileName As String = Path.GetFileNameWithoutExtension(pdfPath)
                Dim htmlPath As String = Path.Combine(outputDirectory, $"{fileName}.html")

                ' Convert and save as HTML with consistent formatting
                pdf.SaveAsHtml(htmlPath, True, fileName, htmlFormatOptions:=formatOptions)

                Console.WriteLine($"Converted: {fileName}.pdf → {fileName}.html")
            Catch ex As Exception
                Console.WriteLine($"Error converting {pdfPath}: {ex.Message}")
            End Try
        Next
    End Sub
End Class
$vbLabelText   $csharpLabel

このバッチ変換の例は、コンテンツ管理システム、デジタルアーカイブ、または大量のPDFコンテンツにWeb上でアクセスできるようにする必要があるアプリケーションに適しています。 プログラムでPDFを扱う方法についての詳細は、チュートリアルセクションをご覧ください。

よくある質問

C#でPDFファイルをHTMLに変換するには?

IronPDFを使えば、たった1行のコードでC#でPDFをHTMLに変換することができます:IronPdf.PdfDocument.FromFile("example.pdf").SaveAsHtml("output.html").このメソッドは複雑な変換処理を内部で処理し、PDFドキュメントの視覚的な構造とレイアウトを維持します。

PDFをHTMLに変換する主な利点は何ですか?

IronPDFのPDFからHTMLへの変換は、ウェブアクセシビリティの向上、様々なデバイスに対応したレスポンシブデザイン、SEOの改善、シームレスなウェブ統合、ウェブツールによる簡単なコンテンツ編集、クロスプラットフォーム互換性、動的要素のサポートなど、いくつかの利点を提供します。

PDF から HTML への変換にはどのような方法がありますか?

IronPDFはPDFからHTMLへの変換に2つの主要なメソッドを提供します: HTML要素を解析し、HTMLを文字列として返すToHtmlStringメソッドと、PDFドキュメントを直接HTMLファイルとして保存するSaveAsHtmlメソッドです。どちらのメソッドもPDF文書の視覚的レイアウトを保持します。

PDFをHTMLに変換した後、インタラクティブなフォームフィールドは機能しますか?

IronPDFのPDFからHTMLへの変換では、元のPDFのすべてのインタラクティブなフォームフィールドは、結果のHTMLドキュメントでは機能しなくなります。フォームフィールドは静的コンテンツとしてレンダリングされます。フォームの機能を維持するためには、変換前にIronPDFのフォーム編集機能を使ってフォームデータを抽出する必要があります。

PDFからの変換時にHTML出力をカスタマイズできますか?

はい、IronPDFではHtmlFormatOptionsクラスを使って出力HTMLを設定することができます。これにより、HTML変換プロセスのさまざまな側面を制御し、出力が特定の要件を満たすようにすることができます。

Curtis Chau
テクニカルライター

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

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

レビュー済み
Jeff Fritz
Jeffrey T. Fritz
プリンシパルプログラムマネージャー - .NETコミュニティチーム
Jeffはまた、.NETとVisual Studioチームのプリンシパルプログラムマネージャーです。彼は.NET Conf仮想会議シリーズのエグゼクティブプロデューサーであり、週に二回放送される開発者向けライブストリーム『Fritz and Friends』のホストを務め、テクノロジーについて話すことや視聴者と一緒にコードを書くことをしています。Jeffはワークショップ、プレゼンテーション、およびMicrosoft Build、Microsoft Ignite、.NET Conf、Microsoft MVPサミットを含む最大のMicrosoft開発者イベントのコンテンツを企画しています。
準備はできましたか?
Nuget ダウンロード 20,296,129 | バージョン: 2026.7 リリースされたばかり
Still Scrolling Icon

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

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