1. מוצרים
  2.   Aspose.Slides
  3.   Aspose.Slides FOSS for C++

Aspose.Slides FOSS ל‑C++

צור, קרא וערוך מצגות PowerPoint מ‑C++ — חופשיות ובקוד פתוח, ללא תלות ב‑Office.

ספרייה בקוד פתוח ב‑C++ למצגות PowerPoint

Aspose.Slides FOSS עבור C++ היא ספרייה ברישיון MIT לעבודה עם קבצי PowerPoint .pptx. שלבו אותה באמצעות CMake FetchContent והתחילו מיד ליצור, לקרוא ולערוך מצגות ללא צורך בהתקנת Microsoft Office או זמן ריצה קנייני.

הספרייה חושפת API של מצגות שנבנה סביב Presentation, Slide, ShapeCollection, TextFrame, Paragraph ו-Portion, מודל הקונספטואלי שבו משתמש PowerPoint עצמו. הוסף והסר שקופיות, הכנס AutoShapes, Tables ו-Connectors, עצב טקסט ברמת תו עם מודגש, נטוי, גודל גופן וצבע, החל מילוי אחיד או גרדיאנט, והוסף אפקטים חזותיים (shadow, glow, blur, reflection).

הסמנטיקה של RAII מבטיחה ניקוי משאבים אמין: ההורס של Presentation משחרר את כל המצב הפנימי באופן אוטומטי. חלקים XML לא ידועים שנתקלו בהם במהלך הטעינה נשמרים במדויק בעת השמירה, ולכן חזרה על תהליך הטעינה והשמירה לעולם לא משמידה תוכן שהספרייה עדיין אינה מבינה. הספרייה דורשת מהדר תואם ל‑C++20. למאפיינים נוספים, ראו Aspose.Slides for C++ enterprise edition.

API למצגות ולשקופיות

  • צור ופתח PPTX: צור מצגות חדשות או פתח קבצי .pptx קיימים דרך Presentation() או Presentation(path).
  • הוסף והסר שקופיות: נהל באופן תכנותי את SlideCollection עם add_empty_slide(), remove() ו-remove_at().
  • AutoShapes: הוסף מלבנים, אליפסים, קווים, ו‑גיאומטריות ShapeType אחרות דרך add_auto_shape().
  • טבלאות ומחברים: הוסף צורות טבלה מובנות וקווי מחבר בין הצורות באמצעות add_connector().
  • הערות מציג: קרא וכתוב הערות מציג לכל שקף דרך NotesSlideManager.
  • תגובות משורשרות: גישה לחוטי תגובות על‑ידי איטרציה של pres.comment_authors() והתגובות המשויכות אליהם.

היכן ניתן להשתמש ב-Aspose.Slides FOSS

  • יצירת דוחות: בנה חבילות מצגות ממותגות ממקורות נתונים ללא Office.
  • אוטומציית תבניות: מלא תבניות PPTX עם תוכן דינמי בצינורות CI/CD.
  • הגירת תוכן: קרא מצגות קיימות וארגן מחדש או שנה את סגנון השקופיות.
  • מערכות משובצות: עיבוד קבצי PPTX בסביבות קריטיות לביצועים או מוגבלות במשאבים.
  • עיבוד באצוות: החל שינויי עיצוב אחידים על ספריות גדולות של מצגות.

עיצוב טקסט ואפקטים חזותיים

  • עיצוב ברמת תו: החל מודגש, נטוי, גודל גופן וצבע על עצמים Portion בודדים דרך PortionFormat.
  • מילוי מוצק ומדרגתי: הגדר מילוי צורה לצבע מוצק או גרדיאנט ליניארי מרובה עצירות באמצעות FillFormat ו-FillType.
  • אפקטי צל וזוהר: החל צל חיצוני, זוהר, טשטוש והשתקפות על כל צורה דרך EffectFormat.
  • יישור פסקה: הגדר יישור שמאל, מרכז, ימין, או יישור מלא לכל פסקה באמצעות ParagraphFormat ו-set_alignment().
  • בטוח במעגל נסיעה: חלקים לא ידועים של XML נשמרים במדויק בעת שמירה מחדש.

חוויית מפתח

Aspose.Slides FOSS משולב באמצעות CMake FetchContent, כך שאין צורך בהורדה ידנית או התקנה ברמת המערכת. הספרייה נבנית מהמקור יחד עם הפרויקט שלך.

ה‑API משקף את מודל האובייקטים של PowerPoint (Presentation, Slide, ShapeCollection, TextFrame, Paragraph, Portion), ולכן כל מי שמכיר את מודל האובייקטים של PowerPoint יכול להשתמש בספרייה מיידית. היא ברישיון MIT, קוד פתוח ב‑GitHub, ודורשת מהדר תואם ל‑C++20.

צור מצגת והוסף צורה

RAII מבטיח שהמפרק Presentation משחרר את כל המשאבים אוטומטית כאשר האובייקט יוצא מהטווח. add_auto_shape() מקבל enum של ShapeType, ולאחר מכן מיקום x/y ורוחב/גובה בנקודות — ה-text_frame של הצורה מספק גישה להגדיר תוכן טקסט.

