チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

チュートリアル»C++»Spire.PDF for C++»変換»C++:PDF を画像に変換する
2023-03-27

C++:PDF を画像に変換する

PDF 形式は多くの場合に適していますが、画像に変換する必要がある場合もあります。PDF を画像に変換することで、ソーシャルメディアに公開したり、画像表示しかできないデバイスにアップロード・転送することができます。また、Word ドキュメントや PowerPoint プレゼンテーションにも埋め込むことが可能です。この記事では、Spire.PDF for C++ を使用して C++ で PDF を画像に変換する方法について説明します。

Spire.PDF for C++ をインストールします

Spire.PDF for C++ をアプリケーションに組み込むには、2つの方法があります。一つは NuGet 経由でインストールする方法、もう一つは当社のウェブサイトからパッケージをダウンロードし、ライブラリをプログラムにコピーする方法です。NuGet 経由のインストールの方が便利で、より推奨されます。詳しくは、以下のリンクからご覧いただけます。

Spire.PDF for C++ を C++ アプリケーションに統合する方法

特定のページを画像に変換する

Spire.PDF for C++ の PdfDocument->SaveAsImage(int pageIndex) メソッドは特定のページを画像ストリームに変換することをサポートします。ストリームは、PNG、JPG、BMP などの目的の拡張子を持つ画像ファイルとして保存できます。詳細な手順は次のとおりです。

  • PdfDocument インスタンスを作成します。
  • PdfDocument->LoadFromFile() メソッドを使用して PDF ファイルをロードします。
  • PdfDocument->SaveAsImage() メソッドを使用して、特定のページを画像ストリームに変換します。
  • Stream->Save() メソッドを使用して、画像ストリームを JPG ファイルとして保存します。
  • C++
#include "Spire.Pdf.o.h";

using namespace Spire::Pdf;
using namespace std;

int main() {

	//入力と出力のパスを指定する
	wstring inputFile = L"C:\\Users\\Administrator\\Desktop\\sample.pdf";
	wstring outputFile = L"C:\\Users\\Administrator\\Desktop\\Output\\ToImage";

	//PdfDocumentオブジェクトを作成する
	PdfDocument* doc = new PdfDocument();

	//PDFファイルをロードする
	doc->LoadFromFile(inputFile.c_str());

	//特定のページを画像に変換する
	Stream* image = doc->SaveAsImage(0, PdfImageType::Bitmap);

	//画像を.jpgファイルに書き込む
	wstring fileName = outputFile + L".jpg";
	image->Save(fileName.c_str());

	doc->Close();
	delete doc;
}

C++:PDF を画像に変換する

PDF 全体を複数の画像に変換する

PDF 全体を個別の画像として保存するには、変換部分をループ文に入れるだけです。以下に詳細な手順を示します。

  • PdfDocument インスタンスを作成します。
  • PdfDocument->LoadFromFile() メソッドを使用して PDF ファイルをロードします。
  • ファイル内のページをループし、PdfDocument->SaveAsImage(int pageIndex) メソッドを使用して各ページを画像ストリームに変換します。
  • Stream->Save() メソッドを使用して、画像ストリームを JPG ファイルとして保存します。
  • C++
#include "Spire.Pdf.o.h";

using namespace Spire::Pdf;
using namespace std;

int main() {

	//入力と出力のパスを指定する
	wstring inputFile = L"C:\\Users\\Administrator\\Desktop\\sample.pdf";
	wstring outputFile = L"C:\\Users\\Administrator\\Desktop\\Output\\ToImg-";

	//PdfDocumentオブジェクトを作成する
	PdfDocument* doc = new PdfDocument();

	//PDFファイルをロードする
	doc->LoadFromFile(inputFile.c_str());

	//ファイルのページをループする
	for (int i = 0; i < doc->GetPages()->GetCount(); i++) {

		//特定のページを画像として保存
		Stream* image = doc->SaveAsImage(i);

		//画像を.jpgファイルに書き込む
		wstring fileName = outputFile + to_wstring(i) + L".jpg";
		image->Save(fileName.c_str());
	}
	doc->Close();
	delete doc;
}

C++:PDF を画像に変換する

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Read 475 times