Image to PDF Converter(画像をPDF変換) サンプル・ソースコード
画像を PDF に変換 概要
「Image to PDF Converter」ソフトは、PDF文書を画像に変換するツールです。
価格見積り
機能
- 単一または複数ページのラスター画像をPDFに変換
- 出力の形式と適合する規格(PDF、PDF/A-1、PDF/A-2)を指定
- 画像の種類(モノクロ、グレースケールまたはカラーやインデックスの画像)それぞれ個別の圧縮方式を設定
- ミックスト・ラスター・コンテント(MRC)をサポート
- ページのサイズと切り取りを指定
- 位置(センターリング)と縮尺設定
- 暗号化、許可フラグ設定
- カラープロファイルの埋め込みと選択
- XMPメタデータ 埋め込み
- タイトルや作成者といった文書プロパティ指定
- ラスター画像を別の形式のラスタ画像(PDFではなく)に変換
- Web閲覧用にリニアライズ
- 変換のためのページ範囲指定
- 向きを指定
- 画像のコーデック情報を読み出します。
無償評価版のダウンロードとインストール
| C#開発環境 | C/C++開発環境 |
1.Zipファイルをダウンロードする場合
ライブラリ(評価版API)は無償でダウンロードできます。
ファイルをダウンロードしてから適当なフォルダーに解凍してください。
以下のようなフォルダーができあがりますので、適宜ご利用ください。
サンプルの実行前に参照設定などを行ってください。
無償評価版と共にダウンロードしたライセンスキーを bin/LicenseManager.exeを使って登録してください。
ファイルをダウンロードしてから適当なフォルダーに解凍してください。
以下のようなフォルダーができあがりますので、適宜ご利用ください。
| bin | ライブラリやライセンスマネージャーなど |
| doc | 使用説明書やjavadocなど |
| include | C/C++用のヘッダー(.h)ファイル |
| jar | I2P.jar(Javaのラッパー) |
| lib | C/C++用のlibファイル |
| samples | 各種開発言語のサンプル |
無償評価版と共にダウンロードしたライセンスキーを bin/LicenseManager.exeを使って登録してください。
2.NuGetでインストールする場合
nuget.org から PdfTools.Imge2Pdf をインストールします。
NuGetでのインストール手順
この場合は参照設定などの必要はありません。
評価用ライセンスキーは 以下のソースコードまたは、こちら から取得してください。
NuGetでのインストール手順
この場合は参照設定などの必要はありません。
評価用ライセンスキーは 以下のソースコードまたは、こちら から取得してください。
| C#開発環境 | C/C++開発環境 |
ライブラリ(評価版API)は無償でダウンロードできます。
ファイルをダウンロードしてから適当なフォルダーに解凍してください。
以下のようなフォルダーができあがりますので、適宜ご利用ください。
サンプルの実行前に参照設定などを行ってください。
無償評価版と共にダウンロードしたライセンスキーを bin/LicenseManager.exeを使って登録してください。
ファイルをダウンロードしてから適当なフォルダーに解凍してください。
以下のようなフォルダーができあがりますので、適宜ご利用ください。
| bin | ライブラリやライセンスマネージャーなど |
| doc | 使用説明書やjavadocなど |
| include | C/C++用のヘッダー(.h)ファイル |
| jar | I2P.jar(Javaのラッパー) |
| lib | C/C++用のlibファイル |
| samples | 各種開発言語のサンプル |
無償評価版と共にダウンロードしたライセンスキーを bin/LicenseManager.exeを使って登録してください。
画像をPDF/Aに変換(PDF規格を指定)
画像をPDF/A-1aに変換するサンプルです。
別の規格を指定することができます。
別の規格を指定することができます。
| C# | C/C++ | ダウンロード |
// Converter生成
pConverter = Img2PdfCreateObject();
// PDF規格を設定
Img2PdfSetCompliance(pConverter, eCompliance);
// 出力ファイルを生成
if (!Img2PdfCreate(pConverter, szOutPath, _T(""), _T(""), ePermNoEncryption))
{
_tprintf(_T("出力ファイル %s を生成できません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 入力画像をPDFのページに変換
if (!Img2PdfCreatePageFromImage(pConverter, szInPath))
{
_tprintf(_T("入力画像 %s をPDFのページとして生成できません。 %s (エラーコード: 0x%08x).\n"),
szInPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 出力ファイルをクローズ
if (!Img2PdfClose(pConverter))
{
_tprintf(_T("出力ファイル %s をクローズできません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
| C# | C/C++ | ダウンロード |
// Converter生成
using (Img2Pdf converter = new Img2Pdf())
{
// PDF規格を設定
converter.Compliance = compliance;
// 出力ファイルを生成
if (!converter.Create(outPath, "", "", PDFPermission.ePermNoEncryption))
throw new Exception(String.Format("出力ファイル {0} を生成できません。 {1} "+
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
// 入力画像をPDFのページに変換
if (!converter.CreatePageFromImage(inPath))
throw new Exception(String.Format("入力画像 {0} をPDFのページとして生成できません。 " +
"{1} (エラーコード: 0x{2:x})", inPath, converter.ErrorMessage, converter.ErrorCode));
// 出力ファイルをクローズ
if (!converter.Close())
throw new Exception(String.Format("出力ファイル {0} をクローズできません。 " +
"{1} (エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
}
画像をPDF文書に変換し、メタデータを埋め込む
JPEG画像をPDF文書に変換し、XMPメタデータを追加します。
メタデータには、作成者やタイトルなどが記します。
メタデータには、作成者やタイトルなどが記します。
| C# | C/C++ | ダウンロード |
// Converter生成
pConverter = Img2PdfCreateObject();
// 出力ファイルを生成
if (!Img2PdfCreate(pConverter, szOutPath, _T(""), _T(""), ePermNoEncryption))
{
_tprintf(_T("出力ファイル %s を生成できません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// XMPメタデータを設定
Img2PdfSetMetadata(pConverter, szMetaFile);
// 入力画像をPDFのページに変換
if (!Img2PdfCreatePageFromImage(pConverter, szInPath))
{
_tprintf(_T("入力画像 %s をPDFのページとして生成できません。 %s (エラーコード: 0x%08x).\n"),
szInPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 出力ファイルをクローズ
if (!Img2PdfClose(pConverter))
{
_tprintf(_T("出力ファイル %s をクローズできません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
| C# | C/C++ | ダウンロード |
// Converter生成
using (Img2Pdf converter = new Img2Pdf())
{
// 出力ファイルを生成
if (!converter.Create(outPath, "", "", PDFPermission.ePermNoEncryption))
throw new Exception(String.Format("出力ファイル {0} を生成できません。 {1} " +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
// XMPメタデータを設定
converter.SetMetadata(metaFile);
// 入力画像をPDFのページに変換
if (!converter.CreatePageFromImage(inPath))
throw new Exception(String.Format("入力画像 {0} をPDFのページとして生成できません。 " +
"{1} (エラーコード: 0x{2:x})", inPath, converter.ErrorMessage, converter.ErrorCode));
// 出力ファイルをクローズ
if (!converter.Close())
throw new Exception(String.Format("出力ファイル {0} をクローズできません。 " +
"{1} (エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
}
画像をPDF文書に変換(圧縮手順指定)
画像をPDF文書に変換するサンプルです。
カラー画像やグレースケール画像の圧縮手順を指定します。非可逆圧縮の際は画像品質を指定できます。
カラー画像やグレースケール画像の圧縮手順を指定します。非可逆圧縮の際は画像品質を指定できます。
| C# | C/C++ | ダウンロード |
// Converter生成
pConverter = Img2PdfCreateObject();
// 出力ファイルを生成
if (!Img2PdfCreate(pConverter, szOutPath, _T(""), _T(""), ePermNoEncryption))
{
_tprintf(_T("出力ファイル %s を生成できません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 圧縮手順を設定
Img2PdfSetContinuousCompression(pConverter, eCompression);
// 画像品質を設定
Img2PdfSetImageQuality(pConverter, iQuality);
// 入力画像をPDFのページに変換
if (!Img2PdfCreatePageFromImage(pConverter, szInPath))
{
_tprintf(_T("入力画像 %s をPDFのページとして生成できません。 %s (エラーコード: 0x%08x).\n"),
szInPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 出力ファイルをクローズ
if (!Img2PdfClose(pConverter))
{
_tprintf(_T("出力ファイル %s をクローズできません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
| C# | C/C++ | ダウンロード |
// Converter生成
using (Img2Pdf converter = new Img2Pdf())
{
// 出力ファイルを生成
if (!converter.Create(outPath, "", "", PDFPermission.ePermNoEncryption))
throw new Exception(String.Format("出力ファイル {0} を生成できません。 {1}" +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
// 圧縮手順を設定
converter.ContinuousCompression = compression;
// 画像品質を設定
converter.ImageQuality = quality;
// 入力画像をPDFのページに変換
if (!converter.CreatePageFromImage(inPath))
throw new Exception(String.Format("入力画像 {0} をPDFのページとして生成できません。 " +
"{1} (エラーコード: 0x{2:x})", inPath, converter.ErrorMessage, converter.ErrorCode));
// 出力ファイルをクローズ
if (!converter.Close())
throw new Exception(String.Format("出力ファイル {0} をクローズできません。 {1}" +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
}
画像を暗号化されたPDF文書に変換
画像を暗号化されたPDF文書に変換するサンプルです。
PDF文書を不正にアクセスできないように(ユーザーまたはオーナー)パスワードで暗号化します。ユーザーパスワードは文書の開き方や印刷を制限し、オーナーパスワードは不正なアクセスを禁止します。
PDF文書を不正にアクセスできないように(ユーザーまたはオーナー)パスワードで暗号化します。ユーザーパスワードは文書の開き方や印刷を制限し、オーナーパスワードは不正なアクセスを禁止します。
| C# | C/C++ | ダウンロード |
// Converter生成
pConverter = Img2PdfCreateObject();
// 出力ファイルを生成
if (!Img2PdfCreate(pConverter, szOutPath, szUserPW, szOwnerPW, ePermDigitalPrint | ePermPrint))
{
_tprintf(_T("出力ファイル %s を生成できません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 入力画像をPDFのページに変換
if (!Img2PdfCreatePageFromImage(pConverter, szInPath))
{
_tprintf(_T("入力画像 %s をPDFのページとして生成できません。 %s (エラーコード: 0x%08x).\n"),
szInPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 出力ファイルをクローズ
if (!Img2PdfClose(pConverter))
{
_tprintf(_T("出力ファイル %s をクローズできません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
| C# | C/C++ | ダウンロード |
// Converter生成
using (Img2Pdf converter = new Img2Pdf())
{
// 出力ファイルを生成
if (!converter.Create(outPath, userPW, ownerPW, PDFPermission.ePermDigitalPrint |
PDFPermission.ePermPrint))
throw new Exception(String.Format("出力ファイル {0} を生成できません。 {1} " +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
// 入力画像をPDFのページに変換
if (!converter.CreatePageFromImage(inPath))
throw new Exception(String.Format("入力画像 {0} をPDFのページとして生成できません。 " +
"{1} (エラーコード: 0x{2:x})", inPath, converter.ErrorMessage, converter.ErrorCode));
// 出力ファイルをクローズ
if (!converter.Close())
throw new Exception(String.Format("出力ファイル {0} をクローズできません。 {1} " +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
}
画像を文書情報を加えたPDF文書に変換
画像を文書情報(文書タイトル、作成者、作成アプリケーションなどの情報)が追加されたPDF文書に変換するサンプルです。
| C# | C/C++ | ダウンロード |
// Converter生成
pConverter = Img2PdfCreateObject();
// 出力ファイルを生成
if (!Img2PdfCreate(pConverter, szOutPath, _T(""), _T(""), ePermNoEncryption))
{
_tprintf(_T("出力ファイル %s を生成できません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 文書情報ディクショナリを設定
Img2PdfSetInfoEntry(pConverter, _T("Title"), _T("Your Title"));
Img2PdfSetInfoEntry(pConverter, _T("Author"), _T("Your Author"));
Img2PdfSetInfoEntry(pConverter, _T("Creator"), _T("Your Creator"));
Img2PdfSetInfoEntry(pConverter, _T("Subject"), _T("Your Subject"));
Img2PdfSetInfoEntry(pConverter, _T("Producer"), _T("Your Producer"));
// 入力画像をPDFのページに変換
if (!Img2PdfCreatePageFromImage(pConverter, szInPath))
{
_tprintf(_T("入力画像 %s をPDFのページとして生成できません。 %s (エラーコード: 0x%08x).\n"),
szInPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 出力ファイルをクローズ
if (!Img2PdfClose(pConverter))
{
_tprintf(_T("出力ファイル %s をクローズできません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
| C# | C/C++ | ダウンロード |
// Converter生成
using (Img2Pdf converter = new Img2Pdf())
{
// 出力ファイルを生成
if (!converter.Create(outPath, "", "", PDFPermission.ePermNoEncryption))
throw new Exception(String.Format("出力ファイル {0} を生成できません。 {1}" +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
// 文書情報ディクショナリを設定
converter.SetInfoEntry("Title", "Your Title");
converter.SetInfoEntry("Author", "Your Author");
converter.SetInfoEntry("Creator", "Your Creator");
converter.SetInfoEntry("Subject", "Your Subject");
converter.SetInfoEntry("Producer", "Your Producer");
// 入力画像をPDFのページに変換
if (!converter.CreatePageFromImage(inPath))
throw new Exception(String.Format("入力画像 {0} をPDFのページとして生成できません。 {1}" +
"(エラーコード: 0x{2:x})", inPath, converter.ErrorMessage, converter.ErrorCode));
// 出力ファイルをクローズ
if (!converter.Close())
throw new Exception(String.Format("出力ファイル {0} をクローズできません。 {1} " +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
}
画像をリニアライズされたPDF文書に変換
画像をリニアライズ(Webで素早く表示できるように最適化)されたPDF文書に変換するサンプルです。
リニアライズは2ページ以上のPDF文書で有効です。
リニアライズは2ページ以上のPDF文書で有効です。
| C# | C/C++ | ダウンロード |
// Converter生成
pConverter = Img2PdfCreateObject();
// リニアライズ設定
Img2PdfSetLinearize(pConverter, true);
// 出力ファイルを生成
if (!Img2PdfCreate(pConverter, szOutPath, _T(""), _T(""), ePermNoEncryption))
{
_tprintf(_T("出力ファイル %s を生成できません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 入力画像をPDFのページに変換
if (!Img2PdfCreatePageFromImage(pConverter, szInPath))
{
_tprintf(_T("入力画像 %s をPDFのページとして生成できません。 %s (エラーコード: 0x%08x).\n"),
szInPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 出力ファイルをクローズ
if (!Img2PdfClose(pConverter))
{
_tprintf(_T("出力ファイル %s をクローズできません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
| C# | C/C++ | ダウンロード |
// Converter生成
using (Img2Pdf converter = new Img2Pdf())
{
// リニアライズ設定
converter.Linearize = true;
// 出力ファイルを生成
if (!converter.Create(outPath, "", "", PDFPermission.ePermNoEncryption))
throw new Exception(String.Format("出力ファイル {0} を生成できません {1} " +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
// 入力画像をPDFのページに変換
if (!converter.CreatePageFromImage(inPath))
throw new Exception(String.Format("入力画像 {0} をPDFのページとして生成できません。 {1}" +
"(エラーコード: 0x{2:x})", inPath, converter.ErrorMessage, converter.ErrorCode));
// 出力ファイルをクローズ
if (!converter.Close())
throw new Exception(String.Format("出力ファイル {0} をクローズできません。 {1} " +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
}
指定して画像を指定ページサイズのPDF文書に変換
画像を指定されたページサイズのPDF文書に変換するサンプルです。
PDF文書の各ページサイズはPageディクショナリに記載されます。
PDF文書の各ページサイズはPageディクショナリに記載されます。
| C# | C/C++ | ダウンロード |
// Converter生成
pConverter = Img2PdfCreateObject();
// PDF文書のページサイズ設定
Img2PdfSetPageSize(pConverter, fWidth, fHeight);
// 出力ファイルを生成
if (!Img2PdfCreate(pConverter, szOutPath, _T(""), _T(""), ePermNoEncryption))
{
_tprintf(_T("出力ファイル %s を生成できません。 %s (エラーコード: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 入力画像をPDFのページに変換
if (!Img2PdfCreatePageFromImage(pConverter, szInPath))
{
_tprintf(_T("入力画像 %s をPDFのページとして生成できません。 %s (エラーコード: 0x%08x).\n"),
szInPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
// 出力ファイルをクローズ
if (!Img2PdfClose(pConverter))
{
_tprintf(_T("出力ファイル %s をクローズできません。 %s (ErrorCode: 0x%08x).\n"),
szOutPath, Img2PdfGetErrorMessage(pConverter), Img2PdfGetErrorCode(pConverter));
iReturnValue = 1;
goto cleanup;
}
| C# | C/C++ | ダウンロード |
// Converter生成
using (Img2Pdf converter = new Img2Pdf())
{
// PDF文書のページサイズ設定
converter.SetPageSize(width, height);
// 出力ファイルを生成
if (!converter.Create(outPath, "", "", PDFPermission.ePermNoEncryption))
throw new Exception(String.Format("出力ファイル {0} を生成できません。 {1} " +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
// 入力画像をPDFのページに変換
if (!converter.CreatePageFromImage(inPath))
throw new Exception(String.Format("入力画像 {0} をPDFのページとして生成できません。 " +
"{1} (エラーコード: 0x{2:x})", inPath, converter.ErrorMessage, converter.ErrorCode));
// 出力ファイルをクローズ
if (!converter.Close())
throw new Exception(String.Format("出力ファイル {0} をクローズできません。 {1} " +
"(エラーコード: 0x{2:x})", outPath, converter.ErrorMessage, converter.ErrorCode));
}