Συχνές ερωτήσεις
Συχνές ερωτήσεις
Πώς μπορώ να δημιουργήσω και να συνδέσω το 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;?
Τα Slides είναι μια συλλογή μηδενικής βάσης που διατίθεται μέσω prs.slides():
auto& slides = prs.slides();
auto& first_slide = slides[0];
auto count = slides.size();Πώς μπορώ να προσθέσω ένα δεύτερο slide;?
Χρησιμοποιήστε 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);Πώς μπορώ να ρυθμίσω το χρώμα του σάκχαρου;?
Το χρώμα του φόντου Slide δεν εκτίθεται στο τρέχον API. BaseSlide και Slide Δεν έχετε ένα background() Αυτή η δυνατότητα δεν είναι διαθέσιμη σε αυτή την έκδοση της βιβλιοθήκης.
Πώς χρησιμοποιώ NullableBool?
NullableBool είναι ένα τριακόσιο enum που χρησιμοποιείται για τη μορφοποίηση ιδιοτήτων. 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 Το αντικείμενο διαμέσου των αλυσίδων χωρίς εξωτερικό κλειδί.
Πώς μπορώ να βάλω μια εικόνα;?
Διαβάστε τα bytes εικόνας και προσθέστε τους σε 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);