C#でPDFファイルを画像に変換
Aimen Fatima
2023年10月12日
Csharp
Csharp PDF
Csharp Image
- PDFから画像へのコンバーター
- PDFium パッケージを使用して C# で PDF ファイルを画像に変換する
- Syncfusion パッケージを使用して C# で PDF ファイルを画像に変換する
- PDFRasterizer を使用して C# で PDF ファイルを画像に変換する
この記事では、C# での PDF ファイルの画像への変換について説明します。
PDFファイルを画像に変換する2つの方法を探ります。 詳しく説明するために、C# プロジェクトを段階的に作成し、すべてのコード スニペットを提供します。
PDFから画像へのコンバーター
C# を使用して PDF ファイルを画像に変換する方法は複数あります。 サードパーティのアセンブリを使用して、コンバーターを作成したり、独自のコンバーターを作成したりできます。
2つの異なるアセンブリを使用して、PDF ファイルを画像に変換するコンバーターを作成します。 これらは:
- PDFium
- シンクロフュージョン
これら 2つの NuGet パッケージは、nuget.org からプロジェクトにインストールできます。 これらのパッケージを段階的にインストールするための C# プロジェクトとガイドを作成しましょう。
PDFium パッケージを使用して C# で PDF ファイルを画像に変換する
-
Visual Studio で
コンソール アプリケーションを作成します。 これらのパッケージをインストールして操作するには、Visual Studio 2019 以降をお勧めします。
-
ProjectタブをクリックしてManage NuGet Packagesを選択するか、ToolsタブをクリックしてNuGet Package Managerを選択し、Manage NuGet Packages for Solutionを選択します。

-
Browseタブを選択し、Package Sourceをnuget.orgに設定します。 -
Package Sourceウィンドウにnuget.orgが見つからないとします。設定タブをクリックして追加します。+アイコンをクリックして、画像に表示されている名前とソースを入力します。
-
検索バーに
PDFiumと入力します。 PdfiumViewer、PdfiumViewer.Native.x86.v8-xfa、および PDFium.x86 をインストールします。

-
これらのパッケージをインストールすると、PdfiumViewer への参照が
参照ウィンドウで利用できるようになります。 プロジェクト ディレクトリにSamplesという名前のフォルダーを作成し、変換する PDF ファイルをこのフォルダーに配置します。
-
System.Drawingへの参照を追加して、このアセンブリをプロジェクトにインポートします。Solution ExplorerウィンドウのReferencesタブを右クリックし、Add Referenceを選択し、Frameworkに移動して、System.Drawingを選択します。

-
Program.csファイルに次のコード スニペットを追加します。 要件に応じて、入力および出力ファイル名をカスタマイズできます。 -
このコード スニペットは、単一ページと複数ページのドキュメントを変換します。 コードを実行した後、PDF ファイルは画像に変換されます (各 PDF ファイル ページは画像として)。
using PdfiumViewer; using System; using System.Drawing.Imaging; using System.IO; using System.Linq; namespace PdfToImage { class Program { static void Main(string[] args) { var projectDirectory = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName; try { using (var document = PdfDocument.Load(projectDirectory + @"\Samples\document.pdf")) { var pageCount = document.PageCount; for (int i = 0; i < pageCount; i++) { var dpi = 300; using (var image = document.Render(i, dpi, dpi, PdfRenderFlags.CorrectFromDpi)) { var encoder = ImageCodecInfo.GetImageEncoders().First(c => c.FormatID == ImageFormat.Jpeg.Guid); var encoderParams = new EncoderParameters(1); encoderParams.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 100L); image.Save(projectDirectory + @"\Samples\image_" + i + ".jpg", encoder, encoderParams); } } } } catch (Exception ex) { Console.WriteLine(ex.Message); } Console.WriteLine("Pdf converted to images. Press any key to exit..."); Console.ReadKey(); } } } -
DLL 'pdfium.dll' に 'FPDF_AddRef' という名前のエントリ ポイントが見つかりませんという例外が発生した場合は、ビルド設定でターゲット プラットフォームを変更する必要があります。 -
Buildタブに移動し、システムに応じてプラットフォーム ターゲット (x86 または x64) を選択します。Buildの下にプラットフォーム ターゲットが見つからない場合は、Projectタブを選択し、プロジェクト プロパティを選択して、Buildの下でプラットフォーム ターゲットを見つけます。

Syncfusion パッケージを使用して C# で PDF ファイルを画像に変換する
-
上記の手順 1 に従って、Visual Studio 2019 以降のバージョンで
コンソール アプリケーションを作成します。 -
上記のセクションで説明した手順 2 と 3 に従って、NuGet.org から Syncfusion パッケージを参照します。
-
Syncfusion.pdfViewer.Windowsパッケージを検索してインストールします。
-
上記の手順 6 に従って、
System.DrawingとSystem.Windows.Formsへの参照を追加します。
-
次のコード スニペットを
Program.csファイルにコピーして、PDF ファイルの 1 ページを画像に変換します。forループを使用して、複数ページの変換用にカスタマイズできます。 -
必要に応じて、入力ファイル名と出力ファイル名をカスタマイズします。
ExportAsImage()メソッドで適切なパラメーターを渡すことにより、変換する特定のページを選択できます。using Syncfusion.Pdf.Parsing; using Syncfusion.Windows.Forms.PdfViewer; using System.Drawing; using System.Drawing.Imaging; using System.Linq; using System.Text; using System.Threading.Tasks; namespace PDFToJPEG { class Program { static void Main(string[] args) { // Initialize the PdfViewer Control PdfViewerControl pdfViewer = new PdfViewerControl(); // Load the input PDF file PdfLoadedDocument document = new PdfLoadedDocument("../../Data/document.pdf"); pdfViewer.Load(document); Bitmap image = pdfViewer.ExportAsImage(0); // Save the image. image.Save("output.jpg", ImageFormat.Jpeg); } } }プロジェクト ディレクトリ ->bin ->Debug に移動して、出力イメージ ファイルを見つけます。
PDFRasterizer を使用して C# で PDF ファイルを画像に変換する
PDFRasterizer は、PDF ファイルを C# で開発された画像に変換するツールです。 Windows フォームを使用した GUI を提供します。
ソースコードをダウンロードして、エラーなく使用できます。 PDFRasterizer に移動してコンポーネントをダウンロードします。
チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe