1. المنتجات
  2.   Aspose.Slides
  3.   Aspose.Slides FOSS for Java

Aspose.Slides FOSS لـ Java

إنشاء وقراءة وتحرير عروض PowerPoint من Java — مجانية ومفتوحة المصدر، ولا تحتاج إلى اعتماد Office.

مكتبة Java مفتوحة المصدر لعروض PowerPoint

Aspose.Slides FOSS for Java هو مكتبة MIT-licensed pure-Java للعمل مع ملفات PowerPoint .pptx. أضف اعتماد Maven واحد وابدأ فورًا في إنشاء وقراءة وتحرير العروض التقديمية دون تثبيت Microsoft Office أو أي runtime مملوك.

تُظهر المكتبة واجهة برمجة تطبيقات Presentation مبنية حول Presentation، Slide، Shape، TextFrame، Paragraph وPortion، النموذج المفاهيمي الذي يستخدمه PowerPoint نفسه. أضف وأزل الشرائح، أدخل AutoShapes، الجداول، والموصلات، نسّق النص على مستوى الأحرف باستخدام الغامق، المائل، حجم الخط واللون، طبّق تعبئات صلبة أو متدرجة، وأضف تأثيرات بصرية (ظل، توهج، تمويه، انعكاس).

تطبق فئة Presentation AutoCloseable، لذا استخدم try-with-resources للتنظيف الموثوق. يتم حفظ الأجزاء غير المعروفة من XML التي تم مواجهتها أثناء التحميل كما هي عند الحفظ، لذا لا يدمر التدوير المتكرر المحتوى الذي لا تفهمه المكتبة بعد. للحصول على ميزات إضافية ودعم، راجع Aspose.Slides for Java enterprise edition.

واجهة برمجة تطبيقات العروض والشرائح

  • إنشاء وفتح PPTX: إنشاء عروض تقديمية جديدة أو فتح ملفات .pptx الموجودة عبر new Presentation() أو new Presentation(path).
  • إضافة وإزالة الشرائح: إدارة SlideCollection برمجيًا باستخدام addClone()، addEmptySlide()، remove()، وremoveAt().
  • AutoShapes: إدراج المستطيلات، والدوائر البيضاوية، والخطوط، وأشكال ShapeType أخرى عبر addAutoShape().
  • الجداول والموصلات: أضف أشكال جداول منظمة وخطوط موصل بين الأشكال عبر addConnector().
  • ملاحظات المتحدث: قراءة وكتابة ملاحظات المتحدث لكل شريحة عبر NotesSlideManager
  • التعليقات المتسلسلة: الوصول إلى سلاسل تعليقات مستوى الشريحة باستخدام getSlideComments().

أين يمكن استخدام Aspose.Slides FOSS

  • إنشاء التقارير: بناء مجموعات شرائح ذات علامة تجارية من مصادر البيانات دون Office.
  • أتمتة القالب: ملء قوالب PPTX بالمحتوى الديناميكي في خطوط أنابيب CI/CD.
  • ترحيل المحتوى: قراءة العروض التقديمية الحالية وإعادة هيكلة الشرائح أو تعديل نمطها.
  • الخدمات الخلفية بدون خادم: معالجة ملفات PPTX داخل حاويات Docker أو وظائف Lambda.
  • Batch processing: تطبيق تغييرات تنسيق موحدة عبر مكتبات شرائح العرض الكبيرة.

تنسيق النص والتأثيرات البصرية

  • تنسيق على مستوى الأحرف: تطبيق الخط العريض، المائل، حجم الخط، واللون على كائنات Portion الفردية عبر getPortionFormat().
  • ملء صلب وتدرج لوني: اضبط ملء الشكل إلى لون صلب أو تدرج خطي متعدد النقاط باستخدام getFillFormat() و FillType.
  • تأثيرات الظل والوهج: طبق الظل الخارجي، والوهج، والطمس، والانعكاس على أي شكل عبر getEffectFormat().
  • محاذاة الفقرة: اضبط اليسار أو الوسط أو اليمين أو الضبط المتساوي لكل فقرة باستخدام getParagraphFormat().setAlignment().
  • آمن للرحلة ذهابًا وإيابًا: يتم حفظ أجزاء XML غير المعروفة حرفيًا عند إعادة الحفظ.

تجربة المطور

يتم تثبيت Aspose.Slides FOSS باستخدام تبعية Maven واحدة (org.aspose.slides.foss:aspose-slides-foss). المكتبة هي Java صافية دون أي امتدادات أصلية للترجمة ولا حزم نظام لتثبيتها.

تعكس واجهة برمجة التطبيقات نموذج الكائنات الخاص بـ PowerPoint (Presentation, Slide, Shape, TextFrame, Paragraph, Portion)، لذا يمكن لأي شخص مألوف بنموذج كائنات PowerPoint استخدام المكتبة فورًا. إنها MIT-licensed، مفتوحة المصدر على GitHub، وتحتاج إلى JDK 21 أو أحدث.

إنشاء عرض تقديمي وإضافة شكل

استخدم try-with-resources لضمان إغلاق Presentation دائمًا وتحرير الموارد. addAutoShape() يأخذ تعداد ShapeType، ثم موضع x/y وعرض/ارتفاع بالنقاط. استدعِ addTextFrame() لإنشاء إطار النص وتعيين النص الأولي في استدعاء واحد — لا تستدعِ getTextFrame() قبل addTextFrame() لأن الإطار يكون null حتى يتم إنشاؤه.

