แปลง PPT และ PPTX เป็น JPG ด้วย JavaScript

คำนำ

การแปลงงานนำเสนอ PowerPoint และ OpenDocument ไปเป็นภาพ JPG ช่วยในการแชร์สไลด์, ปรับประสิทธิภาพ, และฝังเนื้อหาในเว็บไซต์หรือแอปพลิเคชัน Aspose.Slides อนุญาตให้คุณแปลงไฟล์ PPTX, PPT, และ ODP เป็นภาพ JPEG คุณภาพสูง คู่มือนี้อธิบายวิธีต่าง ๆ สำหรับการแปลง

ด้วยคุณลักษณะเหล่านี้ การสร้างตัวดูงานนำเสนอของคุณเองและสร้างภาพย่อของทุกสไลด์ทำได้ง่าย อาจเป็นประโยชน์หากคุณต้องการป้องกันการคัดลอกสไลด์หรือแสดงงานนำเสนอในโหมดอ่านอย่างเดียว Aspose.Slides อนุญาตให้คุณแปลงงานนำเสนอทั้งหมดหรือสไลด์เฉพาะเป็นรูปแบบภาพ

แปลง PowerPoint PPT/PPTX เป็น JPG

  1. สร้างอินสแตนซ์ของประเภท Presentation
  2. เรียกออบเจ็กต์สไลด์ของประเภท Slide จากคอลเลกชัน Presentation.getSlides()
  3. สร้างภาพย่อของแต่ละสไลด์แล้วแปลงเป็น JPG. วิธีการ Slide.getImage(float scaleX, float scaleY) ถูกใช้เพื่อรับภาพย่อของสไลด์, จะคืนค่าอ็อบเจ็กต์ Imagess เป็นผลลัพธ์. วิธีการ getImage ต้องถูกเรียกจากสไลด์ที่ต้องการของประเภท Slide, โดยส่งค่าการสเกลของภาพย่อที่ต้องการเข้าไปในเมธอด.
  4. หลังจากที่คุณได้ภาพย่อของสไลด์แล้ว ให้เรียกวิธีการ IImage.save(String formatName, int imageFormat) จากอ็อบเจ็กต์ภาพย่อ. ส่งชื่อไฟล์ผลลัพธ์และรูปแบบภาพเข้าไปในเมธอดนั้น.
var pres = new aspose.slides.Presentation("PowerPoint-Presentation.pptx");
try {
    for (let i = 0; i < pres.getSlides().size(); i++) {
        let sld = pres.getSlides().get_Item(i);
        // สร้างภาพขนาดเต็มสเกล
        var slideImage = sld.getImage(1.0, 1.0);
        // บันทึกภาพลงดิสก์ในรูปแบบ JPEG
        try {
            slideImage.save(java.callStaticMethodSync("java.lang.String", "format", "Slide_%d.jpg", sld.getSlideNumber()), aspose.slides.ImageFormat.Jpeg);
        } finally {
            if (slideImage != null) {
                slideImage.dispose();
            }
        }
    }
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

แปลง PowerPoint PPT/PPTX เป็น JPG พร้อมขนาดที่กำหนดเอง

เพื่อเปลี่ยนขนาดของภาพย่อและภาพ JPG ที่ได้, คุณสามารถตั้งค่า ScaleX และ ScaleY ได้โดยส่งค่าเหล่านั้นเข้าไปในเมธอด Slide.getImage(float scaleX, float scaleY) :

var pres = new aspose.slides.Presentation("PowerPoint-Presentation.pptx");
try {
    // กำหนดมิติ
    var desiredX = 1200;
    var desiredY = 800;
    // รับค่าการสเกลของ X และ Y
    var ScaleX = 1.0 / pres.getSlideSize().getSize().getWidth() * desiredX;
    var ScaleY = 1.0 / pres.getSlideSize().getSize().getHeight() * desiredY;
    for (let i = 0; i < pres.getSlides().size(); i++) {
        let sld = pres.getSlides().get_Item(i);
        // สร้างภาพขนาดเต็มสเกล
        var slideImage = sld.getImage(ScaleX, ScaleY);
        // บันทึกภาพลงดิสก์ในรูปแบบ JPEG
        try {
            slideImage.save(java.callStaticMethodSync("java.lang.String", "format", "Slide_%d.jpg", sld.getSlideNumber()), aspose.slides.ImageFormat.Jpeg);
        } finally {
            if (slideImage != null) {
                slideImage.dispose();
            }
        }
    }
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

เรนเดอร์คอมเมนต์เมื่อบันทึกงานนำเสนอเป็นภาพ

Aspose.Slides สำหรับ Node.js ผ่าน Java มีฟีเจอร์ที่อนุญาตให้คุณเรนเดอร์คอมเมนต์ในสไลด์ของงานนำเสนอเมื่อต้องการแปลงสไลด์เหล่านั้นเป็นภาพ โค้ด JavaScript นี้แสดงการทำงาน:

var pres = new aspose.slides.Presentation("presentation.pptx");
try {
    var notesOptions = new aspose.slides.NotesCommentsLayoutingOptions();
    notesOptions.setNotesPosition(aspose.slides.NotesPositions.BottomTruncated);
    var opts = new aspose.slides.RenderingOptions();
    opts.setSlidesLayoutOptions(notesOptions);
    for (let i = 0; i < pres.getSlides().size(); i++) {
        let sld = pres.getSlides().get_Item(i);
        var slideImage = sld.getImage(opts, java.newInstanceSync("java.awt.Dimension", 740, 960));
        try {
            slideImage.save(java.callStaticMethodSync("java.lang.String", "format", "Slide_%d.png", sld.getSlideNumber()));
        } finally {
            if (slideImage != null) {
                slideImage.dispose();
            }
        }
    }
} finally {
    if (pres != null) {
        pres.dispose();
    }
}

ดูเพิ่มเติม

ดูตัวเลือกอื่น ๆ สำหรับการแปลง PPT/PPTX เป็นภาพ เช่น:

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

วิธีนี้รองรับการแปลงเป็นชุดหรือไม่?
ใช่, Aspose.Slides รองรับการแปลงเป็นชุดของหลายสไลด์เป็น JPG ในการดำเนินการเดียว

การแปลงรองรับ SmartArt, แผนภูมิ, และวัตถุซับซ้อนอื่น ๆ หรือไม่?
ใช่, Aspose.Slides จะเรนเดอร์เนื้อหาทั้งหมดรวมถึง SmartArt, แผนภูมิ, ตาราง, รูปร่าง และอื่น ๆ อย่างไรก็ตาม ความแม่นยำของการเรนเดอร์อาจแตกต่างเล็กน้อยจาก PowerPoint, โดยเฉพาะเมื่อใช้ฟอนต์ที่กำหนดเองหรือฟอนต์ที่หายไป

มีข้อจำกัดใด ๆ เกี่ยวกับจำนวนสไลด์ที่สามารถประมวลผลได้หรือไม่?
Aspose.Slides เองไม่กำหนดขีดจำกัดที่เคร่งครัดเกี่ยวกับจำนวนสไลด์ที่คุณสามารถประมวลผลได้ อย่างไรก็ตาม คุณอาจเจอข้อผิดพลาด out-of-memory เมื่อทำงานกับงานนำเสนอขนาดใหญ่หรือภาพความละเอียดสูง