איך להתחיל עם Aspose.Slides FOSS עבור C++

איך להתחיל עם Aspose.Slides FOSS עבור C++

aspose_slides_foss עבור C++ הוא ספרייה חינם, מורשה על ידי MIT ליצירת ועריכה. PowerPoint .pptx קבצים – אין Microsoft Office נדרש, בונה עם CMake.

הדרכה שלב אחר צעד

שלב 1: הוסף את הספרייה באמצעות CMake

הוסף aspose_slides_foss על שלך CMakeLists.txt (המחברת C++20 נדרשת):

cmake_minimum_required(VERSION 3.20)
project(MyProject)

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)

add_executable(my_app main.cpp)
target_link_libraries(my_app PRIVATE aspose_slides_foss)

שלב 2: כולל את הכותרות הנדרשות

כולל את הכותרות עבור הכיתות שאתה צריך:

#include <Aspose/Slides/Foss/presentation.h>
#include <Aspose/Slides/Foss/auto_shape.h>
#include <Aspose/Slides/Foss/shape_type.h>
#include <Aspose/Slides/Foss/text_frame.h>
#include <Aspose/Slides/Foss/export/save_format.h>

שלב 3: יצירת הצגה

בניית A Presentation כדי להתחיל עם אחד לבן סליד, ולאחר מכן לשמור אותו:

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

using namespace Aspose::Slides::Foss;

int main() {
    Presentation prs;
    prs.save("new_presentation.pptx", SaveFormat::PPTX);
    return 0;
}

שלב 4: הוסף צורה עם טקסט

שימוש slide.shapes().add_auto_shape() להוסיף מפתח, ולאחר מכן להתקשר text_frame()->set_text() להוסיף תוכן טקסט:

#include <Aspose/Slides/Foss/auto_shape.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>
#include <Aspose/Slides/Foss/export/save_format.h>

int main() {
    Presentation prs;
    auto& slide = prs.slides()[0];
    auto& shape = slide.shapes().add_auto_shape(
        ShapeType::RECTANGLE, 50, 50, 400, 150
    );
    shape.text_frame()->set_text("Hello from Aspose.Slides FOSS!");
    prs.save("with_shape.pptx", SaveFormat::PPTX);
    return 0;
}

שלב 5: להוסיף ולשמור

הגדר צבע מלא מוצק על הצורה לפני חיסכון:

#include <Aspose/Slides/Foss/auto_shape.h>
#include <Aspose/Slides/Foss/fill_format.h>
#include <Aspose/Slides/Foss/fill_type.h>
#include <Aspose/Slides/Foss/presentation.h>
#include <Aspose/Slides/Foss/shape_type.h>
#include <Aspose/Slides/Foss/export/save_format.h>

int main() {
    Presentation prs;
    auto& shape = prs.slides()[0].shapes().add_auto_shape(
        ShapeType::RECTANGLE, 100, 100, 400, 200
    );
    shape.fill_format().set_fill_type(FillType::SOLID);
    shape.fill_format().solid_fill_color().set_color(0xFF, 0x46, 0x82, 0xB4);
    shape.text_frame()->set_text("Styled shape");
    prs.save("styled.pptx", SaveFormat::PPTX);
    return 0;
}

בעיות נפוצות ותקנות

שגיאות קישור עם רמזים לא מוגדרים Ensure target_link_libraries(your_target PRIVATE aspose_slides_foss) הוא בתוך שלך CMakeLists.txt הספרייה הושלמה בהצלחה באמצעות FetchContent.

הקובץ לא נמצא כולל את כל הדרכים החל עם <Aspose/Slides/Foss/...>.לרוץ cmake --build מתוך תיעוד הבנייה, לא מתוך התיעודי המקור.

UnsupportedOperationException תגיות: לא נתמך תכונות חלק מהתכונות (צילום, אנימציה, ייצוא PDF) אינן נתמכות. תיעוד לרשימת הגבלות הנוכחית.

תאונות בעת גישה ל-Slides by Index הפסולת Presentation תמיד יוצר תמונה אחת על אינדיקטור 0.אם אתה מצלם ריק • קובץ או הסרת כל ה-slides, prs.slides()[0] זה יהיה מחוץ לריכוז.

שאלות נפוצות שואלים

האם aspose_slides_foss דורש Microsoft Office?

הספרייה יוצרת וקראת .pptx קבצים מקומיים ב- C++ ללא תלות על Microsoft Office, COM או Windows APIs.

אילו סטנדרטים C++ ותומכים?

הספרייה דורשת C++20 או מאוחר יותר.זה נבדק עם GCC 11+, Clang 13+, ו MSVC 2022.

האם הספרייה חופשית לשימוש מסחרי?

כן, הוא שוחרר תחת רישיון MIT. אתה יכול להשתמש בו, לשנות אותו ולהפיץ מחדש לכל מטרה, כולל יישומים מסחריים.

האם אני יכול להעלות קובץ PPTX קיימת?

כן, עבר את מסלול הקובץ אל Presentation מבנה :

Presentation prs("existing.pptx");
prs.save("copy.pptx", SaveFormat::PPTX);

איך אני יכול להוסיף כמה סלידים?

שימוש prs.slides().add_empty_slide(layout) לאחר קבלת ההסכם מ- prs.masters()[0].layout_slides()[0].

ראה גם

 עברית