<dependency>
  <groupId>org.aspose.slides.foss</groupId>
  <artifactId>aspose-slides-foss</artifactId>
  <version>1.0.0</version>
</dependency>
import org.aspose.slides.foss.*;

try (Presentation prs = new Presentation()) {
    ISlide slide = prs.getSlides().get(0);

    // Add a rectangle AutoShape
    IAutoShape shape = slide.getShapes().addAutoShape(
        ShapeType.RECTANGLE, 50, 50, 400, 150
    );
    shape.addTextFrame("Hello, Aspose.Slides!");

    prs.save("output.pptx");
}
 ```xml
<dependency>
  <groupId>org.aspose.slides.foss</groupId>
  <artifactId>aspose-slides-foss</artifactId>
  <version>1.0.0</version>
</dependency>
 

تنسيق النص وتطبيق تأثير تعبئة

تنسيق النص يعمل على مستوى Portion — أصغر وحدة من سلسلة الأحرف. افتح الملف المحفوظ، وانتقل إلى الجزء الأول من الفقرة الأولى، وقم بتعيين خصائص الخط عبر getters و setters. تعبئة الشكل مستقلة: اضبط FillType إلى SOLID وعيّن لونًا عبر getSolidFillColor().setColor().

import org.aspose.slides.foss.*;
import org.aspose.slides.foss.drawing.Color;

try (Presentation prs = new Presentation("output.pptx")) {
    IAutoShape shape = (IAutoShape) prs.getSlides().get(0).getShapes().get(0);
    IPortion portion = shape.getTextFrame()
        .getParagraphs().get(0).getPortions().get(0);

    // Bold, 18pt, dark-blue text
    portion.getPortionFormat().setFontBold(NullableBool.TRUE);
    portion.getPortionFormat().setFontHeight(18);
    portion.getPortionFormat().getFillFormat()
        .getSolidFillColor().setColor(new Color(0, 0, 139));

    // Solid background fill on the shape
    shape.getFillFormat().setFillType(FillType.SOLID);
    shape.getFillFormat().getSolidFillColor()
        .setColor(new Color(240, 248, 255));

    prs.save("formatted.pptx");
}
 ```java
import org.aspose.slides.foss.*;
import org.aspose.slides.foss.drawing.Color;

try (Presentation prs = new Presentation("output.pptx")) {
    IAutoShape shape = (IAutoShape) prs.getSlides().get(0).getShapes().get(0);
    IPortion portion = shape.getTextFrame()
        .getParagraphs().get(0).getPortions().get(0);

    // Bold, 18pt, dark-blue text
    portion.getPortionFormat().setFontBold(NullableBool.TRUE);
    portion.getPortionFormat().setFontHeight(18);
    portion.getPortionFormat().getFillFormat()
        .getSolidFillColor().setColor(new Color(0, 0, 139));

    // Solid background fill on the shape
    shape.getFillFormat().setFillType(FillType.SOLID);
    shape.getFillFormat().getSolidFillColor()
        .setColor(new Color(240, 248, 255));

    prs.save("formatted.pptx");
}
 

الأسئلة الشائعة

ما هو Aspose.Slides FOSS لـ Java؟

إنها مكتبة مجانية، مرخصة بموجب MIT، pure-Java لإنشاء وقراءة وتحرير عروض PowerPoint .pptx دون الحاجة إلى Microsoft Office.

ما هي صيغ الملفات المدعومة؟

.pptx هو تنسيق القراءة/الكتابة المدعوم. التصدير إلى PDF، HTML، SVG، أو الصور غير متوفر في هذا الإصدار.

هل يتطلب Microsoft Office أو PowerPoint؟

لا. Aspose.Slides FOSS هي مكتبة pure-Java بدون أي اعتماد على Microsoft Office أو COM automation أو أي بيئة تشغيل مملوكة.

كيف أقوم بتثبيته؟

أضف تبعية Maven org.aspose.slides.foss:aspose-slides-foss:1.0.0 إلى مشروعك. لا توجد حزم نظام إضافية أو امتدادات أصلية مطلوبة. يتطلب JDK 21 أو أحدث.

هل يمكنني تطبيق تأثيرات بصرية مثل الظل والتوهج؟

نعم. تدعم المكتبة تأثيرات الظل الخارجي، والتوهج، والطمس، والانعكاس على أي كائن شكل عبر واجهة برمجة التطبيقات EffectFormat.

هل يُنصح بنمط try-with-resources؟

نعم. Presentation تنفّذ AutoCloseable، لذا استخدم دائمًا try (Presentation prs = new Presentation()) { ... } لتنظيف الموارد بشكل موثوق.

هل سيتسبب تحويل PPTX ذهابًا وإيابًا في تدمير المحتوى غير المعروف؟

لا. الأجزاء غير المعروفة من XML التي تم مواجهتها أثناء التحميل تُحفظ حرفيًا عند الحفظ، لذا لا يُفقد أي محتوى لا تفهمه المكتبة بعد.

أين يمكنني العثور على شفرة المصدر؟

المكتبة مرخصة برخصة MIT ومستضافة على GitHub. تقارير الأخطاء وطلبات السحب مرحب بها.

  

الدعم وموارد التعلم

 العربية