แก้ไขเอกสาร PDF ใน C++

ภาพรวม

Aspose.Slides for C++ ให้คุณแก้ไขเนื้อหา PDF โดยการนำเข้าหน้าต่าง ๆ เป็นสไลด์, แก้ไขการนำเสนอ, และส่งออกกลับเป็น PDF. บทความนี้แสดงการแทนที่ข้อความอย่างง่าย. การนำเสนอจะอยู่ในหน่วยความจำ, ดังนั้นการบันทึกไฟล์ PPTX ชั่วคราวเป็นทางเลือก.

แทนที่ข้อความใน PDF

ใช้ SlideCollection::AddFromPdf เพื่อนำเข้าหน้าที่, Presentation::ReplaceText เพื่ออัปเดตข้อความ, และ Presentation::Save เพื่อส่งออกผลลัพธ์.

ตัวอย่างต่อไปนี้คาดว่า input.pdf มีคำว่า “Draft” เป็นข้อความที่สามารถแก้ไขได้หลังการนำเข้า. มันจะเปลี่ยนคำนั้นเป็น “Final” และเขียนไฟล์ edited.pdf. การล้างสไลด์แรกก่อนการนำเข้าจะป้องกันหน้าเปล่าที่เพิ่มขึ้นในผลลัพธ์. การค้นหาจะตรงกับคำทั้งหมดโดยคำนึงถึงตัวพิมพ์เล็กและใหญ่; nullptr หมายถึงไม่ต้องการ callback ผลลัพธ์.

#include <DOM/ISlideCollection.h>
#include <DOM/Presentation.h>
#include <DOM/TextFind/TextSearchOptions.h>
#include <Export/SaveFormat.h>
#include <system/smart_ptr.h>

using namespace System;
using namespace Aspose::Slides;
using namespace Aspose::Slides::Export;

auto presentation = MakeObject<Presentation>();
presentation->get_Slides()->RemoveAt(0);

presentation->get_Slides()->AddFromPdf(u"input.pdf");

auto searchOptions = MakeObject<TextSearchOptions>();
searchOptions->set_WholeWordsOnly(true);
searchOptions->set_CaseSensitive(true);
presentation->ReplaceText(u"Draft", u"Final", searchOptions, nullptr);

presentation->Save(u"edited.pdf", SaveFormat::Pdf);
presentation->Dispose();

สำหรับตัวเลือกเพิ่มเติม, ดูที่ การค้นหาและแทนที่ข้อความ และ แปลง PowerPoint เป็น PDF.

คำถามที่พบบ่อย

ฉันจำเป็นต้องบันทึกไฟล์ PPTX ก่อนส่งออกเป็น PDF หรือไม่?

ไม่. คุณสามารถแก้ไขและส่งออกรายการนำเสนอเดียวกันในหน่วยความจำ. บันทึกสำเนา PPTX เฉพาะเมื่อคุณต้องการแก้ไขต่อใน PowerPoint; ดูที่ บันทึกการนำเสนอ.

ทำไมข้อความบางส่วนอาจไม่ได้เปลี่ยนแปลง?

ตัวอย่างจะตรงกับคำเต็ม “Draft” ด้วยตัวอักษรตรงกัน. ข้อความที่นำเข้าเป็นภาพหรือแบ่งเป็นกรอบข้อความหลายกรอบอาจไม่ตรงกับการค้นหา. ตรวจสอบเนื้อหาที่นำเข้าและปรับการค้นหาให้เหมาะกับเอกสารของคุณ.