สร้างตัวดูพรีเซนเทชันบน Android

บทนำ

Aspose.Slides สำหรับ Android ผ่าน Java ใช้ในการสร้างไฟล์พรีเซนเทชันที่มีสไลด์ สไลด์เหล่านี้สามารถดูได้โดยเปิดพรีเซนเทชันใน Microsoft PowerPoint ตัวอย่างเช่น อย่างไรก็ตาม บางครั้งนักพัฒนาอาจต้องการดูสไลด์เป็นรูปภาพในโปรแกรมดูรูปภาพที่ต้องการหรือสร้างตัวดูพรีเซนเทชันของตนเอง ในกรณีเช่นนั้น Aspose.Slides อนุญาตให้คุณส่งออกสไลด์เดี่ยวเป็นรูปภาพ บทความนี้อธิบายวิธีทำ

สร้างภาพ SVG จากสไลด์

เพื่อสร้างภาพ SVG จากสไลด์พรีเซนเทชันด้วย Aspose.Slides โปรดทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Presentation .
  2. รับอ้างอิงสไลด์ตามดัชนีของมัน.
  3. เปิดสตรีมไฟล์.
  4. บันทึกสไลด์เป็นภาพ SVG ไปยังสตรีมไฟล์.
int slideIndex = 0;

Presentation presentation = new Presentation("sample.pptx");
ISlide slide = presentation.getSlides().get_Item(slideIndex);

FileOutputStream svgStream = new FileOutputStream("output.svg");
slide.writeAsSvg(svgStream);
svgStream.close();

presentation.dispose();

สร้าง SVG พร้อม ID ของรูปร่างที่กำหนดเอง

Aspose.Slides สามารถใช้เพื่อสร้าง SVG จากสไลด์พร้อม ID ของรูปร่างที่กำหนดเอง ได้โดยการใช้เมธอด setId จาก ISvgShape CustomSvgShapeFormattingController สามารถใช้เพื่อกำหนดค่า ID ของรูปร่างได้.

int slideIndex = 0;

Presentation presentation = new Presentation("sample.pptx");
ISlide slide = presentation.getSlides().get_Item(slideIndex);

SVGOptions svgOptions = new SVGOptions();
svgOptions.setShapeFormattingController(new CustomSvgShapeFormattingController());

FileOutputStream svgStream = new FileOutputStream("output.svg");
slide.writeAsSvg(svgStream, svgOptions);
svgStream.close();

presentation.dispose();
class CustomSvgShapeFormattingController implements ISvgShapeFormattingController
{
    private int m_shapeIndex;

    public CustomSvgShapeFormattingController()
    {
        m_shapeIndex = 0;
    }

    public CustomSvgShapeFormattingController(int shapeStartIndex)
    {
        m_shapeIndex = shapeStartIndex;
    }

    public void formatShape(ISvgShape svgShape, IShape shape)
    {
        svgShape.setId(String.format("shape-%d", m_shapeIndex++));
    }
}

สร้างภาพย่อของสไลด์

Aspose.Slides ช่วยให้คุณสร้างภาพย่อของสไลด์ได้ เพื่อสร้างภาพย่อของสไลด์โดยใช้ Aspose.Slides โปรดทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Presentation .
  2. รับอ้างอิงสไลด์ตามดัชนีของมัน.
  3. รับภาพย่อของสไลด์ที่อ้างอิงด้วยสเกลที่กำหนด.
  4. บันทึกภาพย่อในรูปแบบภาพที่ต้องการใด ๆ
int slideIndex = 0;
float scaleX = 1;
float scaleY = scaleX;

Presentation presentation = new Presentation("sample.pptx");
ISlide slide = presentation.getSlides().get_Item(slideIndex);

IImage image = slide.getImage(scaleX, scaleY);
image.save("output.jpg", ImageFormat.Jpeg);
image.dispose();

presentation.dispose();

สร้างภาพย่อของสไลด์ด้วยขนาดที่กำหนดโดยผู้ใช้

