แก้ไขเอกสาร 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.
Note
การแทนที่ข้อความทำงานกับข้อความที่นำเข้า, ไม่ใช่ข้อความในภาพที่สแกน. การแปลงอาจส่งผลต่อการจัดวางและการจัดรูปแบบ, ดังนั้นควรตรวจสอบผลลัพธ์, โดยเฉพาะเมื่อข้อความที่แทนที่ยาวกว่าเดิม.คำถามที่พบบ่อย
ฉันจำเป็นต้องบันทึกไฟล์ PPTX ก่อนส่งออกเป็น PDF หรือไม่?
ไม่. คุณสามารถแก้ไขและส่งออกรายการนำเสนอเดียวกันในหน่วยความจำ. บันทึกสำเนา PPTX เฉพาะเมื่อคุณต้องการแก้ไขต่อใน PowerPoint; ดูที่ บันทึกการนำเสนอ.
ทำไมข้อความบางส่วนอาจไม่ได้เปลี่ยนแปลง?
ตัวอย่างจะตรงกับคำเต็ม “Draft” ด้วยตัวอักษรตรงกัน. ข้อความที่นำเข้าเป็นภาพหรือแบ่งเป็นกรอบข้อความหลายกรอบอาจไม่ตรงกับการค้นหา. ตรวจสอบเนื้อหาที่นำเข้าและปรับการค้นหาให้เหมาะกับเอกสารของคุณ.