ทำให้การแทนที่ฟอนต์ในงานนำเสนอด้วย С++ ราบรื่น
ภาพรวม
Aspose.Slides ช่วยให้คุณสามารถแทนที่ฟอนต์หนึ่งด้วยฟอนต์อื่นทั่วทั้งการนำเสนอได้. เมื่อฟอนต์ถูกแทนที่ ตัวอย่างทั้งหมดของฟอนต์เดิมจะถูกเปลี่ยนเป็นฟอนต์ใหม่.
เพื่อทำการแทนที่ฟอนต์ ให้โหลดการนำเสนอ กำหนดฟอนต์ต้นฉบับและฟอนต์ที่จะใช้แทนที่ เรียกใช้เมธอดการแทนที่ฟอนต์ และบันทึกการนำเสนอที่แก้ไขเป็นไฟล์ PPTX วิธีนี้มีประโยชน์เมื่อคุณต้องการสลับจากครอบครัวฟอนต์หนึ่งไปยังอีกครอบครัวหนึ่งโดยตั้งใจทั่วทั้งการนำเสนอ.
แทนที่ฟอนต์
หากคุณเปลี่ยนใจเกี่ยวกับการใช้ฟอนต์ คุณสามารถแทนที่ฟอนต์นั้นด้วยฟอนต์อื่นได้ ตัวอย่างทั้งหมดของฟอนต์เก่าจะถูกแทนที่ด้วยฟอนต์ใหม่.
Aspose.Slides ให้คุณแทนที่ฟอนต์โดยวิธีนี้:
- โหลดการนำเสนอที่เกี่ยวข้อง
- โหลดฟอนต์ที่ต้องการแทนที่
- โหลดฟอนต์ใหม่
- ทำการแทนที่ฟอนต์
- บันทึกการนำเสนอที่แก้ไขเป็นไฟล์ PPTX
โค้ด C++ นี้แสดงตัวอย่างการแทนที่ฟอนต์:
// โหลดงานนำเสนอ
auto presentation = System::MakeObject<Presentation>(u"Fonts.pptx");
// โหลดฟอนต์ต้นฉบับที่จะถูกแทนที่
auto sourceFont = System::MakeObject<FontData>(u"Arial");
// โหลดฟอนต์ใหม่
auto destFont = System::MakeObject<FontData>(u"Times New Roman");
// แทนที่ฟอนต์
presentation->get_FontsManager()->ReplaceFont(sourceFont, destFont);
// บันทึกงานนำเสนอ
presentation->Save(u"UpdatedFont_out.pptx", SaveFormat::Pptx);
Note
เพื่อกำหนดกฎที่ระบุว่าจะทำอย่างไรในเงื่อนไขบางอย่าง (เช่น ฟอนต์ไม่สามารถเข้าถึงได้) ดูที่ การแทนที่ฟอนต์.คำถามที่พบบ่อย
แตกต่างระหว่าง “การแทนที่ฟอนต์”, “การแทนที่ฟอนต์” และ “ฟอนต์สำรอง” คืออะไร?
การแทนที่เป็นการสลับจากครอบครัวฟอนต์หนึ่งไปยังอีกครอบครัวหนึ่งโดยตั้งใจทั่วทั้งเอกสาร. การแทนที่ คือกฎเช่น “หากฟอนต์ไม่พร้อมใช้งาน ให้ใช้ X.” ฟอนต์สำรอง จะถูกนำมาใช้แบบเจาะจงสำหรับ glyph ที่หายไปเมื่อฟอนต์ฐานถูกติดตั้งแต่ไม่มีอักขระที่ต้องการ.
การแทนที่ใช้กับสไลด์แม่, เลเอาต์, โน้ต และคอมเมนต์หรือไม่?
ใช่. การแทนที่จะส่งผลต่ออ็อบเจ็กต์การนำเสนอทั้งหมดที่ใช้ฟอนต์เดิม รวมถึงสไลด์แม่และโน้ต; คอมเมนต์ก็เป็นส่วนของเอกสารและจะถูกพิจารณาโดยเอ็นจิ้นฟอนต์ด้วย.
ฟอนต์จะเปลี่ยนภายในวัตถุ OLE ที่ฝังมา (เช่น Excel) หรือไม่?
ไม่. เนื้อหา OLE ถูกควบคุมโดยแอปพลิเคชันของมันเอง การแทนที่ในงานนำเสนอจะไม่ปรับรูปแบบข้อมูลภายใน OLE; มันอาจแสดงเป็นภาพหรือเป็นเนื้อหาที่แก้ไขได้จากภายนอก.
ฉันสามารถแทนที่ฟอนต์เฉพาะบางส่วนของการนำเสนอ (ตามสไลด์หรือพื้นที่) ได้หรือไม่?
การแทนที่แบบเจาะจงทำได้หากคุณเปลี่ยนฟอนต์ที่ระดับอ็อบเจ็กต์/ช่วงที่ต้องการแทนที่จะใช้การแทนที่ทั่วทั้งเอกสาร โลจิกการเลือกฟอนต์โดยรวมในระหว่างการเรนเดอร์ยังคงเหมือนเดิม.
ฉันจะตรวจสอบล่วงหน้าว่าการนำเสนอใช้ฟอนต์ใดบ้าง?
ใช้ ตัวจัดการฟอนต์: มันให้รายการของ ครอบครัวฟอนต์ที่ใช้ และข้อมูลเกี่ยวกับ การแทนที่/“ฟอนต์ที่ไม่ทราบ” ซึ่งช่วยวางแผนการแทนที่ได้.
การแทนที่ฟอนต์ทำงานเมื่อแปลงเป็น PDF/รูปภาพหรือไม่?
ใช่. ระหว่างการส่งออก Aspose.Slides จะใช้ลำดับการเลือก/การแทนที่ฟอนต์เดียวกัน (ลำดับการเลือก/การแทนที่ฟอนต์) ดังนั้นการแทนที่ที่ทำไว้ล่วงหน้าจะถูกนำไปใช้ในการแปลง.
ฉันจำเป็นต้องติดตั้งฟอนต์เป้าหมายในระบบหรือสามารถแนบโฟลเดอร์ฟอนต์ได้หรือไม่?
ไม่จำเป็นต้องติดตั้ง: ไลบรารีนี้อนุญาตให้ โหลดฟอนต์ภายนอก จากโฟลเดอร์ผู้ใช้เพื่อนำไปใช้ระหว่าง การเรนเดอร์และการส่งออก.
การแทนที่จะทำให้ “tofu” (สี่เหลี่ยม) แทนที่อักขระหรือไม่?
จะทำได้เฉพาะเมื่อฟอนต์เป้าหมายมี glyph ที่ต้องการจริง ๆ หากไม่มีก็ให้ กำหนดค่าฟอนต์สำรอง เพื่อครอบคลุมอักขระที่หายไป.