1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

.NETでC#を使用してPDFをHTMLに変換する方法

Posted at

HTMLはオープンスタンダードのウェブマークアップ言語であり、クロスプラットフォーム対応、簡単な閲覧、検索エンジンに優しい特性を備えています。このため、コンテンツを多くのデバイスで簡単にアクセスできるようにし、オンラインでの共有やインタラクションを最適化します。PDFファイルをHTML形式に変換することで、PDFの内容をブラウザで手軽に表示でき、より複雑なHTMLページへの統合も簡単になります。C#を使って.NETフレームワークでこれを実現すれば、高速な変換や自動化も可能です。本記事では、.NETフレームワークを使用してC#でPDFファイルをHTML形式に変換する方法を紹介します。

使用するツールは無料のFree Spire.PDF for .NETです。インストールは以下のコマンドで行います:

Install-Package FreeSpire.PDF

記事で使用したPDF文書の例:
C#を使用してPDFをHTMLに変換

C#でPDFをHTML形式に直接変換する方法

PdfDocument.LoadFromFile()メソッドを使用してPDFファイルを読み込み、その後PdfDocument.SaveToFile(string: fileName, FileFormat.HTML)メソッドでHTMLファイルとして保存します。操作手順は以下の通りです:

  1. 必要なモジュールをインポートする。
  2. PdfDocumentインスタンスを作成し、PdfDocument.LoadFromFile()でPDFファイルを読み込む。
  3. PdfDocument.SaveToFile(string: fileName, FileFormat.HTML)でHTML形式に変換して保存する。
  4. リソースを解放する。

コード例

using Spire.Pdf;

namespace PDFToHTML
{
    class Program
    {
        static void Main(string[] args)
        {
            // PdfDocumentインスタンスを作成
            PdfDocument pdf = new PdfDocument();

            // PDFファイルを読み込む
            pdf.LoadFromFile("Sample.pdf");

            // PDFをHTMLに変換して保存
            pdf.SaveToFile("output/PDFToHTML.html", FileFormat.HTML);

            // リソースを解放する
            pdf.Dispose();
        }
    }
}

実行結果
C#でPDFをHTML形式に直接変換

PDFをHTMLに変換する際のカスタムオプション設定

PDFを読み込んだ後、PdfDocument.ConvertOptionsプロパティを使用してPdfConvertOptionsインスタンスを取得し、PdfConvertOptions.SetPdfToHtmlOptions()メソッドで変換オプションを設定します。このメソッドには以下の4つのパラメータがあります:

  • bool: SVGをHTMLに埋め込むかどうか
  • bool: 画像をHTMLに埋め込むかどうか
  • int: 単一ファイルの最大ページ数
  • bool: 高品質のSVGを使用するかどうか

操作手順は以下の通りです:

  1. 必要なモジュールをインポートする。
  2. PdfDocumentインスタンスを作成し、PdfDocument.LoadFromFile()でPDFファイルを読み込む。
  3. PdfDocument.ConvertOptionsプロパティを利用してPdfConvertOptionsを取得する。
  4. PdfConvertOptions.SetPdfToHtmlOptions()を使用してオプションを設定する。
  5. PdfDocument.SaveToFile(string: fileName, FileFormat.HTML)でHTML形式に変換して保存する。
  6. リソースを解放する。

コード例

using Spire.Pdf;

namespace PDFToHTML
{
    class Program
    {
        static void Main(string[] args)
        {
            // PdfDocumentインスタンスを作成
            PdfDocument pdf = new PdfDocument();

            // PDFファイルを読み込む
            pdf.LoadFromFile("Sample.pdf");

            // ConvertOptionsプロパティにアクセス
            PdfConvertOptions toHtmlOptions = pdf.ConvertOptions;

            // HTML変換オプションを設定
            toHtmlOptions.SetPdfToHtmlOptions(false, true, 5, false);

            // PDFをHTMLに変換して保存
            pdf.SaveToFile("output/PDFToHTML.html", FileFormat.HTML);

            // リソースを解放する
            pdf.Dispose();
        }
    }
}

実行結果
PDFをHTMLに変換する際のカスタムオプション設定

ストリームを使用してPDFをHTMLに変換する方法

ディスクからPDFファイルを読み込んで変換するだけでなく、PdfDocument.LoadFromStream()メソッドを使用してストリームから直接PDFを読み込み、PdfDocument.SaveToStream(Stream: stream, FileFormat.HTML)でHTML形式のストリームに変換することも可能です。操作手順は以下の通りです:

  1. 必要なモジュールをインポートする。
  2. MemoryStreamインスタンスを作成する、または既存のインスタンスを使用する。
  3. PdfDocumentインスタンスを作成し、PdfDocument.LoadFromStream()でストリームからPDFを読み込む。
  4. PdfDocument.SaveToStream(Stream: stream, FileFormat.HTML)でHTML形式のストリームに変換する。
  5. ストリームをファイルに書き込むか、他の用途に利用する。
  6. リソースを解放する。

コード例

using Spire.Pdf;

namespace PDFToHTML
{
    class Program
    {
        static void Main(string[] args)
        {
            // Streamインスタンスを作成するか、既存のインスタンスを使用
            MemoryStream stream = new MemoryStream();
            File.OpenRead("Sample.pdf").CopyTo(stream);

            // PdfDocumentインスタンスを作成
            PdfDocument pdf = new PdfDocument();

            // ストリームからPDFファイルを読み込む
            pdf.LoadFromStream(stream);

            // PDFをHTMLに変換し、ストリームに保存
            pdf.SaveToStream(stream, FileFormat.HTML);
            
            // ストリームをファイルに書き込むか、必要に応じて他の操作を実行
            File.WriteAllBytes("output/PDFToHTMLStream.html", stream.ToArray());

            // リソースを解放する
            pdf.Dispose();
        }
    }
}

実行結果
ストリームを使用してPDFをHTMLに変換

本記事では、.NETフレームワークを使用してC#でPDFをHTML形式に変換する方法を、具体的な手順とコード例を交えて解説しました。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?