Skip to content

Commit df1ff50

Browse files
Files update from Slides AI Agents: Documentation Translation (#851)
1 parent c46035a commit df1ff50

File tree

707 files changed

+50397
-29594
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

707 files changed

+50397
-29594
lines changed
Lines changed: 193 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,193 @@
1+
---
2+
title: "أتمتة إنشاء PowerPoint على Android: إنشاء عروض تقديمية ديناميكية بسهولة"
3+
linktitle: أتمتة إنشاء PowerPoint
4+
type: docs
5+
weight: 20
6+
url: /ar/androidjava/automating-powerpoint-generation-on-cloud-platforms/
7+
keywords:
8+
- منصات سحابية
9+
- أتمتة إنشاء PowerPoint
10+
- إنشاء عروض تقديمية برمجيًا
11+
- أتمتة PowerPoint
12+
- إنشاء شرائح ديناميكية
13+
- تقارير أعمال مؤتمتة
14+
- أتمتة PPT
15+
- عرض تقديمي Android
16+
- Java
17+
- Aspose.Slides
18+
description: "أتمتة إنشاء الشرائح على المنصات السحابية باستخدام Aspose.Slides for Android—إنشاء، تعديل، وتحويل ملفات PowerPoint وOpenDocument بسرعة وبمصداقية."
19+
---
20+
21+
## **مقدمة**
22+
23+
إنشاء عروض PowerPoint يدويًا يمكن أن يكون مهمة تستغرق وقتًا طويلاً ومتكررة — خاصة عندما يكون المحتوى قائمًا على بيانات ديناميكية تتغير بشكل متكرر. سواء كان ذلك في توليد تقارير الأعمال الأسبوعية، أو تجميع المواد التعليمية، أو إنتاج عروض مبيعات جاهزة للعميل، يمكن للأتمتة توفير عدد لا يُحصى من الساعات وضمان التناسق عبر الفرق.
24+
25+
بالنسبة لمطوري Android، فإن أتمتة إنشاء عروض PowerPoint تفتح إمكانيات قوية. يمكنك دمج توليد الشرائح في بوابات الويب، أدوات سطح المكتب، خدمات الخلفية، أو المنصات السحابية لتحويل البيانات بشكل ديناميكي إلى عروض تقديمية احترافية ومُعلمة بالعلامة التجارية — حسب الطلب.
26+
27+
في هذه المقالة، سنستكشف حالات الاستخدام الشائعة لتوليد PowerPoint تلقائيًا في تطبيقات Android (بما في ذلك النشر على المنصات السحابية) ولماذا أصبح ذلك ميزة أساسية في الحلول الحديثة. من سحب بيانات الأعمال في الوقت الفعلي إلى تحويل النص أو الصور إلى شرائح، الهدف هو تحويل المحتوى الخام إلى صيغ بصرية مُنظمة يمكن لجمهورك فهمها فورًا.
28+
29+
## **حالات الاستخدام الشائعة لأتمتة PowerPoint على Android**
30+
31+
تكون أتمتة توليد PowerPoint مفيدة بشكل خاص في السيناريوهات التي يحتاج فيها محتوى العرض إلى تجميع ديناميكي، أو تخصيص، أو تحديث متكرر. بعض أكثر حالات الاستخدام الواقعية شيوعًا تشمل:
32+
33+
- **تقارير الأعمال ولوحات التحكم**
34+
إنشاء ملخصات المبيعات، مؤشرات الأداء الرئيسية (KPIs)، أو تقارير الأداء المالي عن طريق سحب البيانات الحية من قواعد البيانات أو واجهات برمجة التطبيقات.
35+
36+
- **عروض مبيعات وتسويق مخصصة**
37+
إنشاء عروض تقديمية مخصصة للعميل تلقائيًا باستخدام بيانات CRM أو النماذج، مما يضمن سرعة التسليم وتناسق العلامة التجارية.
38+
39+
- **محتوى تعليمي**
40+
تحويل المواد التعليمية، الاختبارات، أو ملخصات الدورات إلى مجموعات شرائح مُنظمة لمنصات التعلم الإلكتروني.
41+
42+
- **رؤى مدعومة بالبيانات والذكاء الاصطناعي**
43+
استخدام معالجة اللغة الطبيعية أو محركات التحليل لتحويل البيانات الخام أو النصوص الطويلة إلى عروض تقديمية ملخصة.
44+
45+
- **شرائح تعتمد على الوسائط**
46+
تجميع عروض تقديمية من الصور المرفوعة، لقطات الشاشة المشروحة، أو إطارات الفيديو الرئيسية مع وصف داعم.
47+
48+
- **تحويل المستندات**
49+
تحويل مستندات Word، ملفات PDF، أو مدخلات النماذج إلى عروض تقديمية بصرية تلقائيًا مع الحد الأدنى من الجهد اليدوي.
50+
51+
- **أدوات المطورين والتقنية**
52+
إنشاء عروض تقنية توضيحية، ملخصات الوثائق، أو سجلات التغييرات بصيغة شرائح مباشرة من الشيفرة أو محتوى markdown.
53+
54+
من خلال أتمتة هذه سير العمل، يمكن للمنظمات توسيع إنتاج المحتوى، الحفاظ على التناسق، وتوفير الوقت لأعمال أكثر استراتيجية.
55+
56+
## **دعونا نبرمج**
57+
58+
في هذا المثال، اخترنا **[Aspose.Slides for Android](https://products.aspose.com/slides/android-java/)** لعرض أتمتة PowerPoint بفضل مجموعة ميزاته الشاملة وسهولة الاستخدام عند التعامل مع العروض برمجيًا.
59+
60+
على عكس المكتبات ذات المستوى الأدنى، التي تتطلب من المطورين العمل مباشرةً مع بنية Open XML (مما ينتج عنه شيفرة مطولة وأقل قابلية للقراءة)، توفر Aspose.Slides API عالية المستوى. إنها تُجرد التعقيد، مما يسمح للمطورين بالتركيز على منطق العرض — مثل التخطيط، التنسيق، وربط البيانات — دون الحاجة إلى فهم تفاصيل تنسيق ملف PowerPoint.
61+
62+
على الرغم من أن Aspose.Slides هي مكتبة تجارية، فإنها توفر نسخة [تجربة مجانية](https://releases.aspose.com/slides/androidjava/) يمكنها تشغيل الأمثلة المقدمة في هذه المقالة بالكامل. لأغراض عرض الأفكار، اختبار الميزات، أو بناء دليل مفهوم كما هو موضح هنا، التجربة أكثر من كافية. هذا يجعلها خيارًا ملائمًا لتجربة أتمتة PowerPoint دون الحاجة إلى الالتزام برخصة مسبقًا.
63+
64+
حسنًا، دعونا نتبع خطوات بناء مثال عرض تقديمي باستخدام محتوى واقعي.
65+
66+
### **إنشاء شريحة عنوان**
67+
68+
سنبدأ بإنشاء عرض تقديمي جديد وإضافة شريحة عنوان تحتوي على عنوان رئيسي وعنوان فرعي.
69+
```java
70+
Presentation presentation = new Presentation();
71+
72+
ISlide slide0 = presentation.getSlides().get_Item(0);
73+
74+
ILayoutSlide layoutSlide = presentation.getLayoutSlides().getByType(SlideLayoutType.Title);
75+
slide0.setLayoutSlide(layoutSlide);
76+
77+
IAutoShape titleShape = (IAutoShape)slide0.getShapes().get_Item(0);
78+
IAutoShape subtitleShape = (IAutoShape)slide0.getShapes().get_Item(1);
79+
80+
titleShape.getTextFrame().setText("Quarterly Business Review – Q1 2025");
81+
subtitleShape.getTextFrame().setText("Prepared for Executive Team");
82+
```
83+
84+
85+
![شريحة العنوان](slide_0.png)
86+
87+
### **إضافة شريحة مع مخطط عمودي**
88+
89+
بعد ذلك، سننشئ شريحة تعرض أداء المبيعات الإقليمية كمخطط عمودي.
90+
```java
91+
ILayoutSlide layoutSlide1 = presentation.getLayoutSlides().getByType(SlideLayoutType.Blank);
92+
ISlide slide1 = presentation.getSlides().addEmptySlide(layoutSlide1);
93+
94+
IChart chart = slide1.getShapes().addChart(ChartType.ClusteredColumn, 100, 100, 500, 350, false);
95+
chart.getLegend().setPosition(LegendPositionType.Bottom);
96+
chart.setTitle(true);
97+
chart.getChartTitle().addTextFrameForOverriding("Data from January – March 2025");
98+
chart.getChartTitle().setOverlay(false);
99+
100+
IChartDataWorkbook workbook = chart.getChartData().getChartDataWorkbook();
101+
int worksheetIndex = 0;
102+
103+
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 1, 0, "North America"));
104+
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 2, 0, "Europe"));
105+
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 3, 0, "Asia Pacific"));
106+
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 4, 0, "Latin America"));
107+
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 5, 0, "Middle East"));
108+
109+
IChartSeries series = chart.getChartData().getSeries().add(workbook.getCell(worksheetIndex, 0, 1, "Sales ($K)"), chart.getType());
110+
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 1, 1, 480));
111+
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 2, 1, 365));
112+
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 3, 1, 290));
113+
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 4, 1, 150));
114+
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 5, 1, 120));
115+
```
116+
117+
118+
![الشريحة التي تحتوي على المخطط](slide_1.png)
119+
120+
### **إضافة شريحة مع جدول**
121+
122+
سنعمل الآن على إضافة شريحة تعرض مقاييس الأداء الرئيسية في صيغة جدول.
123+
```java
124+
ILayoutSlide layoutSlide2 = presentation.getLayoutSlides().getByType(SlideLayoutType.Blank);
125+
ISlide slide2 = presentation.getSlides().addEmptySlide(layoutSlide2);
126+
127+
double[] columnWidths = {200, 100};
128+
double[] rowHeights = {40, 40, 40, 40, 40};
129+
130+
ITable table = slide2.getShapes().addTable(200, 200, columnWidths, rowHeights);
131+
table.getColumns().get_Item(0).get_Item(0).getTextFrame().setText("Metric");
132+
table.getColumns().get_Item(1).get_Item(0).getTextFrame().setText("Value");
133+
table.getColumns().get_Item(0).get_Item(1).getTextFrame().setText("Total Revenue");
134+
table.getColumns().get_Item(1).get_Item(1).getTextFrame().setText("$1.4M");
135+
table.getColumns().get_Item(0).get_Item(2).getTextFrame().setText("Gross Margin");
136+
table.getColumns().get_Item(1).get_Item(2).getTextFrame().setText("54%");
137+
table.getColumns().get_Item(0).get_Item(3).getTextFrame().setText("New Customers");
138+
table.getColumns().get_Item(1).get_Item(3).getTextFrame().setText("340");
139+
table.getColumns().get_Item(0).get_Item(4).getTextFrame().setText("Customer Retention");
140+
table.getColumns().get_Item(1).get_Item(4).getTextFrame().setText("87%");
141+
```
142+
143+
144+
![الشريحة التي تحتوي على الجدول](slide_2.png)
145+
146+
### **إضافة شريحة ملخص بنقاط تعداد**
147+
148+
أخيرًا، سنضيف ملخصًا وخطة عمل باستخدام قائمة تعداد بسيطة.
149+
```java
150+
static IParagraph createBulletParagraph(String text) {
151+
Paragraph paragraph = new Paragraph();
152+
paragraph.getParagraphFormat().getBullet().setType(BulletType.Symbol);
153+
paragraph.getParagraphFormat().setIndent(15);
154+
paragraph.getParagraphFormat().getDefaultPortionFormat().getFillFormat().setFillType(FillType.Solid);
155+
paragraph.getParagraphFormat().getDefaultPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLACK);
156+
paragraph.setText(text);
157+
return paragraph;
158+
}
159+
```
160+
161+
```java
162+
ILayoutSlide layoutSlide3 = presentation.getLayoutSlides().getByType(SlideLayoutType.Blank);
163+
ISlide slide3 = presentation.getSlides().addEmptySlide(layoutSlide3);
164+
165+
IAutoShape bulletList = slide3.getShapes().addAutoShape(ShapeType.Rectangle, 100, 50, 600, 200);
166+
bulletList.getFillFormat().setFillType(FillType.NoFill);
167+
bulletList.getLineFormat().getFillFormat().setFillType(FillType.NoFill);
168+
169+
bulletList.getTextFrame().getParagraphs().clear();
170+
bulletList.getTextFrame().getParagraphs().add(createBulletParagraph("Strong performance in North America; growth opportunity in Asia Pacific"));
171+
bulletList.getTextFrame().getParagraphs().add(createBulletParagraph("Improve marketing outreach in underperforming regions"));
172+
bulletList.getTextFrame().getParagraphs().add(createBulletParagraph("Prepare new campaign strategy for Q2"));
173+
bulletList.getTextFrame().getParagraphs().add(createBulletParagraph("Schedule follow-up review in early July"));
174+
```
175+
176+
177+
![الشريحة التي تحتوي على النص](slide_3.png)
178+
179+
### **حفظ العرض التقديمي**
180+
181+
أخيرًا، نقوم بحفظ العرض التقديمي إلى القرص:
182+
```java
183+
presentation.save("presentation.pptx", SaveFormat.Pptx);
184+
```
185+
186+
187+
## **الخلاصة**
188+
189+
توفر أتمتة توليد PowerPoint في تطبيقات Android فوائد واضحة في توفير الوقت وتقليل الجهد اليدوي. من خلال دمج محتوى ديناميكي مثل المخططات، الجداول، والنصوص، يمكن للمطورين إنتاج عروض تقديمية متسقة ومحترفة بسرعة — مثالية لتقارير الأعمال، اجتماعات العملاء، أو المحتوى التعليمي.
190+
191+
في هذه المقالة، أظهرنا كيفية أتمتة إنشاء عرض تقديمي من الصفر، بما في ذلك إضافة شريحة عنوان، مخططات، وجداول. يمكن تطبيق هذه الطريقة عبر حالات استخدام مختلفة حيث تكون العروض التقديمية الآلية المستندة إلى البيانات مطلوبة.
192+
193+
من خلال الاستفادة من الأدوات المناسبة، يستطيع مطورو Android أتمتة إنشاء PowerPoint بكفاءة، مما يعزز الإنتاجية ويضمن التناسق عبر العروض التقديمية.
37 KB
Loading
25.7 KB
Loading
32.7 KB
Loading
33.2 KB
Loading

0 commit comments

Comments
 (0)