include(FetchContent)
FetchContent_Declare(
  aspose_slides_foss
  GIT_REPOSITORY https://github.com/aspose-slides-foss/Aspose.Slides-FOSS-for-Cpp.git
  GIT_TAG main
)
FetchContent_MakeAvailable(aspose_slides_foss)
#include <Aspose/Slides/Foss/auto_shape.h>
#include <Aspose/Slides/Foss/export/save_format.h>
#include <Aspose/Slides/Foss/presentation.h>
#include <Aspose/Slides/Foss/shape_collection.h>
#include <Aspose/Slides/Foss/shape_type.h>
#include <Aspose/Slides/Foss/slide.h>
#include <Aspose/Slides/Foss/slide_collection.h>
#include <Aspose/Slides/Foss/text_frame.h>

int main() {
    Aspose::Slides::Foss::Presentation prs;
    auto& slide = prs.slides()[0];

    // Add a rectangle AutoShape
    auto& shape = slide.shapes().add_auto_shape(
        Aspose::Slides::Foss::ShapeType::RECTANGLE,
        50, 50, 400, 150
    );
    shape.text_frame()->set_text("Hello, Aspose.Slides!");

    prs.save("output.pptx", Aspose::Slides::Foss::SaveFormat::PPTX);
    return 0;
}
 ```cmake
include(FetchContent)
FetchContent_Declare(
  aspose_slides_foss
  GIT_REPOSITORY https://github.com/aspose-slides-foss/Aspose.Slides-FOSS-for-Cpp.git
  GIT_TAG main
)
FetchContent_MakeAvailable(aspose_slides_foss)
 

עיצוב טקסט והחלת אפקט מילוי

עיצוב הטקסט פועל ברמת Portion — היחידה הקטנה ביותר של רצף תווים. פתח את הקובץ השמור, נווט לחלק הראשון של הפסקה הראשונה, והגדר את מאפייני הגופן ישירות. מילוי הצורה הוא עצמאי: הגדר את סוג המילוי למוצק והקצה צבע.

#include <Aspose/Slides/Foss/presentation.h>

namespace asf = Aspose::Slides::Foss;

int main() {
    asf::Presentation prs("output.pptx");
    auto& shape = prs.slides()[0].shapes()[0];
    auto& portion = shape.text_frame()
        ->paragraphs()[0].portions()[0];

    // Bold, 18pt text
    portion.portion_format().set_font_bold(asf::NullableBool::TRUE);
    portion.portion_format().set_font_height(18);

    // Solid background fill on the shape
    shape.fill_format().set_fill_type(asf::FillType::SOLID);

    prs.save("formatted.pptx", asf::SaveFormat::PPTX);
    return 0;
}
 ```cpp
#include <Aspose/Slides/Foss/presentation.h>

namespace asf = Aspose::Slides::Foss;

int main() {
    asf::Presentation prs("output.pptx");
    auto& shape = prs.slides()[0].shapes()[0];
    auto& portion = shape.text_frame()
        ->paragraphs()[0].portions()[0];

    // Bold, 18pt text
    portion.portion_format().set_font_bold(asf::NullableBool::TRUE);
    portion.portion_format().set_font_height(18);

    // Solid background fill on the shape
    shape.fill_format().set_fill_type(asf::FillType::SOLID);

    prs.save("formatted.pptx", asf::SaveFormat::PPTX);
    return 0;
}
 

שאלות נפוצות

מהו Aspose.Slides FOSS עבור C++?

זהו ספרייה חופשית, ברישיון MIT, ב‑C++ ליצירה, קריאה ועריכה של מצגות PowerPoint .pptx ללא צורך ב‑Microsoft Office.

אילו פורמטי קבצים נתמכים?

.pptx הוא הפורמט הנתמך לקריאה/כתיבה. ייצוא ל‑PDF, HTML, SVG, או תמונות אינו זמין בגרסה זו.

האם הוא דורש Microsoft Office או PowerPoint?

לא. Aspose.Slides FOSS היא ספרייה עצמאית ב‑C++ ללא תלות ב‑Microsoft Office, אוטומציית COM, או כל סביבת ריצה קניינית.

איך מתקינים אותו?

השתמשו ב‑CMake FetchContent כדי לשלב את הספרייה ישירות מ‑GitHub. הספרייה דורשת מהדר תואם C++20.

האם אני יכול להחיל אפקטים חזותיים כמו צל והארה?

כן. הספרייה תומכת בצל חיצוני, זוהר, טשטוש ואפקטי השתקפות על כל אובייקט צורה דרך ממשק ה‑API של EffectFormat.

האם הספרייה משתמשת ב‑RAII לניהול משאבים?

כן. הפונקציית השמד של Presentation משחררת את כל המצב הפנימי אוטומטית, ולכן אין צורך בניקוי מפורש.

האם ביצוע round‑tripping לקובץ PPTX יהרוס תוכן לא ידוע?

לא. חלקים לא ידועים של XML שנפגשו במהלך הטעינה נשמרים במדויק בעת השמירה, ולכן תוכן שהספרייה עדיין אינה מבינה לעולם לא אובד.

היכן אפשר למצוא את קוד המקור?

הספרייה ברישיון MIT ומאוחסנת ב‑GitHub. דיווחי באגים ובקשות משיכה (pull requests) מוזמנים.

  

משאבי תמיכה ולמידה

 עברית