مقدمه
Aspose.Slides FOSS for Java is now available on Maven Central: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx فایلها بهصورت کامل در Java هستند و هیچ وابستگی به Microsoft Office یا هیچ زماناجرای مالکیتی ندارند.
این کتابخانه برای توسعهدهندگانی طراحی شده است که نیاز به تولید یا دستکاری فایلهای ارائه بهصورت برنامهنویسی دارند: خودکارسازی اسلایدها از دادهها، استخراج متن و متادیتا از فایلهای PPTX بارگذاریشده، ساخت خطوط لوله گزارشگیری مبتنی بر ارائه، یا ادغام ایجاد ارائه در برنامههای Spring Boot. زیرا aspose-slides-foss بهصورت خالص Java است، بهطور یکسان بر روی Windows، macOS، Linux و کانتینرهای Docker مستقر میشود.
ویژگیهای کلیدی
- پشتیبانی کامل دورگرد PPTX: هر فایل را باز کنید
.pptxفایل، محتویات آن را تغییر دهید و بدون از دست دادن بخشهای XML ناشناسی که کتابخانه هنوز درک نکرده است، آن را دوباره ذخیره کنید. - مدیریت اسلایدها: افزودن، حذف و تکرار اسلایدها با استفاده از
prs.getSlides(); ارائه با یک اسلاید خالی پس ازnew Presentation(). - AutoShapes، جداول و کانکتورها: درج اشکال از طریق
slide.getShapes().addAutoShape(),، دادههای جدولی از طریقslide.getShapes().addTable(), و اتصالات بصری بین اشکال از طریقslide.getShapes().addConnector(). - قالببندی متن غنی: متن را در سطح کاراکتر با
PortionFormat: اندازه قلم، ضخیم، ایتالیک، زیرخط و رنگ ARGB از طریقFillType.SOLIDوColorFormat. - انواع پر کردن: اعمال
FillType.SOLID,GRADIENT,PATTERN, یاPICTUREپرکنندهها برای هر شکل. - جلوههای بصری: سایه خارجی، درخشندگی، لبه نرم، تاری، بازتاب، و سایه داخلی از طریق
shape.getEffectFormat(). - 3D formatting: برجستگی، دوربین، ست نور، ماده، و عمق برآمدگی از طریق
shape.getThreeDFormat(). - یادداشتهای سخنران: متن یادداشتها را به هر اسلاید از طریق
getNotesSlideManager().addNotesSlide(). - نظرات زنجیرهای: نظرات را با متادیتای نویسنده و موقعیت اسلاید اضافه کنید.
- تصاویر تعبیهشده: از مسیر فایل، بایتها یا
InputStream. - ویژگیهای سند: خواندن و نوشتن ویژگیهای هسته، برنامه و سفارشی.
شروع کار
وابستگی Maven را اضافه کنید. Java نسخهٔ ۲۱ یا بالاتر مورد نیاز است.
<dependency>
<groupId>org.aspose.slides.foss</groupId>
<artifactId>aspose-slides-foss</artifactId>
<version>1.0.0</version>
</dependency>
اولین ارائهٔ خود را با یک شکل ایجاد کنید و ذخیره کنید:
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ISlide;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ITextFrame;
import org.aspose.slides.foss.IPortionFormat;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.NullableBool;
import org.aspose.slides.foss.export.SaveFormat;
import org.aspose.slides.foss.drawing.Color;
public class HelloSlides {
public static void main(String[] args) {
try (Presentation prs = new Presentation()) {
ISlide slide = prs.getSlides().get(0);
IAutoShape shape = slide.getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 50, 400, 120
);
shape.addTextFrame("Hello from Aspose.Slides FOSS!");
prs.save("hello.pptx");
}
}
}
همیشه استفاده کنید Presentation درون یک بلوک try-with-resources؛ این اطمینان میدهد که تمام منابع داخلی هنگام خروج از بلوک آزاد شوند.
مثال قالببندی متن
import org.aspose.slides.foss.Presentation;
import org.aspose.slides.foss.ISlide;
import org.aspose.slides.foss.IAutoShape;
import org.aspose.slides.foss.ITextFrame;
import org.aspose.slides.foss.IPortionFormat;
import org.aspose.slides.foss.ShapeType;
import org.aspose.slides.foss.FillType;
import org.aspose.slides.foss.NullableBool;
import org.aspose.slides.foss.export.SaveFormat;
import org.aspose.slides.foss.drawing.Color;
try (Presentation prs = new Presentation()) {
IAutoShape shape = prs.getSlides().get(0).getShapes().addAutoShape(
ShapeType.RECTANGLE, 50, 50, 500, 150
);
ITextFrame tf = shape.addTextFrame("Bold heading in corporate blue");
IPortionFormat 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(new Color(0, 70, 127));
prs.save("formatted.pptx");
}
محدودیتهای فعلی
مناطق زیر استثنا میاندازند UnsupportedOperationException در این نسخه:
- نمودارها، SmartArt و اشیاء OLE
- انیمیشنها و انتقال اسلایدها
- صادرات به PDF، HTML، SVG یا فرمتهای تصویری
- پیوندهای فراگیر، تنظیمات اقدام، ماکروهای VBA و امضاهای دیجیتال
قسمتهای XML ناشناسی که در حین بارگذاری مواجه میشوند، بهصورت دقیق در زمان ذخیرهسازی حفظ میشوند، بنابراین فایلهای PPTX تولید شده توسط ابزارهای دیگر بهصورت ایمن دورگرد میشوند.