แปลงงานนำเสนอเป็น HTML5 ด้วย Python

ภาพรวม

บทความนี้อธิบายวิธีแปลงงานนำเสนอ PowerPoint เป็น HTML5 โดยใช้ Aspose.Slides สำหรับ Python ผ่าน .NET ครอบคลุมการส่งออกพื้นฐาน การควบคุมการเคลื่อนไหวของรูปทรงและการเปลี่ยนสไลด์ รวมถึงการจัดวางความคิดเห็น นอกจากนี้ยังเปรียบเทียบผลลัพธ์ HTML5 กับผลลัพธ์รูปแบบ SVG ของการส่งออก HTML ปกติ

ส่งออก PowerPoint เป็น HTML5

ตัวอย่างต่อไปนี้โหลดงานนำเสนอจากไดเรกทอรีทำงานและบันทึกเป็นรูปแบบ HTML5
มันใช้การตั้งค่าการส่งออกเริ่มต้น; ตัวอย่างต่อไปจะแสดงวิธีควบคุมการเล่นอนิเมชันอย่างชัดเจน
แทนที่เส้นทางอินพุตด้วยเส้นทางไปยังงานนำเสนอของคุณ

import aspose.slides as slides

with slides.Presentation("pres.pptx") as presentation:
    presentation.save("pres.html", slides.export.SaveFormat.HTML5)

เพื่อส่งออกโดยไม่เล่นการเคลื่อนไหวของรูปทรงหรือการเปลี่ยนสไลด์ ให้ตั้งค่า animate_shapes และ animate_transitions เป็น False ใน Html5Options การตั้งค่าเหล่านี้เป็นอิสระต่อกัน ดังนั้นคุณสามารถเปิดใช้งานอันหนึ่งได้โดยปิดอีกอันหนึ่ง ตัวอย่างนี้ส่งออกงานนำเสนอพร้อมการเคลื่อนไหวทั้งสองประเภทถูกปิดในหน้าที่สร้างขึ้น

import aspose.slides as slides

html5_options = slides.export.Html5Options()
html5_options.animate_shapes = False
html5_options.animate_transitions = False

with slides.Presentation("pres.pptx") as presentation:
    presentation.save("pres5.html", slides.export.SaveFormat.HTML5, html5_options)

ส่งออก PowerPoint เป็น HTML

การส่งออก HTML มาตรฐานใช้แนวทางการเรนเดอร์ที่ต่างออกไป: เนื้อหาสไลด์ถูกแทนด้วย SVG ภายในหน้า HTML ตัวอย่างต่อไปนี้แปลงงานนำเสนอเป็นเอกสาร HTML ด้วยแนวทางการเรนเดอร์นี้

import aspose.slides as slides

with slides.Presentation("pres.pptx") as presentation:
    presentation.save("pres.html", slides.export.SaveFormat.HTML)

การทำเครื่องหมายแบบง่ายด้านล่างแสดงโครงสร้างของหน้าที่สร้างขึ้น องค์ประกอบ SVG มีเนื้อหาของสไลด์ที่เรนเดอร์; ข้อความตัวอย่างเป็นเพียงการแทนที่และไม่ใช่ผลลัพธ์การส่งออกจริง

<body>
<div class="slide" name="slide" id="slideslideIface1">
     <svg version="1.1">
         <g> THE SLIDE CONTENT GOES HERE </g>
     </svg>
</div>
</body>

ส่งออก PowerPoint เป็นมุมมองสไลด์ HTML5

การส่งออก HTML5 ผลิตหน้าที่ใช้ดูและนำทางสไลด์งานนำเสนอในเบราว์เซอร์ ตัวอย่างนี้เปิดใช้งานทั้ง animate_shapes และ animate_transitions เพื่อให้มุมมองสไลด์ที่ส่งออกสามารถเล่นเอฟเฟกต์จากงานนำเสนอแหล่งต้นได้

ใช้งานนำเสนอที่มีการเคลื่อนไหวของรูปทรงและการเปลี่ยนสไลด์อยู่แล้วเพื่อดูผลของการตั้งค่าเหล่านี้ การเปิดใช้งานจะไม่เพิ่มเอฟเฟกต์ใหม่ให้สไลด์ที่ไม่มีเอฟเฟกต์ หลังการส่งออก ให้เปิดเอกสาร HTML5 ที่สร้างขึ้นในเบราว์เซอร์พร้อมไฟล์สนับสนุนที่พร้อมใช้งาน

import aspose.slides as slides

html5_options = slides.export.Html5Options()
html5_options.animate_shapes = True
html5_options.animate_transitions = True

with slides.Presentation("pres.pptx") as presentation:
    presentation.save("HTML5-slide-view.html", slides.export.SaveFormat.HTML5, html5_options)

แปลงงานนำเสนอเป็นเอกสาร HTML5 พร้อมความคิดเห็น

