จัดการส่วนข้อความในงานนำเสนอด้วย Java
ภาพรวม
ส่วนข้อความคือส่วนสำคัญของข้อความที่อยู่ภายในย่อหน้าและทำให้คุณสามารถทำงานกับส่วนนั้นได้อย่างอิสระจากเนื้อหาที่อยู่รอบข้าง. ใน Aspose.Slides, สามารถใช้ส่วนข้อความได้เมื่อคุณต้องการดึงตำแหน่งของส่วนข้อความ, นำการจัดรูปแบบไปใช้กับบางส่วนของย่อหน้าเท่านั้น, หรือควบคุมพฤติกรรมของข้อความในระดับที่ละเอียดกว่า.
บทความนี้แสดงวิธีดึงพิกัดของจุดเริ่มต้นของส่วนข้อความโดยใช้เมธอด getCoordinates() อีกทั้งยังเน้นสถานการณ์ทั่วไปที่เกี่ยวข้องกับส่วนข้อความ เช่น การกำหนดไฮเปอร์ลิงก์ให้กับส่วนข้อความเดียว, การทำความเข้าใจว่าการจัดรูปแบบได้รับการสืบสวนผ่านส่วน, ย่อหน้า, TextFrame และการสืบทอดธีมอย่างไร, และการจัดการกรณีที่ฟอนต์ที่ระบุไม่พร้อมใช้งาน. นอกจากนี้ยังชี้ให้เห็นว่าการเติมสีของข้อความ, สีและความโปร่งแสงสามารถตั้งค่าแตกต่างกันสำหรับแต่ละส่วนภายในย่อหน้าเดียวกันได้.
รับพิกัดของส่วนข้อความ
เมธอด getCoordinates() ถูกเพิ่มไปยังคลาส IPortion และ Portion ซึ่งทำให้สามารถดึงพิกัดของจุดเริ่มต้นของส่วนได้.
// สร้างอินสแตนซ์ของคลาส Prseetation ที่เป็นตัวแทนของ PPTX
Presentation pres = new Presentation();
try {
// ปรับรูปแบบบริบทของงานนำเสนอ
IAutoShape shape = (IAutoShape) pres.getSlides().get_Item(0).getShapes().get_Item(0);
ITextFrame textFrame = (ITextFrame) shape.getTextFrame();
for (IParagraph paragraph : textFrame.getParagraphs())
{
for (IPortion portion : paragraph.getPortions())
{
Point2D.Float point = portion.getCoordinates();
System.out.println("X: " + point.x + " Y: " + point.y);
}
}
} finally {
if (pres != null) pres.dispose();
}
คำถามที่พบบ่อย
Can I apply a hyperlink to only part of the text within a single paragraph?
ได้, คุณสามารถ assign a hyperlink ให้กับส่วนที่เป็นเอกเทศ; เฉพาะส่วนนั้นจะคลิกได้, ไม่ใช่ทั้งย่อหน้า.
How does style inheritance work: what does a Portion override, and what is taken from Paragraph/TextFrame?
คุณสมบัติระดับ Portion มีลำดับความสำคัญสูงที่สุด หากคุณสมบัติเช่นนั้นไม่ได้ตั้งค่าไว้บน Portion, เngine จะดึงค่าจาก Paragraph; หากยังไม่ได้ตั้งค่าไว้ที่นั่นอีก จะดึงจาก TextFrame หรือสไตล์ของ theme.
What happens if the font specified for a Portion is missing on the target machine/server?
Font substitution rules จะนำมาใช้ ข้อความอาจทำการ reflow: เมตริกซ์, การขึ้นบรรทัดคั่นคำ, และความกว้างอาจเปลี่ยนแปลง ซึ่งมีผลต่อการจัดตำแหน่งที่แม่นยำ.
Can I set a Portion-specific text fill transparency or gradient independent of the rest of the paragraph?
ได้, สีข้อความ, การเติมสีและความโปร่งแสงที่ระดับ Portion สามารถแตกต่างจากส่วนใกล้เคียงได้.