ویژگی‌ها و قابلیت‌ها

ویژگی‌ها و قابلیت‌ها

ویژگی‌ها و قابلیت‌ها

Aspose.Slides FOSS for Java مجموعه گسترده‌ای از قابلیت‌ها را برای کار با فایل‌های PowerPoint .pptx به‌صورت برنامه‌نویسی فراهم می‌کند. این صفحه تمام حوزه‌های ویژگی‌های پشتیبانی‌شده را همراه با مثال‌های کد نماینده فهرست می‌کند.


ارائه I/O

یک فایل .pptx موجود را باز کنید یا یک فایل جدید ایجاد کنید، سپس آن را به فرمت PPTX ذخیره کنید.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;

// Open an existing presentation
try (Presentation prs = new Presentation("input.pptx")) {
    System.out.println("Slide count: " + prs.getSlides().size());
    prs.save("output.pptx", SaveFormat.PPTX);
}

// Create a new presentation (starts with one blank slide)
try (Presentation prs = new Presentation()) {
    prs.save("new.pptx", SaveFormat.PPTX);
}

توجه: PPTX تنها فرمت ذخیره‌سازی پشتیبانی‌شده است. خروجی به PDF، HTML، SVG یا تصاویر در دسترس نیست.

قسمت‌های ناشناخته XML در فایل منبع به‌صورت کلمه به کلمه هنگام ذخیره حفظ می‌شوند، بنابراین باز کردن و ذخیره مجدد یک .pptx هرگز محتوایی را که کتابخانه هنوز درک نمی‌کند حذف نخواهد کرد.


مدیریت اسلایدها

اسلایدها را اضافه کنید، حذف کنید، کلون کنید و ترتیب آن‌ها را تغییر دهید.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    // Access the first slide
    var slide = prs.getSlides().get(0);

    // Add an additional blank slide at the end
    prs.getSlides().addEmptySlide(prs.getLayoutSlides().get(0));

    System.out.println("Total slides: " + prs.getSlides().size());
    prs.save("multi-slide.pptx", SaveFormat.PPTX);
}

اشکال

اشکال خودکار، فریم‌های تصویر، جداول و اتصالات را به یک اسلاید اضافه کنید.

شکل‌های خودکار

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var slide = prs.getSlides().get(0);
    // Add a rectangle at (x=50, y=50) with width=300, height=100
    var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 300, 100);
    shape.addTextFrame("Aspose.Slides FOSS");
    prs.save("shapes.pptx", SaveFormat.PPTX);
}

جداول

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var slide = prs.getSlides().get(0);
    // Column widths and row heights in points
    double[] colWidths = {120.0, 120.0, 120.0};
    double[] rowHeights = {40.0, 40.0, 40.0};
    var table = slide.getShapes().addTable(50, 50, colWidths, rowHeights);
    table.getRows().get(0).get(0).getTextFrame().setText("Product");
    table.getRows().get(0).get(1).getTextFrame().setText("Quantity");
    table.getRows().get(0).get(2).getTextFrame().setText("Price");
    prs.save("table.pptx", SaveFormat.PPTX);
}

اتصالات

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var slide = prs.getSlides().get(0);
    var box1 = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 100, 150, 60);
    var box2 = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 350, 100, 150, 60);
    var conn = slide.getShapes().addConnector(ShapeType.BENT_CONNECTOR3, 0, 0, 10, 10);
    conn.setStartShapeConnectedTo(box1);
    conn.setStartShapeConnectionSiteIndex(3);  // right side
    conn.setEndShapeConnectedTo(box2);
    conn.setEndShapeConnectionSiteIndex(1);    // left side
    prs.save("connector.pptx", SaveFormat.PPTX);
}

قالب‌بندی متن

متن را در سطح پاراگراف و کاراکتر با استفاده از PortionFormat قالب‌بندی کنید.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.NullableBool;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var slide = prs.getSlides().get(0);
    var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 500, 150);
    var tf = shape.addTextFrame("Bold blue heading");

    var fmt = tf.getParagraphs().get(0).getPortions().get(0).getPortionFormat();
    fmt.setFontHeight(28);
    fmt.setFontBold(NullableBool.TRUE);
    fmt.getFillFormat().setFillType(FillType.SOLID);
    fmt.getFillFormat().getSolidFillColor().setColor(Color.fromArgb(255, 0, 70, 127));

    prs.save("text.pptx", SaveFormat.PPTX);
}

NullableBool.TRUE به‌صورت صریح ویژگی را تنظیم می‌کند؛ NullableBool.NOT_DEFINED از اسلاید مستر ارث می‌برد.