คุณสามารถรวมความคิดเห็นของสไลด์ที่มีอยู่ในผลลัพธ์ HTML5 เพื่อให้ผู้อ่านเห็นข้อเสนอแนะพร้อมกับเนื้อหาสไลด์ ตัวอย่างในส่วนนี้คาดหวังว่างานนำแหล่งจะมีความคิดเห็นตามที่แสดงด้านล่าง การส่งออกจะนำความคิดเห็นเหล่านั้นออกมา; ไม่ได้สร้างความคิดเห็นใหม่

สองความคิดเห็นบนสไลด์งานนำเสนอ

กำหนดอ็อบเจกต์ NotesCommentsLayoutingOptions ให้กับคุณสมบัติ slides_layout_options ของ Html5Options ตั้งค่า comments_position เป็น RIGHT จากการนับ CommentsPositions เพื่อวางความคิดเห็นทางด้านขวาของแต่ละสไลด์

ตัวอย่างต่อไปนี้ส่งออกงานนำเสนอเป็น HTML5 พร้อมการจัดวางความคิดเห็นนี้ งานนำเสนอที่ไม่มีความคิดเห็นจะไม่มีข้อความความคิดเห็นให้แสดง

import aspose.slides as slides

layout_options = slides.export.NotesCommentsLayoutingOptions()
layout_options.comments_position = slides.export.CommentsPositions.RIGHT

html5_options = slides.export.Html5Options()
html5_options.slides_layout_options = layout_options

with slides.Presentation("sample.pptx") as presentation:
    presentation.save("output.html", slides.export.SaveFormat.HTML5, html5_options)

ความคิดเห็นในเอกสาร HTML5 ที่ส่งออก

ยกเว้นไฮเปอร์ลิงก์ JavaScript ระหว่างการส่งออก

สมมติว่า hyperlinks.pptx มีข้อความลิงก์ที่เป้าหมายเป็น javascript:alert('Hello') และลิงก์ https://example.com/ ปกติ เพื่อยกเว้นไฮเปอร์ลิงก์ JavaScript ระหว่างการส่งออก ให้ตั้งค่า Html5Options.skip_java_script_links เป็น True ค่าเริ่มต้นคือ False ดังนั้นลิงก์เหล่านี้จะไม่ถูกกรองจนกว่าคุณจะเปิดใช้ตัวเลือกนี้

ตัวอย่างต่อไปนี้โหลดงานนำเสนอจากไดเรกทอรีทำงานและส่งออกโดยใช้ Html5Options:

import aspose.slides as slides

html5_options = slides.export.Html5Options()
html5_options.skip_java_script_links = True

with slides.Presentation("hyperlinks.pptx") as presentation:
    presentation.save("filtered-html5.html", slides.export.SaveFormat.HTML5, html5_options)

ไฟล์ที่ส่งออกจะละเว้นไฮเปอร์ลิงก์ JavaScript แต่ยังคงข้อความของมันและลิงก์ HTTPS ปกติ งานนำแหล่งไม่ได้ถูกเปลี่ยนแปลง

ตัวเลือกนี้กรองไฮเปอร์ลิงก์ JavaScript; มันไม่ลบสคริปต์ทั้งหมดหรือเนื้อหาเชิงโต้ตอบอื่น ๆ และไม่รับประกันการปฏิบัติตาม CSP ตัวอย่างเช่น ผลลัพธ์ HTML5 ยังรวมสคริปต์สำหรับการนำทางสไลด์และการเคลื่อนไหว

คำถามที่พบบ่อย

ฉันสามารถควบคุมว่าการเคลื่อนไหวของวัตถุและการเปลี่ยนสไลด์จะเล่นใน HTML5 หรือไม่?
ใช่, การส่งออก HTML5 มีตัวเลือกแยกกันเพื่อเปิดหรือปิด shape animations และ slide transitions

ความคิดเห็นรองรับหรือไม่ และสามารถวางตำแหน่งใดสัมพันธ์กับสไลด์?
ใช่, ความคิดเห็นที่มีอยู่สามารถรวมในผลลัพธ์ HTML5 และกำหนดตำแหน่ง (เช่น ทางด้านขวาของสไลด์) ผ่าน layout settings

ฉันสามารถข้ามลิงก์ที่เรียกใช้ JavaScript เพื่อความปลอดภัยหรือเหตุผลของ CSP ได้หรือไม่?
ใช่, การตั้งค่า skip_java_script_links ช่วยให้คุณข้ามไฮเปอร์ลิงก์ที่มีการเรียก JavaScript ขณะบันทึก ค่าเริ่มต้นคือ False ดู Exclude JavaScript Hyperlinks During Export สำหรับตัวอย่างการส่งออก HTML5 และขอบเขตของฟิลเตอร์ ตัวเลือกนี้ไม่ลบ JavaScript ที่ใช้โดยตัวดู HTML5 สำหรับการนำทางและการเคลื่อนไหว