จัดการแนวทางการวาดในงานนำเสนอด้วย Python
ภาพรวม
แนวทางการวาดเป็นเส้นแนวนอนและแนวตั้งที่ปรับได้ซึ่งช่วยผู้ใช้จัดตำแหน่งรูปทรงอย่างสม่ำเสมอขณะแก้ไขงานนำเสนอใน PowerPoint. พวกมันมีประโยชน์เป็นพิเศษเมื่อแอปพลิเคชันสร้างงานนำเสนอที่ต่อมาจะถูกปรับแต่งด้วยตนเอง: แอปพลิเคชันสามารถบันทึกเครื่องมือจัดตำแหน่งเดียวกันที่ผู้เขียนควรปฏิบัติตามเมื่อเพิ่มหรือย้ายเนื้อหา.
แนวทางการวาดเป็นเครื่องมือช่วยแก้ไข ไม่ใช่เนื้อหาสไลด์. พวกมันไม่ปรากฏในการแสดงสไลด์หรือผลลัพธ์ที่เรนเดอร์. Aspose.Slides for Python via .NET เปิดเผยผ่านอินเทอร์เฟซ IDrawingGuidesCollection . แนวทางหนึ่งแสดงโดย IDrawingGuide และมีการกำหนดทิศทาง, ตำแหน่ง, และสี.
ตำแหน่งวัดเป็นหน่วยจุดจากมุมซ้ายบนของสไลด์หรือมาสเตอร์ที่เกี่ยวข้อง. แนวทางแนวตั้งใช้พิกัดแนวนอนซึ่งโดยทั่วไปอยู่ระหว่างศูนย์ถึงความกว้างของสไลด์. แนวทางแนวนอนใช้พิกัดแนวตั้งซึ่งโดยทั่วไปอยู่ระหว่างศูนย์ถึงความสูงของสไลด์.
เพิ่มแนวทางการวาดในมุมมองสไลด์
ใช้ ICommonSlideViewProperties.drawing_guides เพื่อจัดการแนวทางที่แสดงขณะแก้ไขสไลด์ทั่วไป เรียกใช้ IDrawingGuidesCollection.add โดยระบุค่า Orientation และตำแหน่งเป็นหน่วยจุด.
ตัวอย่างต่อไปนี้เพิ่มแนวทางแนวตั้งหนึ่งเส้นทางด้านขวาของศูนย์กลางสไลด์และแนวทางแนวนอนหนึ่งเส้นด้านล่าง:
import aspose.slides as slides
with slides.Presentation() as presentation:
slide_size = presentation.slide_size.size
guides = presentation.view_properties.slide_view_properties.drawing_guides
guides.add(slides.Orientation.VERTICAL, slide_size.width / 2 + 12.5)
guides.add(slides.Orientation.HORIZONTAL, slide_size.height / 2 + 12.5)
presentation.save("drawing-guides.pptx", slides.export.SaveFormat.PPTX)
เข้าถึงแนวทางการวาด
คุณสมบัติและอินเด็กซ์ IDrawingGuidesCollection.count ให้เข้าถึงแนวทางที่มีอยู่. คุณสมบัติ IDrawingGuide.orientation, IDrawingGuide.position, และ IDrawingGuide.color สามารถอ่านหรือเปลี่ยนแปลงได้.
ตัวอย่างต่อไปนี้อ่านแนวทางในมุมมองสไลด์จากงานนำเสนอที่สร้างด้านบน:
import aspose.slides as slides
with slides.Presentation("drawing-guides.pptx") as presentation:
guides = presentation.view_properties.slide_view_properties.drawing_guides
for index in range(guides.count):
guide = guides[index]
print(f"Guide {index}: orientation = {guide.orientation}, position = {guide.position}, color = {guide.color}")
เพิ่มแนวทางการวาดในสไลด์มาสเตอร์และเลย์เอาต์
มาสเตอร์สไลด์และสไลด์เลย์เอาต์ของมันแต่ละอันสามารถมีคอลเลกชันแนวทางการวาดของตนเอง. ใช้ IMasterSlide.drawing_guides สำหรับสไลด์มาสเตอร์และ ILayoutSlide.drawing_guides สำหรับสไลด์เลย์เอาต์.
ตัวอย่างต่อไปนี้เพิ่มแนวทางแนวตั้งหนึ่งเส้นในสไลด์มาสเตอร์แรกและแนวทางแนวนอนหนึ่งเส้นในสไลด์เลย์เอาต์แรก:
import aspose.slides as slides
with slides.Presentation() as presentation:
slide_size = presentation.slide_size.size
master_guides = presentation.masters[0].drawing_guides
layout_guides = presentation.layout_slides[0].drawing_guides
master_guides.add(slides.Orientation.VERTICAL, slide_size.width / 2 - 20)
layout_guides.add(slides.Orientation.HORIZONTAL, slide_size.height / 2 + 20)
presentation.save("master-layout-drawing-guides.pptx", slides.export.SaveFormat.PPTX)
เพิ่มแนวทางการวาดในโน้ตและมาสเตอร์ของแฮนด์เอาท์
มาสเตอร์ของโน้ตและมาสเตอร์ของแฮนด์เอาท์ก็รองรับแนวทางการวาดเช่นกัน. ใช้ IMasterNotesSlide.drawing_guides และ IMasterHandoutSlide.drawing_guides เพื่อเข้าถึงคอลเลกชันของพวกมัน. หากงานนำเสนอไม่มีมาสเตอร์เหล่านี้ใด ๆ IMasterNotesSlideManager.set_default_master_notes_slide หรือ IMasterHandoutSlideManager.set_default_master_handout_slide จะสร้างมาสเตอร์เริ่มต้นและส่งคืนมัน.
ตัวอย่างต่อไปนี้เพิ่มแนวทางแนวนอนหนึ่งเส้นในโน้ตมาสเตอร์และแนวทางแนวตั้งหนึ่งเส้นในแฮนด์เอาท์มาสเตอร์:
import aspose.slides as slides
with slides.Presentation() as presentation:
notes_size = presentation.notes_size.size
notes_master = presentation.master_notes_slide_manager.set_default_master_notes_slide()
handout_master = presentation.master_handout_slide_manager.set_default_master_handout_slide()
notes_master.drawing_guides.add(slides.Orientation.HORIZONTAL, notes_size.height / 2 + 50)
handout_master.drawing_guides.add(slides.Orientation.VERTICAL, notes_size.width / 2 - 50)
presentation.save("notes-handout-drawing-guides.pptx", slides.export.SaveFormat.PPTX)
ลบแนวทางการวาด
เรียกใช้ IDrawingGuidesCollection.clear เพื่อเอาแนวทางทั้งหมดออกจากคอลเลกชันที่ระบุ. การลบคอลเลกชันหนึ่งไม่ได้ส่งผลต่อแนวทางที่เก็บอยู่ในสโคปอื่น.
ตัวอย่างต่อไปนี้ลบแนวทางในมุมมองสไลด์และแนวทางทั้งหมดบนมาสเตอร์สไลด์, สไลด์เลย์เอาต์, โน้ตมาสเตอร์, และแฮนด์เอาท์มาสเตอร์โดยไม่สร้างมาสเตอร์ที่หายไป:
import aspose.slides as slides
with slides.Presentation("presentation-with-guides.pptx") as presentation:
presentation.view_properties.slide_view_properties.drawing_guides.clear()
for master_slide in presentation.masters:
master_slide.drawing_guides.clear()
for layout_slide in presentation.layout_slides:
layout_slide.drawing_guides.clear()
notes_master = presentation.master_notes_slide_manager.master_notes_slide
if notes_master is not None:
notes_master.drawing_guides.clear()
handout_master = presentation.master_handout_slide_manager.master_handout_slide
if handout_master is not None:
handout_master.drawing_guides.clear()
presentation.save("presentation-without-guides.pptx", slides.export.SaveFormat.PPTX)
FAQ
แนวทางการวาดปรากฏในการแสดงสไลด์หรือภาพที่ส่งออกหรือไม่?
ไม่. แนวทางการวาดเป็นเครื่องมือช่วยจัดตำแหน่งสำหรับการแก้ไขและไม่ถูกเรนเดอร์เป็นเนื้อหาของงานนำเสนอ.
สามารถเพิ่มแนวทางการวาดลงในสไลด์ปกติแต่ละสไลด์โดยตรงได้หรือไม่?
แนวทางการแก้ไขของสไลด์ปกติจะถูกจัดเก็บในคุณสมบัติการมองเห็นสไลด์ของงานนำเสนอ. คอลเลกชันแนวทางแยกต่างหากมีให้สำหรับมาสเตอร์สไลด์, สไลด์เลย์เอาต์, โน้ตมาสเตอร์, และแฮนด์เอาท์มาสเตอร์.
หน่วยใดใช้สำหรับตำแหน่งของแนวทาง?
ตำแหน่งระบุเป็นหน่วยจุด โดย 72 จุดเท่ากับหนึ่งนิ้ว. ตำแหน่งแนวตั้งวัดจากขอบซ้าย และตำแหน่งแนวนอนวัดจากขอบบน.
การลบแนวทางการวาดทำให้รูปทรงหายไปหรือเปลี่ยนแปลงเนื้อหาสไลด์หรือไม่?
ไม่. เมธอด clear จะลบเฉพาะแนวทางในคอลเลกชันที่เลือก เท่านั้น. รูปร่างและเนื้อหาอื่น ๆ ของสไลด์จะคงเดิม.