انواع پر کردن

پر کردن اشکال با رنگ ثابت، گرادیان، الگو یا تصویر.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.drawing.Color;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var slide = prs.getSlides().get(0);
    var shape = slide.getShapes().addAutoShape(ShapeType.RECTANGLE, 50, 50, 300, 150);

    // Solid fill
    shape.getFillFormat().setFillType(FillType.SOLID);
    shape.getFillFormat().getSolidFillColor().setColor(Color.fromArgb(255, 30, 120, 200));

    prs.save("fill.pptx", SaveFormat.PPTX);
}

جلوه‌های بصری

سایه خارجی، تابش، لبه نرم، تاری، انعکاس و سایه داخلی را بر اشکال اعمال کنید.

ویژگی‌های اثر از طریق shape.getEffectFormat() قابل دسترسی هستند. برای پیکربندی هر کدام به‌صورت مستقل، enableOuterShadowEffect()، enableGlowEffect()، enableSoftEdgeEffect()، setBlurEffect(radius, grow)، enableReflectionEffect() یا enableInnerShadowEffect() را فراخوانی کنید.


قالب‌بندی 3D

از طریق shape.getThreeDFormat()، برش لبهٔ 3D، دوربین، نورپردازی، ماده و عمق استخراج را اعمال کنید. این کنترل‌کنندهٔ عمق بصری و مدل نورپردازی برای رندر شکل‌ها در نمایشگرهای PPTX است که از افکت‌های 3D پشتیبانی می‌کنند.


یادداشت‌های سخنران

یادداشت‌ها را به هر اسلایدی با استفاده از getNotesSlideManager() پیوست کنید.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var notes = prs.getSlides().get(0).getNotesSlideManager().addNotesSlide();
    notes.getNotesTextFrame().setText("Key talking point: emphasize the ROI benefit.");
    prs.save("notes.pptx", SaveFormat.PPTX);
}

نظرات

نظرات تو درختی را به همراه اطلاعات نویسنده و موقعیت اسلاید اضافه کنید.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.drawing.PointF;
import org.aspose.slides.foss.export.SaveFormat;
import java.time.LocalDateTime;

try (Presentation prs = new Presentation()) {
    var author = prs.getCommentAuthors().addAuthor("Jane Smith", "JS");
    var slide = prs.getSlides().get(0);
    author.getComments().addComment(
        "Please verify this data before the presentation.",
        slide,
        new PointF(2.0f, 2.0f),
        LocalDateTime.now()
    );
    prs.save("comments.pptx", SaveFormat.PPTX);
}

تصاویر تعبیه‌شده

یک تصویر را از یک فایل در ارائه جاسازی کنید و به عنوان PictureFrame به یک اسلاید اضافه کنید.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.export.SaveFormat;
import java.nio.file.Files;
import java.nio.file.Path;

try (Presentation prs = new Presentation()) {
    byte[] imageData = Files.readAllBytes(Path.of("logo.png"));
    var image = prs.getImages().addImage(imageData);
    var slide = prs.getSlides().get(0);
    slide.getShapes().addPictureFrame(ShapeType.RECTANGLE, 50, 50, 200, 150, image);
    prs.save("with-image.pptx", SaveFormat.PPTX);
}

ویژگی‌های سند

خواندن و نوشتن ویژگی‌های اصلی، برنامه و سفارشی سند.

import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.export.SaveFormat;

try (Presentation prs = new Presentation()) {
    var props = prs.getDocumentProperties();

    // Core properties
    props.setTitle("Q1 Results");
    props.setAuthor("Finance Team");
    props.setSubject("Quarterly Review");
    props.setKeywords("Q1, finance, results");

    // Custom property
    props.setCustomPropertyValue("ReviewedBy", "Legal Team");

    prs.save("deck.pptx", SaveFormat.PPTX);
}

محدودیت‌های شناخته‌شده

مناطق زیر UnsupportedOperationException را برمی‌انگیزند و در این نسخه موجود نیستند:

حوزهوضعیت
نمودارهاپیاده‌سازی نشده
SmartArtپیاده‌سازی نشده
انیمیشن‌ها و انتقال‌هاپیاده‌سازی نشده
خروجی PDF / HTML / SVG / تصویرپیاده‌سازی نشده (فقط PPTX)
ماکروهای VBAپیاده‌سازی نشده
امضای دیجیتالپیاده‌سازی نشده
پیوندهای فراگیر و تنظیمات عملپیاده‌سازی نشده
اشیاء OLEپیاده‌سازی نشده
متن ریاضیپیاده‌سازی نشده

موارد مرتبط

 فارسی