.NETでさまざまな画像形式をPDFに変換する
概要
この記事では、C#を使用してさまざまな画像形式をPDFに変換する方法について説明します。次のトピックをカバーしています。
以下のコードスニペットは、Aspose.PDF.Drawing ライブラリでも動作します。
形式: BMP
形式: CGM
形式: DICOM
形式: EMF
形式: GIF
形式: JPG
形式: PNG
形式: SVG
形式: TIFF
その他のこの記事で扱われているトピック
C# 画像からPDFへの変換
Aspose.PDF for .NET では、さまざまな形式の画像をPDFファイルに変換することができます。当社のライブラリでは、BMP、CGM、DICOM、EMF、JPG、PNG、SVG、TIFF形式など、最も人気のある画像形式の変換についてのコードスニペットを示しています。
BMPをPDFに変換
Aspose.PDF for .NET ライブラリを使用して、BMPファイルをPDFドキュメントに変換します。
BMP 画像は、拡張子が.BMPのファイルです。BMPはビットマップ画像ファイルを表し、ビットマップデジタル画像を保存するために使用されます。これらの画像はグラフィックアダプターに依存せず、デバイス非依存ビットマップ(DIB)ファイル形式とも呼ばれます。 Aspose.PDF for .NET APIを使用して、BMPをPDFファイルに変換することができます。したがって、以下の手順に従ってBMP画像を変換できます:
- 入力BMP画像を読み込む。
- 最終的に出力PDFファイルを保存する。
以下のコードスニペットは、これらのステップに従ってBMPをPDFに変換する方法を示しています(C#使用):
//空のPDFドキュメントを初期化
using (Document pdfDocument = new Document())
{
pdfDocument.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
// サンプルBMP画像ファイルを読み込む
image.File = dataDir + "Sample.bmp";
pdfDocument.Pages[1].Paragraphs.Add(image);
// 出力PDFドキュメントを保存
pdfDocument.Save(dataDir + "BMPtoPDF.pdf");
}
CGMをPDFに変換
CGMは、CAD(コンピュータ支援設計)やプレゼンテーショングラフィックスアプリケーションで一般的に使用されるコンピュータグラフィックスメタファイル形式のファイル拡張子です。 CGMは、CAD(コンピュータ支援設計)やプレゼンテーショングラフィックスアプリケーションで一般的に使用されるコンピュータグラフィックスメタファイル形式のファイル拡張子です。
次のコードスニペットは、CGMファイルをPDF形式に変換する方法を示しています。
- CgmLoadOptions クラスのインスタンスを作成します。
- ソースファイル名とオプションを指定して Document クラスのインスタンスを作成します。
- 希望のファイル名でドキュメントを保存します。
public static void ConvertCGMtoPDF()
{
CgmLoadOptions option = new CgmLoadOptions();
Document pdfDocument = new Document(_dataDir+"corvette.cgm", option);
pdfDocument.Save(_dataDir+"CGMtoPDF.pdf");
}
DICOMをPDFに変換
DICOM形式は、検査された患者のデジタル医療画像や文書の作成、保存、転送、および可視化のための医療業界標準です。 DICOM形式は、検査された患者のデジタル医療画像および文書の作成、保存、転送、および視覚化のための医療業界の標準です。
Aspsoe.PDF for .NET は DICOM および SVG 画像を変換することができますが、技術的な理由から画像をPDFに追加するためには、追加するファイルのタイプを指定する必要があります:
- Image クラスのオブジェクトを作成します。
- 画像をページの Paragraphs コレクションに追加します。
- FileType プロパティを指定します。
- ファイルのパスまたはソースを指定します。
- 画像がハードドライブ上の場所にある場合は、Image.File プロパティを使用してパスの場所を指定します。
- 画像がMemoryStreamに配置されている場合は、画像を保持するオブジェクトを Image.ImageStream プロパティに渡します。
次のコードスニペットは、Aspose.PDF を使用して DICOM ファイルを PDF 形式に変換する方法を示しています。 以下のコードスニペットは、DICOMファイルをPDF形式に変換する方法を示しています。
private const string _dataDir = "..\\..\\..\\..\\Samples";
// DICOM画像をPDFに変換するためにImageクラスを使用
public static void ConvertDICOMtoPDF()
{
// Documentオブジェクトのインスタンスを作成
Document pdfDocument = new Document();
// ドキュメントのページコレクションにページを追加
Page page = pdfDocument.Pages.Add();
Image image = new Image
{
FileType = ImageFileType.Dicom,
File = System.IO.Path.Combine(_dataDir,"bmode.dcm")
};
pdfDocument.Pages[1].Paragraphs.Add(image);
// 出力をPDF形式で保存
pdfDocument.Save(System.IO.Path.Combine(_dataDir,"PDFWithDicomImage_out.pdf"));
}
DICOMをPDFにオンラインで変換してみましょう
Asposeが無料のアプリケーション“DICOM to PDF”を提供しています。ここで機能の確認と品質を試すことができます。
EMFをPDFに変換する
EMFEMFはグラフィカルイメージをデバイスに依存しない形式で保存します。EMFのメタファイルは、任意の出力デバイスで解析後に保存された画像をレンダリングできる時系列順の可変長レコードで構成されています。さらに、以下の手順でEMFをPDFイメージに変換できます:
- まず、Document クラスオブジェクトを初期化します。
- EMF イメージファイルを読み込みます。
- 読み込んだEMFイメージをページに追加します。
- PDFドキュメントを保存します。
さらに、以下のコードスニペットは、C#を使用して.NETのコードスニペットでEMFをPDFに変換する方法を示しています:
// 新しいPDFドキュメントを初期化
var doc = new Document();
// 入力EMFイメージファイルのパスを指定
var imageFile = dataDir + "drawing.emf";
var page = doc.Pages.Add();
string file = imageFile;
FileStream filestream = new FileStream(file, FileMode.Open, FileAccess.Read);
BinaryReader reader = new BinaryReader(filestream);
long numBytes = new FileInfo(file).Length;
byte[] bytearray = reader.ReadBytes((int)numBytes);
Stream stream = new MemoryStream(bytearray);
var b = new Bitmap(stream);
// ページ寸法のプロパティを指定
page.PageInfo.Margin.Bottom = 0;
page.PageInfo.Margin.Top = 0;
page.PageInfo.Margin.Left = 0;
page.PageInfo.Margin.Right = 0;
page.PageInfo.Width = b.Width;
page.PageInfo.Height = b.Height;
var image = new Aspose.Pdf.Image();
image.File = imageFile;
page.Paragraphs.Add(image);
// 出力PDFドキュメントを保存
doc.Save(dataDir + "EMFtoPDF.pdf");
GIFをPDFに変換
Aspose.PDF for .NET ライブラリを使用してGIFファイルをPDFドキュメントに変換します。
GIFは、256色以下のフォーマットで品質の損失なくデータを圧縮して保存できます。ハードウェアに依存しないGIF形式は、1987年(GIF87a)にCompuServeによってネットワーク上でビットマップ画像を送信するために開発されました。 Aspose.PDF for .NET APIを使用してGIFをPDFファイルに変換できます。したがって、以下の手順に従ってGIF画像を変換できます:
- GIF 画像を読み込む。
- 最終的に、出力PDFファイルを保存する。
以下のコードスニペットは、これらのステップに従い、C#を使用してBMPをPDFに変換する方法を示しています:
//空のPDFドキュメントを初期化
using (Document pdfDocument = new Document())
{
pdfDocument.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
// サンプルGIF画像ファイルを読み込む
image.File = dataDir + "Sample.gif";
pdfDocument.Pages[1].Paragraphs.Add(image);
// 出力PDFドキュメントを保存
pdfDocument.Save(dataDir + "GIFtoPDF.pdf");
}
JPGをPDFに変換
JPGをPDFに変換する方法を知る必要はありません。なぜなら、Apose.PDF for .NET ライブラリが最良の解決策を提供しているからです。 JPGをPDFに変換する方法を考える必要はありません。なぜなら、Apose.PDF for .NET ライブラリが最適な解決策を持っているからです。
次の手順に従って、Aspose.PDF for .NETを使用してJPG画像をPDFに簡単に変換できます:
- Document クラスのオブジェクトを初期化します。
- PDFドキュメントに新しいページを追加します。
- JPG 画像を読み込んで段落に追加します。
- 出力PDFを保存します。
以下のコードスニペットは、C#を使用してJPG画像をPDFに変換する方法を示しています:
// Load input JPG file
String path = dataDir + "Aspose.jpg";
// Initialize new PDF document
Document doc = new Document();
// Add empty page in empty document
Page page = doc.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
image.File = (path);
// Add image on a page
page.Paragraphs.Add(image);
// Save output PDF file
doc.Save(dataDir + "ImagetoPDF.pdf");
次に、ページの同じ高さと幅で画像をPDFに変換する方法を示します。 画像をページの同じ高さと幅でPDFに変換する方法を以下に示します。
- 入力画像ファイルを読み込む
- 画像の高さと幅を取得する
- ページの高さ、幅、マージンを設定する
- 出力PDFファイルを保存する
以下のコードスニペットは、C#を使用して画像を同じページの高さと幅のPDFに変換する方法を示しています:
// 入力JPG画像ファイルを読み込む
String path = dataDir + "Aspose.jpg";
System.Drawing.Image srcImage = System.Drawing.Image.FromFile(path);
// 入力画像の高さを読み取る
int h = srcImage.Height;
// 入力画像の幅を読み取る
int w = srcImage.Width;
// 新しいPDFドキュメントを初期化する
Document doc = new Document();
// 空のページを追加する
Page page = doc.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
image.File = (path);
// ページの寸法とマージンを設定する
page.PageInfo.Height = (h);
page.PageInfo.Width = (w);
page.PageInfo.Margin.Bottom = (0);
page.PageInfo.Margin.Top = (0);
page.PageInfo.Margin.Right = (0);
page.PageInfo.Margin.Left = (0);
page.Paragraphs.Add(image);
// 出力PDFファイルを保存する
doc.Save(dataDir + "ImagetoPDF_HeightWidth.pdf");
PNGをPDFに変換
Aspose.PDF for .NETは、PNG画像をPDF形式に変換する機能をサポートしています。次のコードスニペットでタスクを実現する方法を確認してください。
PNGは、ロスレス圧縮を使用するラスター画像ファイル形式の一種で、そのためユーザーに人気があります。
以下の手順でPNGをPDF画像に変換できます:
- 入力PNG画像を読み込む。
- 高さと幅の値を読み取る。
ページの寸法を設定します。 出力ファイルを保存します。
以下のコードスニペットは、C#を使用して.NETアプリケーションでPNGをPDFに変換する方法を示しています:
// 入力PNGファイルをロード
String path = dataDir + "Aspose.png";
System.Drawing.Image srcImage = System.Drawing.Image.FromFile(path);
int h = srcImage.Height;
int w = srcImage.Width;
// 新しいドキュメントを初期化
Document doc = new Document();
Page page = doc.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
image.File = (path);
// ページの寸法を設定
page.PageInfo.Height = (h);
page.PageInfo.Width = (w);
page.PageInfo.Margin.Bottom = (0);
page.PageInfo.Margin.Top = (0);
page.PageInfo.Margin.Right = (0);
page.PageInfo.Margin.Left = (0);
page.Paragraphs.Add(image);
// 出力PDFを保存
doc.Save(dataDir + "ImagetoPDF.pdf");
オンラインでPNGをPDFに変換してみてください
Asposeは無料のオンラインアプリケーション“PNG to PDF”を提供しています。ここで機能性と品質を試すことができます。
Asposeは、無料のオンラインアプリケーション “PNG to PDF” を提供しています。ここで、機能と品質を調査することができます。
SVGをPDFに変換する
Aspose.PDF for .NET は、SVG画像をPDF形式に変換する方法と、ソースSVGファイルの寸法を取得する方法を説明します。
Scalable Vector Graphics (SVG) は、二次元ベクターグラフィックスのためのXMLベースのファイル形式の仕様ファミリーです。これには静的なものも動的なもの(インタラクティブまたはアニメーション)も含まれます。SVG仕様は、1999年からWorld Wide Web Consortium (W3C) によって開発が進められているオープンスタンダードです。
SVG画像とその動作は、XMLテキストファイルで定義されています。
SVG画像とその挙動はXMLテキストファイルで定義されています。
SVGファイルをPDFに変換するには、[`LoadOptions`](https://reference.aspose.com/pdf/net/aspose.pdf/loadoptions)オブジェクトの初期化に使用される[SvgLoadOptions](https://reference.aspose.com/net/pdf/aspose.pdf/svgloadoptions)というクラスを使用します。その後、このオブジェクトはDocumentオブジェクトの初期化時に引数として渡され、PDFレンダリングエンジンがソースドキュメントの入力形式を判断するのに役立ちます。
<a name="csharp-svg-to-pdf" id="csharp-svg-to-pdf"><strong>手順: C#でSVGをPDFに変換する</strong></a>
1.
1.
2. [`Document`](https://reference.aspose.com/pdf/net/aspose.pdf/document) クラスのインスタンスを作成します。指定したファイル名とオプションを使用します。
3. 希望のファイル名でドキュメントを保存します。
以下のコードスニペットは、Aspose.PDF for .NETを使用してSVGファイルをPDF形式に変換するプロセスを示しています。
```csharp
public static void ConvertSVGtoPDF()
{
SvgLoadOptions option = new SvgLoadOptions();
Document pdfDocument= new Document(_dataDir + "car.svg", option);
pdfDocument.Save(_dataDir + "svgtest.pdf");
}
SVGの寸法を取得する
ソースSVGファイルの寸法を取得することも可能です。この情報は、出力PDFの全ページにSVGを表示させたい場合に役立ちます。ScgLoadOptionクラスのAdjustPageSizeプロパティがこの要件を満たします。このプロパティのデフォルト値はfalseです。値をtrueに設定すると、出力PDFはソースSVGと同じサイズ(寸法)になります。
以下のコードスニペットは、ソースSVGファイルの寸法を取得し、PDFファイルを生成するプロセスを示しています。 以下のコードスニペットは、ソースSVGファイルの寸法を取得し、PDFファイルを生成するプロセスを示しています。
public static void ConvertSVGtoPDF_Advanced()
{
// 完全な例とデータファイルについては、https://github.com/aspose-pdf/Aspose.PDF-for-.NET をご覧ください
// ドキュメントディレクトリへのパスです。
string dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
var loadopt = new SvgLoadOptions();
loadopt.AdjustPageSize = true;
var svgDoc = new Document(dataDir + "GetSVGDimensions.svg", loadopt);
svgDoc.Pages[1].PageInfo.Margin.Top = 0;
svgDoc.Pages[1].PageInfo.Margin.Left = 0;
svgDoc.Pages[1].PageInfo.Margin.Bottom = 0;
svgDoc.Pages[1].PageInfo.Margin.Right = 0;
svgDoc.Save(dataDir + "GetSVGDimensions_out.pdf");
}
SVG対応機能
SVGタグ |
使用例 |
|
---|---|---|
円 |
|
|
定義 |
<defs>
|
プラットフォーム | サポート | コメント |
---|---|---|
Windows .NET Framework | 2.0-4.6 | |
Windows .NET Core | 2.0-3.1 | |
.NET 5 Windows | ||
Linux .NET Core | 2.0-3.1 | |
.NET 5 Linux |
参照
この記事では、上記と同じコードを使用して、以下のトピックについても説明しています。
形式: BMP
- C# BMP to PDF Code
- C# BMP to PDF API
- C# BMP to PDF Programmatically
- C# BMP to PDF Library
- C# Save BMP as PDF
- C# Generate PDF from BMP
- C# Create PDF from BMP
- C# BMP to PDF Converter
形式: CGM
- C# CGM to PDF Code
- C# CGM to PDF API
- C# CGM to PDF Programmatically
- C# CGM to PDF Library
- C# Save CGM as PDF
- C# Generate PDF from CGM
- C# Create PDF from CGM
- C# CGM to PDF Converter
- C# CGM to PDF Converter
形式: DICOM
- C# DICOMからPDFへのコード
- C# DICOMからPDFへのAPI
- C# DICOMからPDFへプログラム的に
- C# DICOMからPDFへのライブラリ
- C# DICOMをPDFとして保存
- C# DICOMからPDFを生成
- C# DICOMからPDFを作成
- C# DICOMからPDFへのコンバータ
形式: EMF