จัดการซูเปอร์สคริปต์และซับสคริปต์ในงานนำเสนอโดยใช้ Python ผ่าน Java
ภาพรวม
Aspose.Slides มีฟีเจอร์สำหรับการรวมข้อความซูเปอร์สคริปต์และซับสคริปต์ลงในงานนำเสนอ PowerPoint (PPT, PPTX) และ OpenDocument (ODP) ของคุณ ไม่ว่าคุณจะต้องการเน้นสูตรเคมี สมการคณิตศาสตร์ หรืออธิบายเนื้อหาด้วยเชิงอรรถ ตัวเลือกการจัดรูปแบบพิเศษเหล่านี้ช่วยให้คงความชัดเจนและแม่นยำไว้ได้ ในบทความนี้ คุณจะได้เรียนรู้วิธีการใช้สไตล์ซูเปอร์สคริปต์และซับสคริปต์อย่างราบรื่นและทำให้สไลด์ทุกสไลด์มีผลลัพธ์ระดับมืออาชีพ
จัดการข้อความซูเปอร์สคริปต์และซับสคริปต์
คุณสามารถเพิ่มข้อความซูเปอร์สคริปต์และซับสคริปต์ให้กับส่วนใดส่วนหนึ่งของย่อหน้าได้ เพื่อใช้การจัดรูปแบบนี้ในกรอบข้อความของ Aspose.Slides ให้ใช้เมธอด setEscapement ของคลาส PortionFormat
ค่าการเอสเคปเมนต์อยู่ในช่วง -100% (ซับสคริปต์) ถึง 100% (ซูเปอร์สคริปต์) ตัวอย่างเช่น:
- สร้างอินสแตนซ์ของคลาส Presentation
- ดึงสไลด์ตามดัชนีของมัน
- เพิ่ม AutoShape ชนิด ShapeType.Rectangle ไปยังสไลด์
- เข้าถึง TextFrame ที่เชื่อมโยงกับ AutoShape
- ล้างย่อหน้าที่มีอยู่
- สร้างย่อหน้าเพื่อเก็บข้อความซูเปอร์สคริปต์และเพิ่มลงใน paragraph collection ของกรอบข้อความ
- สร้าง Portion
- ใช้ setEscapement เพื่อตั้งค่า 0‑100 สำหรับซูเปอร์สคริปต์ (0 หมายถึงไม่มีซูเปอร์สคริปต์)
- ตั้งค่าข้อความของ Portion แล้วเพิ่มลงใน collection ของ Portion ของย่อหน้า
- สร้างย่อหน้าเพื่อเก็บข้อความซับสคริปต์และเพิ่มลงใน paragraph collection ของกรอบข้อความ
- สร้าง Portion
- ใช้ setEscapement เพื่อตั้งค่า -100‑0 สำหรับซับสคริปต์ (0 หมายถึงไม่มีซับสคริปต์)
- ตั้งค่าข้อความของ Portion แล้วเพิ่มลงใน collection ของ Portion ของย่อหน้า
- บันทึกงานนำเสนอเป็นไฟล์ PPTX
ตัวอย่างต่อไปนี้แสดงการดำเนินการตามขั้นตอนเหล่านี้:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Paragraph, Portion, Presentation, SaveFormat, ShapeType
# สร้างงานนำเสนอ.
presentation = Presentation()
try:
# ดึงสไลด์.
slide = presentation.getSlides().get_Item(0)
# สร้างกล่องข้อความ.
shape = slide.getShapes().addAutoShape(ShapeType.Rectangle, 100, 100, 200, 100)
text_frame = shape.getTextFrame()
text_frame.getParagraphs().clear()
# สร้างย่อหน้าสำหรับข้อความซูเปอร์สคริปต์.
superscript_paragraph = Paragraph()
# สร้าง Portion ที่มีข้อความปกติ.
title_portion = Portion()
title_portion.setText("SlideTitle")
superscript_paragraph.getPortions().add(title_portion)
# สร้าง Portion ที่มีข้อความซูเปอร์สคริปต์.
superscript_portion = Portion()
superscript_portion.getPortionFormat().setEscapement(30)
superscript_portion.setText("TM")
superscript_paragraph.getPortions().add(superscript_portion)
# สร้างย่อหน้าสำหรับข้อความซับสคริปต์.
subscript_paragraph = Paragraph()
# สร้าง Portion ที่มีข้อความปกติ.
base_portion = Portion()
base_portion.setText("a")
subscript_paragraph.getPortions().add(base_portion)
# สร้าง Portion ที่มีข้อความซับสคริปต์.
subscript_portion = Portion()
subscript_portion.getPortionFormat().setEscapement(-25)
subscript_portion.setText("i")
subscript_paragraph.getPortions().add(subscript_portion)
# เพิ่มย่อหน้าไปยังกล่องข้อความ.
text_frame.getParagraphs().add(superscript_paragraph)
text_frame.getParagraphs().add(subscript_paragraph)
presentation.save("formatText.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
คำถามที่พบบ่อย
ซูเปอร์สคริปต์และซับสคริปต์จะยังคงอยู่เมื่อส่งออกเป็น PDF หรือรูปแบบอื่นหรือไม่?
ใช่, Aspose.Slides จะคงรูปแบบซูเปอร์สคริปต์และซับสคริปต์อย่างถูกต้องเมื่อต้นแบบถูกส่งออกเป็น PDF, PPT/PPTX, ภาพ, และรูปแบบอื่นที่รองรับ รูปแบบพิเศษนี้จะคงสภาพอยู่ในไฟล์ผลลัพธ์ทั้งหมด
ซูเปอร์สคริปต์และซับสคริปต์สามารถรวมกับสไตล์การจัดรูปแบบอื่น ๆ เช่น ตัวหนา หรือ ตัวเอียงได้หรือไม่?
ใช่, Aspose.Slides อนุญาตให้คุณผสมสไตล์ข้อความหลายแบบภายใน Portion เดียว คุณสามารถเปิดใช้งานตัวหนา, ตัวเอียง, ขีดเส้นใต้ และในขณะเดียวกันใช้ซูเปอร์สคริปต์หรือซับสคริปต์โดยกำหนดคุณสมบัติเกี่ยวข้องใน PortionFormat
การจัดรูปแบบซูเปอร์สคริปต์และซับสคริปต์ทำงานกับข้อความภายในตาราง, แผนภูมิ หรือ SmartArt หรือไม่?
ใช่, Aspose.Slides รองรับการจัดรูปแบบภายในออบเจ็กต์ส่วนใหญ่ รวมถึงตารางและองค์ประกอบแผนภูมิ เมื่อทำงานกับ SmartArt คุณต้องเข้าถึงองค์ประกอบที่เหมาะสม (เช่น SmartArtNode) และคอนเทนเนอร์ข้อความของมัน แล้วกำหนดคุณสมบัติของ PortionFormat แบบเดียวกัน.