แปลง PPT และ PPTX เป็น JPG ด้วย JavaScript
คำนำ
การแปลงงานนำเสนอ PowerPoint และ OpenDocument ไปเป็นภาพ JPG ช่วยในการแชร์สไลด์, ปรับประสิทธิภาพ, และฝังเนื้อหาในเว็บไซต์หรือแอปพลิเคชัน Aspose.Slides อนุญาตให้คุณแปลงไฟล์ PPTX, PPT, และ ODP เป็นภาพ JPEG คุณภาพสูง คู่มือนี้อธิบายวิธีต่าง ๆ สำหรับการแปลง
ด้วยคุณลักษณะเหล่านี้ การสร้างตัวดูงานนำเสนอของคุณเองและสร้างภาพย่อของทุกสไลด์ทำได้ง่าย อาจเป็นประโยชน์หากคุณต้องการป้องกันการคัดลอกสไลด์หรือแสดงงานนำเสนอในโหมดอ่านอย่างเดียว Aspose.Slides อนุญาตให้คุณแปลงงานนำเสนอทั้งหมดหรือสไลด์เฉพาะเป็นรูปแบบภาพ
แปลง PowerPoint PPT/PPTX เป็น JPG
- สร้างอินสแตนซ์ของประเภท Presentation
- เรียกออบเจ็กต์สไลด์ของประเภท Slide จากคอลเลกชัน Presentation.getSlides()
- สร้างภาพย่อของแต่ละสไลด์แล้วแปลงเป็น JPG. วิธีการ Slide.getImage(float scaleX, float scaleY) ถูกใช้เพื่อรับภาพย่อของสไลด์, จะคืนค่าอ็อบเจ็กต์ Imagess เป็นผลลัพธ์. วิธีการ getImage ต้องถูกเรียกจากสไลด์ที่ต้องการของประเภท Slide, โดยส่งค่าการสเกลของภาพย่อที่ต้องการเข้าไปในเมธอด.
- หลังจากที่คุณได้ภาพย่อของสไลด์แล้ว ให้เรียกวิธีการ 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();
}
}
Tip
Aspose ให้บริการ FREE Collage web app. โดยใช้บริการออนไลน์นี้ คุณสามารถรวมภาพ JPG to JPG หรือ PNG to PNG, สร้าง photo grids และอื่น ๆดูเพิ่มเติม
ดูตัวเลือกอื่น ๆ สำหรับการแปลง PPT/PPTX เป็นภาพ เช่น:
คำถามที่พบบ่อย
วิธีนี้รองรับการแปลงเป็นชุดหรือไม่?
ใช่, Aspose.Slides รองรับการแปลงเป็นชุดของหลายสไลด์เป็น JPG ในการดำเนินการเดียว
การแปลงรองรับ SmartArt, แผนภูมิ, และวัตถุซับซ้อนอื่น ๆ หรือไม่?
ใช่, Aspose.Slides จะเรนเดอร์เนื้อหาทั้งหมดรวมถึง SmartArt, แผนภูมิ, ตาราง, รูปร่าง และอื่น ๆ อย่างไรก็ตาม ความแม่นยำของการเรนเดอร์อาจแตกต่างเล็กน้อยจาก PowerPoint, โดยเฉพาะเมื่อใช้ฟอนต์ที่กำหนดเองหรือฟอนต์ที่หายไป
มีข้อจำกัดใด ๆ เกี่ยวกับจำนวนสไลด์ที่สามารถประมวลผลได้หรือไม่?
Aspose.Slides เองไม่กำหนดขีดจำกัดที่เคร่งครัดเกี่ยวกับจำนวนสไลด์ที่คุณสามารถประมวลผลได้ อย่างไรก็ตาม คุณอาจเจอข้อผิดพลาด out-of-memory เมื่อทำงานกับงานนำเสนอขนาดใหญ่หรือภาพความละเอียดสูง