الأسئلة المتكررة
الأسئلة المتكررة
كيف أقوم بإنشاء وربط Aspose.Slides FOSS لـ C++؟?
استخدم CMake FetchContent لإضافة المكتبة إلى مشروعك.C++20 أو ما بعد مطلوب.
cmake_minimum_required(VERSION 3.20)
project(my_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)لا يتطلب Microsoft Office أو أي وقت تشغيل آخر للنظام.
لماذا يجب أن أستخدم RAII مع Presentation?
وَالْمُتَّقِينَ Presentation فئة تتعامل مع الموارد XML الداخلية.عندما يخرج الكائن من نطاقها، يتم إطلاق هذه المواد.تجنب تخصيص Presentation مع new بدون مؤشر ذكي؛ استخدم تخصيص الستار أو std::unique_ptr لضمان التنظيف .
اتبع هذا النموذج دائماً:
#include <Aspose/Slides/Foss/presentation.h>
int main() {
Aspose::Slides::Foss::Presentation prs;
// work here
prs.save("output.pptx", Aspose::Slides::Foss::SaveFormat::PPTX);
return 0;
}ما هي تنسيقات الملفات التي يمكنني حفظها؟?
وَالْمُتَّقِينَ SaveFormat يحدد enum الكثافة لعدة تنسيقات - PPTX, PDF, HTML, SVG, JPEG, PNG, وغيرها — لمتوافقة API مع الإصدار التجاري. في الوقت الحالي في هذا الإعداد FOSS, كل save() اتصلت تجاهل حجة النموذج وكتب دائما نفق PPTX. SaveFormat::PDF يُعدّد بشكل صحيح، ولكنه ينتج .pptx الملفات، وليس .pdf.
prs.save("output.pptx", Aspose::Slides::Foss::SaveFormat::PPTX);لا توجد إصدارات غير PPTX في هذا الإصدار.استخدام SaveFormat::PPTX كل من ينقذ العملية.
يمكنني فتح .ppt (الخيارات الثنائية PowerPoint 97-2003) الملفات؟?
لا فقط .pptx (Office Open XML) يتم دعم الملفات. .ppt لا يتم التعامل مع هذا النموذج الثنائي من قبل هذه المكتبة.
كيف يمكنني الوصول إلى الشرائح؟?
Slides هي مجموعة صفرية متاحة من خلال prs.slides():
auto& slides = prs.slides();
auto& first_slide = slides[0];
auto count = slides.size();كيف يمكنني إضافة شريط ثانٍ؟?
استخدام prs.slides().add_empty_slide() مع لعبة layout :
Aspose::Slides::Foss::Presentation prs;
auto& layout = prs.layout_slides()[0];
prs.slides().add_empty_slide(&layout);
auto& slide2 = prs.slides()[1];
prs.save("two-slides.pptx", Aspose::Slides::Foss::SaveFormat::PPTX);كيف أضع لون الخلفية في الشاشة؟?
لا يتم عرض لون الخلفية في API الحالي. BaseSlide و Slide لا يوجد لديك A background() هذه الميزة غير متوفرة في هذا الإصدار من المكتبة.
كيف أستخدم NullableBool?
NullableBool هو إينوم ثلاثي الدولة المستخدمة لتصميم الخصائص.استخدام NullableBool::TRUE (لا يوجد C + +) true) لمتعة، إيطالية، ومماثلة:
#include <Aspose/Slides/Foss/presentation.h>
fmt.set_font_bold(Aspose::Slides::Foss::NullableBool::TRUE);
fmt.set_font_italic(Aspose::Slides::Foss::NullableBool::FALSE);
// Note: set_font_underline() takes TextUnderlineType, not NullableBool:
// fmt.set_font_underline(Aspose::Slides::Foss::TextUnderlineType::NONE);
لماذا لا يؤثر وضع لون النص على ذلك؟?
يجب عليك أيضًا وضع fill_type إلى SOLID قبل أن تضع اللون:
fmt.fill_format().set_fill_type(Aspose::Slides::Foss::FillType::SOLID);
fmt.fill_format().solid_fill_color().set_color(
Aspose::Slides::Foss::Color::from_argb(255, 200, 0, 0));هل يمكنني استخدام الرسومات أو SmartArt؟?
لا يتم تنفيذ الرسوم البيانية، SmartArt، أدوات OLE، والرسومات، والمعاملات، والعلاقات الخارجية، والمكروهات VBA، والتوقيعات الرقمية في هذا الإصدار.
هل هذه المكتبة آمنة؟?
كل واحد منهم Presentation الكائنات المستقلة: إنشاء واستخدام منفصل. Presentation الحالات من الأسلاك منفصلة آمنة طالما أنك لا تشارك واحد Presentation الكائنات عبر الأسلاك دون قفل خارجي.
كيف أضع صورة؟?
اقرأ بيوت الصورة واضغط عليها في prs.images(),ثم خلق أ PictureFrame:
#include <Aspose/Slides/Foss/presentation.h>
#include <fstream>
#include <vector>
std::ifstream file("logo.png", std::ios::binary);
std::vector<uint8_t> data((std::istreambuf_iterator<char>(file)),
std::istreambuf_iterator<char>());
auto& image = prs.images().add_image(data);
slide.shapes().add_picture_frame(
Aspose::Slides::Foss::ShapeType::RECTANGLE, 50, 50, 200, 150, image);