MS PowerPoint הוא יישום עשיר בתכונות המאפשר לך ליצור מצגות מושכות עם טקסט, גרפיקה, אנימציות, תרשימים ועוד כמה אלמנטים. בפוסט זה תלמדו כיצד ליישם את תכונות האוטומציה הבסיסיות של PowerPoint בתוך יישומי C++. במיוחד, תלמדו לדעת כיצד ליצור מצגות PowerPoint ולהוסיף טקסט, תמונות, תרשימים וטבלאות לשקופיות באמצעות C++.
- C++ PowerPoint API
- צור מצגת PowerPoint ב-C++
- הוסף שקופיות למצגת
- הוסף טקסט לשקופית של PowerPoint
- צור טבלה במצגת
- צור תרשים במצגת
- פתח מצגת PowerPoint קיימת
- קבל רישיון חינם
C++ PowerPoint API
Aspose.Slides for C++ נועד להפוך את תכונות המניפולציה של מצגות PowerPoint לאוטומטיות בתוך יישומי C++. באמצעות ה-API, אתה יכול ליצור, לערוך או להמיר את מצגות PowerPoint בצורה חלקה. אתה יכול להוריד את החבילה המלאה של קבצי ה-API או לקבל אותה מ-NuGet.
צור מצגת PowerPoint ב-C++
נתחיל ביצירת מצגת PowerPoint ריקה באמצעות Aspose.Slides עבור C++. להלן השלבים לביצוע פעולה זו.
- צור אובייקט של המחלקה Presentation.
- שמור את המצגת בשיטת Presentation->Save(String, SaveFormat::Pptx).
דוגמת הקוד הבאה מראה כיצד ליצור מצגת PowerPoint באמצעות C++.
For complete examples and data files, please go to https://github.com/aspose-slides/Aspose.Slides-for-C
// הנתיב לספריית המסמכים.
const String outPath = u"../out/SampleChartresult.pptx";
//מחלקה Instantiate Presentation המייצגת קובץ PPTX
SharedPtr<Presentation> pres = MakeObject<Presentation>();
SharedPtr<ISlide> slide = pres->get_Slides()->idx_get(0);
// הוסף צורה אוטומטית של שורת סוג
slide->get_Shapes()->AddAutoShape(Aspose::Slides::ShapeType::Line, 50.0, 150.0, 300.0, 0.0);
//שומר מצגת
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
הוסף שקופית למצגת ב-C++
לאחר שיצרת את מצגת PowerPoint, תוכל להכניס אליה שקופיות. להלן השלבים להוספת שקופיות למצגת PowerPoint:
- צור אובייקט של המחלקה Presentation.
- קבל שקופיות באובייקט ISlideCollection באמצעות שיטת Presentation->getSlides().
- הוסף שקופית באמצעות השיטה ISlideCollection->AddEmptySlide().
- שמור את המצגת בשיטת Presentation->Save(String, SaveFormat::Pptx).
דוגמת הקוד הבאה מראה כיצד להוסיף שקופיות למצגת PowerPoint באמצעות C++.
For complete examples and data files, please go to https://github.com/aspose-slides/Aspose.Slides-for-C
// הנתיב לספריית המסמכים.
const String outPath = u"../templates/AddSlides.pptx";
// מחלקה Instantiate Presentation המייצגת את קובץ המצגת
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// הצג שיחות SlideCollection
SharedPtr<ISlideCollection> slds = pres->get_Slides();
for (int i = 0; i < pres->get_LayoutSlides()->get_Count(); i++)
{
// הוסף שקופית ריקה לאוסף Slides
slds->AddEmptySlide(pres->get_LayoutSlides()->idx_get(i));
}
// שמור את קובץ ה-PPTX בדיסק
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
למידע נוסף על מניפולציה של שקופיות, בקר בכתובת הוספה, עיצוב ומניפולציה של שקופיות.
הוסף טקסט לשקופית PowerPoint באמצעות C++
כעת, בואו נוסיף טקסט לשקופית במצגת PowerPoint. לשם כך, עליך להכניס תיבת טקסט לשקופית. להלן השלבים לביצוע פעולה זו.
- צור מצגת חדשה או טען מצגת קיימת באמצעות המחלקה Presentation.
- השג את ההפניה של השקופית לאובייקט ISlide באמצעות השיטה Presentation->getSlides()->idxget(int).
- הוסף מלבן לשקופית באמצעות השיטה ISlide->getShapes()->AddAutoShape(ShapeType::Rectangle, int, int, int, int) וקבל את ההתייחסות שלו באובייקט IAutoShape.
- הוסף מסגרת טקסט באמצעות שיטת IAutoShape->AddTextFrame(u" “).
- קבל את מסגרת הטקסט באמצעות IAutoShape->getTextFrame() לתוך האובייקט ITextFrame.
- קבל פסקה באמצעות ITextFrame->getParagraphs()->idxget(0) לתוך האובייקט IParagraph.
- גש לחלק של הפסקה באמצעות IParagraph->getPortions()->idxget(0) לתוך האובייקט IPortion.
- הגדר טקסט בשיטת IPortion->setText(u"Aspose TextBox”).
- שמור את המצגת בשיטת Presentation->Save(String, SaveFormat::Pptx).
דוגמת הקוד הבאה מראה כיצד להוסיף טקסט לשקופיות במצגת PowerPoint באמצעות C++.
// הנתיב לספריית המסמכים.
const String outPath = u"../out/TextBoxOnSlideProgram_out.pptx";
const String templatePath = u"../templates/DefaultFonts_out.pptx";
// טען את המצגת הרצויה
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// גישה לשקופית הראשונה
SharedPtr<ISlide> sld = pres->get_Slides()->idx_get(0);
// הוסף צורה אוטומטית של סוג מלבן
SharedPtr<IAutoShape> ashp = sld->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 150, 75, 150, 50);
// הוסף TextFrame למלבן
ashp->AddTextFrame(u" ");
// גישה למסגרת הטקסט
SharedPtr<ITextFrame> txtFrame = ashp->get_TextFrame();
// צור את אובייקט הפסקה עבור מסגרת טקסט
SharedPtr<IParagraph> paragraph = txtFrame->get_Paragraphs()->idx_get(0);
// צור אובייקט חלק עבור פסקה
SharedPtr<IPortion> portion = paragraph->get_Portions()->idx_get(0);
portion->set_Text(u"Aspose TextBox");
// שמור PPTX בדיסק
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
למידע נוסף על מניפולציה של טקסט במצגות, בקר בכתובת הוספה, עיצוב ומניפולציה של טקסט.
צור טבלה במצגת באמצעות C++
להלן השלבים להוספת טבלה בשקופית של מצגת PowerPoint באמצעות Aspose.Slides עבור C++.
- צור מופע של מחלקה Presentation.
- השג את ההפניה של שקופית לאובייקט ISlide.
- הגדר מערכים של עמודות ושורות על ידי מתן הרוחב.
- הוסף טבלה לשקופית באמצעות השיטה ISlide->getShapes()->AddTable().
- חזור על כל תא כדי להחיל עיצוב על הגבול העליון, התחתון, הימני והשמאלי.
- מיזוג תאים במידת הצורך.
- גש למסגרת הטקסט של תא כדי להוסיף קצת טקסט.
- שמור את המצגת כקובץ PPTX.
דוגמת הקוד הבאה מראה כיצד ליצור טבלה במצגת PowerPoint באמצעות C++.
For complete examples and data files, please go to https://github.com/aspose-slides/Aspose.Slides-for-C
// הנתיב לספריית המסמכים.
const String outPath = u"../out/TableFromScratch_out.pptx";
// טען את המצגת הרצויה
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// גישה לשקופית הראשונה
SharedPtr<ISlide> islide = pres->get_Slides()->idx_get(0);
// הגדר עמודות עם רוחב ושורות עם גבהים
System::ArrayPtr<double> dblCols = System::MakeObject<System::Array<double>>(4, 70);
System::ArrayPtr<double> dblRows = System::MakeObject<System::Array<double>>(4, 70);
// הוסף צורת שולחן להחלקה
SharedPtr<ITable> table = islide->get_Shapes()->AddTable(100, 50, dblCols, dblRows);
// הגדר פורמט גבול עבור כל תא
for (int x = 0; x < table->get_Rows()->get_Count(); x++)
{
SharedPtr<IRow> row = table->get_Rows()->idx_get(x);
for (int y = 0; y < row->get_Count(); y++)
{
SharedPtr<ICell> cell = row->idx_get(y);
cell->get_BorderTop()->get_FillFormat()->set_FillType(FillType::Solid);
cell->get_BorderTop()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
cell->get_BorderTop()->set_Width(5);
cell->get_BorderBottom()->get_FillFormat()->set_FillType(FillType::Solid);
cell->get_BorderBottom()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
cell->get_BorderBottom()->set_Width(5);
cell->get_BorderLeft()->get_FillFormat()->set_FillType(FillType::Solid);
cell->get_BorderLeft()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
cell->get_BorderLeft()->set_Width(5);
cell->get_BorderRight()->get_FillFormat()->set_FillType(FillType::Solid);
cell->get_BorderRight()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
cell->get_BorderRight()->set_Width(5);
}
}
// מיזוג תאים (1, 1) x (2, 1)
table->MergeCells(table->idx_get(1, 1), table->idx_get(2, 1), false);
// מיזוג תאים (1, 2) x (2, 2)
table->MergeCells(table->idx_get(1, 2), table->idx_get(2, 2), false);
// שמור PPTX בדיסק
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
למידע נוסף על מניפולציה של הטבלאות, בקר בהוספה, עדכון ומניפולציה של טבלאות.
צור תרשים במצגת באמצעות C++
Aspose.Slides עבור C++ תומך בסוגים שונים של תרשימים כגון תרשימים מפוזרים, מפת עצים, היסטוגרמה ו-וכו. להדגמה, בואו ניצור תרשים רגיל. להלן השלבים לביצוע פעולה זו.
- צור מופע של המחלקה Presentation.
- השג את ההפניה לשקופית שבה ברצונך להוסיף את התרשים.
- הוסף תרשים עם נתוני ברירת מחדל יחד עם הסוג הרצוי באמצעות שיטת ISlide->getShapes()->AddChart().
- קבל את ההפניה של התרשים באובייקט IChart.
- נקה את נתוני התרשים והוסף סדרות וקטגוריות חדשות.
- הוסף נתוני תרשימים חדשים עבור סדרות תרשימים.
- הגדר צבע מילוי עבור סדרת תרשימים.
- הוסף תוויות של סדרת תרשימים.
- שמור את המצגת כקובץ PPTX.
דוגמת הקוד הבאה מראה כיצד להוסיף תרשים במצגת PowerPoint באמצעות C++.
For complete examples and data files, please go to https://github.com/aspose-slides/Aspose.Slides-for-C
// הנתיב לספריית המסמכים.
const String outPath = u"../out/NormalCharts_out.pptx";
//מחלקה Instantiate Presentation המייצגת קובץ PPTX
SharedPtr<Presentation> pres = MakeObject<Presentation>();
//גישה לשקופית הראשונה
SharedPtr<ISlide> slide = pres->get_Slides()->idx_get(0);
// הוסף תרשים עם נתוני ברירת מחדל
SharedPtr<IChart> chart = slide->get_Shapes()->AddChart(Aspose::Slides::Charts::ChartType::ClusteredColumn, 0, 0, 500, 500);
// הגדרת האינדקס של גיליון הנתונים בתרשים
int defaultWorksheetIndex = 0;
// השגת גליון נתוני התרשים
SharedPtr<IChartDataWorkbook> fact = chart->get_ChartData()->get_ChartDataWorkbook();
// הגדרת תרשים כותרת
chart->get_ChartTitle()->AddTextFrameForOverriding(u"Sample Title");
chart->get_ChartTitle()->get_TextFrameForOverriding()->get_TextFrameFormat()->set_CenterText ( NullableBool::True);
chart->get_ChartTitle()->set_Height(20);
chart->set_HasTitle( true);
// מחק סדרות וקטגוריות שנוצרו כברירת מחדל
chart->get_ChartData()->get_Series()->Clear();
chart->get_ChartData()->get_Categories()->Clear();
int s = chart->get_ChartData()->get_Series()->get_Count();
s = chart->get_ChartData()->get_Categories()->get_Count();
// עכשיו, מוסיף סדרה חדשה
chart->get_ChartData()->get_Series()->Add(fact->GetCell(defaultWorksheetIndex, 0, 1, ObjectExt::Box<System::String>(u"Series 1")), chart->get_Type());
chart->get_ChartData()->get_Series()->Add(fact->GetCell(defaultWorksheetIndex, 0, 2, ObjectExt::Box<System::String>(u"Series 2")), chart->get_Type());
// הוסף קטגוריות
chart->get_ChartData()->get_Categories()->Add(fact->GetCell(defaultWorksheetIndex, 1, 0, ObjectExt::Box<System::String>(u"Caetegoty 1")));
chart->get_ChartData()->get_Categories()->Add(fact->GetCell(defaultWorksheetIndex, 2, 0, ObjectExt::Box<System::String>(u"Caetegoty 2")));
chart->get_ChartData()->get_Categories()->Add(fact->GetCell(defaultWorksheetIndex, 3, 0, ObjectExt::Box<System::String>(u"Caetegoty 3")));
// קח סדרת תרשימים ראשונה
SharedPtr<IChartSeries> series = chart->get_ChartData()->get_Series()->idx_get(0);
// כעת מאכלסת נתוני סדרות
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 1, 1, ObjectExt::Box<double>(20)));
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 2, 1, ObjectExt::Box<double>(50)));
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 3, 1, ObjectExt::Box<double>(30)));
// הגדרת צבע מילוי לסדרות
series->get_Format()->get_Fill()->set_FillType(FillType::Solid);
series->get_Format()->get_Fill()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
// קח סדרת תרשימים שנייה
series = chart->get_ChartData()->get_Series()->idx_get(1);
// כעת מאכלסת נתוני סדרות
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 1, 2, ObjectExt::Box<double>(30)));
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 2, 2, ObjectExt::Box<double>(10)));
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 3, 2, ObjectExt::Box<double>(60)));
// הגדרת צבע מילוי לסדרות
series->get_Format()->get_Fill()->set_FillType(FillType::Solid);
series->get_Format()->get_Fill()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Green());
// התווית הראשונה תהיה הצג את שם הקטגוריה
SharedPtr<IDataLabel> lbl = series->get_DataPoints()->idx_get(0)->get_Label();
lbl->get_DataLabelFormat()->set_ShowCategoryName(true);
lbl = series->get_DataPoints()->idx_get(1)->get_Label();
lbl->get_DataLabelFormat()->set_ShowSeriesName (true);
// הצג ערך עבור התווית השלישית
lbl = series->get_DataPoints()->idx_get(2)->get_Label();
lbl->get_DataLabelFormat()->set_ShowValue (true);
lbl->get_DataLabelFormat()->set_ShowSeriesName(true);
lbl->get_DataLabelFormat()->set_Separator (u"/");
// כתוב את קובץ המצגת לדיסק
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
למידע נוסף על מניפולציה של תרשימים מ-הוספה, עיצוב ומניפולציה של תרשימים.
פתח מצגת PowerPoint ב-C++
ניתן גם לפתוח מצגת PowerPoint קיימת על מנת לערוך את התוכן. לשם כך, תוכל לבצע את השלבים הבאים:
- טען את קובץ ה-PPTX באמצעות מחלקה Presentation על ידי ציון שם הקובץ.
- עדכן את תוכן המצגת.
- שמור את הקובץ המעודכן בשיטת Presentation->Save(String, SaveFormat).
דוגמת הקוד הבאה מראה כיצד לפתוח מצגת PowerPoint קיימת באמצעות C++.
// הנתיב לספריית המסמכים
const String templatePath = u"../templates/AccessSlides.pptx";
// מחלקה Instantiate Presentation המייצגת קובץ PPTX
SharedPtr<Presentation> pres = MakeObject<Presentation>(templatePath);
// הדפסת ספירת שקופיות
printf("Total slides inside presentation are : %d\n", pres->get_Slides()->get_Count());
קבל רישיון חינם
אתה יכול לקבל רישיון זמני בחינם כדי לנסות את ה-API ללא מגבלות הערכה.
סיכום
במאמר זה, למדת כיצד ליצור מצגות PowerPoint מתוך יישומי C++. המדריך שלב אחר שלב ודוגמאות קוד יחד עם הפניות ל-API הראו כיצד ליצור מצגת מאפס ולהכניס אליה שקופיות, טקסט, טבלאות ותרשימים. אתה יכול לחקור עוד על ה-API באמצעות תיעוד.