เพื่อสร้างภาพย่อของสไลด์ด้วยขนาดที่กำหนดโดยผู้ใช้ โปรดทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Presentation .
  2. รับอ้างอิงสไลด์ตามดัชนีของมัน.
  3. รับภาพย่อของสไลด์ที่อ้างอิงด้วยขนาดที่กำหนด.
  4. บันทึกภาพย่อในรูปแบบภาพที่ต้องการใด ๆ
int slideIndex = 0;
Size slideSize = new Size(1200, 800);

Presentation presentation = new Presentation("sample.pptx");
ISlide slide = presentation.getSlides().get_Item(slideIndex);

IImage image = slide.getImage(slideSize);
image.save("output.jpg", ImageFormat.Jpeg);
image.dispose();

presentation.dispose();

สร้างภาพย่อของสไลด์พร้อมบันทึกผู้พูด

เพื่อสร้างภาพย่อของสไลด์พร้อมบันทึกผู้พูดโดยใช้ Aspose.Slides โปรดทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส RenderingOptions .
  2. ใช้เมธอด RenderingOptions.setSlidesLayoutOptions เพื่อกำหนดตำแหน่งของบันทึกผู้พูด.
  3. สร้างอินสแตนซ์ของคลาส Presentation .
  4. รับอ้างอิงสไลด์ตามดัชนีของมัน.
  5. รับภาพย่อของสไลด์ที่อ้างอิงด้วยตัวเลือกการเรนเดอร์.
  6. บันทึกภาพย่อในรูปแบบภาพที่ต้องการใด ๆ
int slideIndex = 0;

NotesCommentsLayoutingOptions layoutingOptions = new NotesCommentsLayoutingOptions();
layoutingOptions.setNotesPosition(NotesPositions.BottomTruncated);

RenderingOptions renderingOptions = new RenderingOptions();
renderingOptions.setSlidesLayoutOptions(layoutingOptions);

Presentation presentation = new Presentation("sample.pptx");
ISlide slide = presentation.getSlides().get_Item(slideIndex);

IImage image = slide.getImage(renderingOptions);
image.save("output.png", ImageFormat.Png);
image.dispose();

presentation.dispose();

ตัวอย่างสด

คุณสามารถลองแอปฟรี Aspose.Slides Viewer เพื่อดูว่าคุณสามารถนำไปใช้งานกับ Aspose.Slides API อย่างไร:

ตัวดู PowerPoint ออนไลน์

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

ฉันสามารถฝังตัวดูพรีเซนเทชันในเว็บแอปพลิเคชันได้หรือไม่?

ได้ คุณสามารถใช้ Aspose.Slides บนเซิร์ฟเวอร์เพื่อเรนเดอร์สไลด์เป็นภาพหรือ HTML และแสดงผลในเบราว์เซอร์ คุณสามารถทำการนำทางและซูมด้วย JavaScript เพื่อสร้างประสบการณ์ที่โต้ตอบได้

วิธีที่ดีที่สุดในการแสดงสไลด์ภายในตัวดูแบบกำหนดเองคืออะไร?

แนะนำให้เรนเดอร์แต่ละสไลด์เป็นภาพ (เช่น PNG หรือ SVG) หรือแปลงเป็น HTML ด้วย Aspose.Slides แล้วแสดงผลลัพธ์ภายในกล่องรูปภาพ (สำหรับเดสก์ท็อป) หรือคอนเทนเนอร์ HTML (สำหรับเว็บ)

ฉันจะจัดการพรีเซนเทชันขนาดใหญ่ที่มีสไลด์จำนวนมากอย่างไร?

สำหรับพรีเซนเทชันขนาดใหญ่ ควรใช้การโหลดแบบ lazy‑loading หรือการเรนเดอร์ตามความต้องการของสไลด์ ซึ่งหมายความว่าจะสร้างเนื้อหาของสไลด์เฉพาะเมื่อผู้ใช้เลื่อนไปยังสไลด์นั้น เพื่อลดการใช้หน่วยความจำและเวลาการโหลด.