Chuyển đổi Trang PDF sang Hình ảnh PNG bằng C ++

PDF là định dạng phổ biến để chia sẻ và in tài liệu do bố cục nhất quán của nó. Tuy nhiên, bạn có thể rơi vào tình huống muốn tạo ảnh bìa của tệp PDF hoặc nhúng các trang của tệp đó vào một trang web. Trong những trường hợp như vậy, việc chuyển đổi tệp PDF sang định dạng hình ảnh sẽ tỏ ra hữu ích. Để đạt được mục tiêu đó, bài viết này sẽ hướng dẫn bạn cách chuyển đổi các trang PDF sang hình ảnh PNG bằng C ++.

API C ++ để chuyển đổi trang PDF sang hình ảnh PNG

Aspose.PDF dành cho C ++ là thư viện C ++ cho phép bạn tạo, đọc và cập nhật tài liệu PDF. Hơn nữa, API hỗ trợ chuyển đổi các trang PDF sang hình ảnh PNG. Bạn có thể cài đặt API thông qua NuGet hoặc tải xuống trực tiếp từ phần tải xuống.

PM> Install-Package Aspose.PDF.Cpp

Chuyển đổi Trang PDF sang Hình ảnh PNG bằng C ++

Sau đây là các bước chuyển trang PDF sang ảnh PNG.

Đoạn mã mẫu sau đây trình bày cách lưu các trang của tệp PDF dưới dạng ảnh PNG bằng C ++.

// Tải tệp PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\PDF\\Sample 1.pdf");

// Lặp lại các trang PDF
for (auto page : pdfDocument->get_Pages())
{
	// Tạo một phiên bản của lớp FileStream
	System::SharedPtr<System::IO::FileStream> imageStream = System::IO::File::Create(String::Format(u"OutputDirectory\\page_{0}.png", page->get_Number()));

	// Tạo một phiên bản của lớp Resolution
	auto resolution = MakeObject<Aspose::Pdf::Devices::Resolution>(300);

	// Tạo một phiên bản của lớp PngDevice
	auto pngDevice = MakeObject<Aspose::Pdf::Devices::PngDevice>(500, 700, resolution);

	// Lưu trang dưới dạng hình ảnh
	pngDevice->Process(page, imageStream);

	// Đóng luồng
	imageStream->Close();
}

Chuyển đổi một trang PDF thành hình ảnh PNG bằng C ++

Sau đây là các bước để chuyển đổi một trang của tệp PDF sang hình ảnh PNG.

Đoạn mã mẫu sau đây cho thấy cách chuyển đổi một trang PDF sang hình ảnh PNG bằng C ++.

// Tải tệp PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\PDF\\Sample 1.pdf");

// Lấy trang đầu tiên
auto page = pdfDocument->get_Pages()->idx_get(1);

// Tạo một phiên bản của lớp FileStream
System::SharedPtr<System::IO::FileStream> imageStream = System::IO::File::Create(String::Format(u"OutputDirectory\\page_{0}.png", page->get_Number()));

// Tạo một phiên bản của lớp Resolution
auto resolution = MakeObject<Aspose::Pdf::Devices::Resolution>(300);

// Tạo một phiên bản của lớp PngDevice
auto pngDevice = MakeObject<Aspose::Pdf::Devices::PngDevice>(500, 700, resolution);

// Lưu trang dưới dạng hình ảnh
pngDevice->Process(page, imageStream);

// Đóng luồng
imageStream->Close();

Nhận giấy phép miễn phí

Bạn có thể dùng thử API mà không có giới hạn đánh giá bằng cách yêu cầu giấy phép tạm thời miễn phí.

Sự kết luận

Trong bài viết này, bạn đã học cách chuyển đổi các trang của tệp PDF sang hình ảnh PNG bằng C ++. Bạn có thể chuyển đổi tất cả các trang hoặc các trang đã chọn của tệp PDF sang hình ảnh PNG. Aspose.PDF cho C ++ là một API mạnh mẽ với nhiều tính năng bổ sung để tự động hóa quy trình công việc liên quan đến PDF của bạn. Bạn có thể khám phá API chi tiết bằng cách truy cập tài liệu chính thức. Trong trường hợp có bất kỳ câu hỏi nào, vui lòng liên hệ với chúng tôi tại diễn đàn hỗ trợ miễn phí của chúng tôi.

Xem thêm