التثبيت
تثبيت Aspose.Slides FOSS للـ C++
Aspose.Slides FOSS for C++ is a header-and-source library built with CMake. It has no binary distribution; you integrate it directly into your CMake project from the GitHub repository. No Microsoft Office or other proprietary runtime is required.
المتطلبات المسبقة
| المتطلبات | تفصيل |
|---|---|
| معيار C++ | C++20 أو أحدث |
| نظام البناء | CMake 3.20 أو أحدث |
| المترجم | GCC 10+، Clang 13+، أو MSVC 2019+ (أي مترجم يدعم C++20) |
| نظام التشغيل | Windows، macOS، Linux |
| التبعيات الخارجية | لا شيء (جميع التبعيات مدمجة أو header-only) |
1. CMake FetchContent (Recommended)
أسهل طريقة لإضافة Aspose.Slides FOSS إلى مشروعك هي CMake FetchContent. أضف هذا إلى CMakeLists.txt:
cmake_minimum_required(VERSION 3.20)
project(my_slides_app LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
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)يقوم CMake بتنزيل المستودع ويجعل هدف المكتبة متاحًا. لا حاجة للاستنساخ اليدوي أو التثبيت على مستوى النظام.
لتثبيت نسخة محددة من أجل بناء قابل لإعادة الإنتاج، استبدل main بوسم إصدار أو تجزئة commit:
FetchContent_Declare(
aspose_slides_foss
GIT_REPOSITORY https://github.com/aspose-slides-foss/Aspose.Slides-FOSS-for-Cpp.git
GIT_TAG v26.3.0
)2. Git Submodule
إذا كنت تفضّل تضمين شفرة المصدر داخل مستودعك:
git submodule add https://github.com/aspose-slides-foss/Aspose.Slides-FOSS-for-Cpp.git third_party/aspose_slides_fossثم أشر إليه من CMakeLists.txt:
add_subdirectory(third_party/aspose_slides_foss)
target_link_libraries(my_app PRIVATE aspose_slides_foss)3. Build and Verify
بعد إضافة الاعتماد، قم بتهيئة وبناء مشروعك:
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build buildأنشئ حدًا أدنى من main.cpp للتحقق من البناء:
#include <Aspose/Slides/Foss/presentation.h>
#include <Aspose/Slides/Foss/export/save_format.h>
#include <Aspose/Slides/Foss/slide.h>
#include <Aspose/Slides/Foss/slide_collection.h>
#include <iostream>
using namespace Aspose::Slides::Foss;
int main() {
Presentation pres;
std::cout << "Aspose.Slides FOSS built successfully" << std::endl;
std::cout << "Slides in empty presentation: " << pres.slides().size() << std::endl;
return 0;
}الناتج المتوقع:
Aspose.Slides FOSS built successfully
Slides in empty presentation: 1بدء سريع: إنشاء عرض تقديمي مع شكل
البرنامج التالي ينشئ عرضًا تقديميًا جديدًا، يضيف مستطيلًا بنص، ويحفظه كـ .pptx ملف:
#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>
#include <iostream>
using namespace Aspose::Slides::Foss;
int main() {
Presentation pres;
auto& slide = pres.slides()[0];
// Add a rectangle shape and set its text
auto& shape = slide.shapes().add_auto_shape(ShapeType::RECTANGLE, 50, 50, 400, 150);
shape.text_frame()->set_text("Hello from Aspose.Slides FOSS!");
pres.save("hello.pptx", SaveFormat::PPTX);
std::cout << "Saved hello.pptx" << std::endl;
return 0;
}مهم: Presentation يستخدم RAII. عندما يخرج الكائن من نطاقه، يتم تحرير الموارد الداخلية تلقائيًا. يمكنك أيضًا استدعاء pres.dispose() بشكل صريح إذا لزم الأمر؛ استدعاؤه عدة مرات آمن.
ملاحظات المنصة
ويندوز، macOS، لينكس: المكتبة تُبنى بشكل متماثل على جميع الأنظمة. لا توجد مسارات شفرة خاصة بالمنصة أو امتدادات ثنائية.
Docker / CI: استنساخ أو جلب المستودع في خطوة البناء وتشغيل CMake. لا توجد حزم نظام إضافية مطلوبة بخلاف مترجم C++20 و CMake.
vcpkg / Conan: لم يتم نشره حاليًا إلى vcpkg أو Conan. استخدم FetchContent أو git submodule بدلاً من ذلك.
موارد إضافية
- صفحة المنتج: نظرة عامة، ملخص الميزات، والبدء السريع
- رخصة: تفاصيل رخصة MIT، لا حاجة لمفتاح API
- دليل المطور: أدلة الميزات مع أمثلة الشيفرة
- مرجع API: مرجع الفئات والطرق