การทำงานกับรูปภาพในไฟล์ PDF โดยใช้ C++

รูปภาพสามารถใช้เพื่อแสดงสิ่งต่างๆ มากมายตั้งแต่ภาพถ่ายผลิตภัณฑ์ไปจนถึงเวิร์กโฟลว์และแผนผังลำดับงาน ไฟล์ PDF สามารถมีรูปภาพตามประเภทของข้อมูลที่มี ตัวอย่างเช่น คู่มือการติดตั้งเก้าอี้จะมีรูปภาพของเก้าอี้ที่สาธิตวิธีการประกอบ อาจมีสถานการณ์ที่คุณต้องจัดการรูปภาพในไฟล์ PDF โดยทางโปรแกรม ในกรณีดังกล่าว บทความนี้จะสอนวิธีทำงานกับรูปภาพในไฟล์ PDF โดยใช้ C++ โดยเฉพาะอย่างยิ่ง เราจะพูดถึงวิธีการเพิ่ม แทนที่ แยกและลบรูปภาพใน PDF โดยใช้ C++

C++ API เพื่อเพิ่ม อัปเดต ลบ และแทนที่รูปภาพ PDF

Aspose.PDF for C++ เป็นไลบรารี C++ ที่มีประสิทธิภาพซึ่งช่วยให้คุณสร้าง อ่าน และแก้ไขไฟล์ PDF นอกจากนี้ API ยังรองรับการทำงานกับรูปภาพในเอกสาร PDF คุณสามารถติดตั้ง API ผ่าน NuGet หรือดาวน์โหลดโดยตรงจากส่วน ดาวน์โหลด

PM> Install-Package Aspose.PDF.Cpp

เพิ่มรูปภาพไปยังไฟล์ PDF ใน C ++

ต่อไปนี้เป็นขั้นตอนในการเพิ่มรูปภาพลงในไฟล์ PDF

โค้ดตัวอย่างต่อไปนี้แสดงวิธีเพิ่มรูปภาพลงในไฟล์ PDF โดยใช้ C++

// โหลดไฟล์ PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\PDF\\Sample 1.pdf");

// ดึงหน้าแรก
auto page = pdfDocument->get_Pages()->idx_get(1);

// สร้างตัวอย่างของคลาสสี่เหลี่ยมผืนผ้า
double x = 100.0, y = 600.0, width = 200.0, height = 200.0;
auto rectangle = MakeObject<Aspose::Pdf::Rectangle>(x, y, x + width, y + height);

// เพิ่มรูปภาพลงในเพจ
page->AddImage(u"SourceDirectory\\Images\\AsposeLogo.png", rectangle);

// บันทึกไฟล์ PDF
pdfDocument->Save(u"OutputDirectory\\add_image_output.pdf");

แยกรูปภาพจาก PDF ใน C ++

ในการแยกรูปภาพจากไฟล์ PDF ใน C ++ ให้ทำตามขั้นตอนด้านล่าง

โค้ดตัวอย่างต่อไปนี้สาธิตวิธีแยกรูปภาพจาก PDF ใน C++

// โหลดไฟล์ PDF
auto pdfDocument = MakeObject<Document>(u"OutputDirectory\\add_image_output.pdf");

// แยกภาพเฉพาะ
auto image = pdfDocument->get_Pages()->idx_get(1)->get_Resources()->get_Images()->idx_get(1);

// สร้างสตรีมวัตถุเพื่อบันทึกอิมเมจเอาต์พุต
System::SharedPtr<System::IO::FileStream> outputImage = System::IO::File::Create(u"OutputDirectory\\extract_image_output.jpg");

// บันทึกภาพผลลัพธ์
image->Save(outputImage, System::Drawing::Imaging::ImageFormat::get_Jpeg());

// ปิดสตรีม
outputImage->Close();

ลบรูปภาพออกจากไฟล์ PDF โดยใช้ C++

ต่อไปนี้เป็นขั้นตอนในการลบรูปภาพออกจากไฟล์ PDF ใน C++

โค้ดตัวอย่างต่อไปนี้แสดงวิธีลบรูปภาพออกจากไฟล์ PDF ใน C++

// โหลดไฟล์ PDF
auto pdfDocument = MakeObject<Document>(u"OutputDirectory\\add_image_output.pdf");

// ลบภาพใดภาพหนึ่ง
pdfDocument->get_Pages()->idx_get(1)->get_Resources()->get_Images()->Delete(1);

// บันทึกไฟล์ PDF
pdfDocument->Save(u"OutputDirectory\\delete_image_output.pdf");

แทนที่รูปภาพใน PDF ใน C ++

ในการแทนที่รูปภาพใน PDF ใน C ++ ให้ทำตามขั้นตอนด้านล่าง

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทนที่รูปภาพในไฟล์ PDF ใน C++

// โหลดไฟล์ PDF
auto pdfDocument = MakeObject<Document>(u"OutputDirectory\\add_image_output.pdf");

// เปิดภาพใหม่ด้วย FileStream
System::SharedPtr<System::IO::FileStream> newImage = System::IO::File::OpenRead(u"SourceDirectory\\Images\\aspose.png");

// แทนที่ภาพเก่า
pdfDocument->get_Pages()->idx_get(1)->get_Resources()->get_Images()->Replace(1, newImage);

// ปิดสตรีม
newImage->Close();

// บันทึกไฟล์ PDF
pdfDocument->Save(u"OutputDirectory\\replace_image_output.pdf");

C ++ API เพื่อทำงานกับรูปภาพ PDF - รับใบอนุญาตฟรี

คุณสามารถลองใช้ API ได้โดยไม่มีข้อจำกัดในการประเมินโดยขอ ใบอนุญาตชั่วคราวฟรี

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีการทำงานกับรูปภาพในไฟล์ PDF โดยใช้ C++ โดยเฉพาะอย่างยิ่ง คุณได้เรียนรู้วิธีเพิ่ม แยก แทนที่ และลบรูปภาพจากไฟล์ PDF โดยใช้ Aspose.PDF for C++ API API มีคุณสมบัติเพิ่มเติมมากมายสำหรับการทำงานกับไฟล์ PDF ซึ่งคุณสามารถสำรวจโดยละเอียดได้โดยไปที่ เอกสารอย่างเป็นทางการ ในกรณีที่มีข้อสงสัย โปรดติดต่อเราได้ที่ ฟอรัมสนับสนุนฟรี

ดูสิ่งนี้ด้วย