איך עושים עם FOSS ב-C++?
aspose_slides_foss per C++ è una libreria gratuita, con licenza MIT per creare ed modificare file PowerPoint ̋.pptx∂ senza Microsoft Office richiesto, costruito con CMake .
Guida passo-passo
- Non è vero.
Passo 1: Aggiungere la libreria tramite CMake
Aggiungere aspose_slides_foss al tuo CMakeLists.txt` (richiesto compilatore 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)Passo 2: includere gli intestazioni richieste
Includere le intestazioni per le classi di cui hai bisogno:
#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>Passo 3: Creare una presentazione
Costruire una `Presentazione ■ per iniziare con un’immagine vuota, quindi salvarla:
#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;
}Passo 4: Aggiungere una forma con testo
Utilizzare `slide.shapes().add_auto_shape (()⌒ per inserire un rettangolo, quindi chiamare ̋text_frame (())->set_text ((()ヽ per aggiungere contenuto di testo:
#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>
using namespace Aspose::Slides::Foss;
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;
}Passo 5: Applicare un riempimento e salvare
Imposta un colore di riempimento solido sulla forma prima di salvare:
#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>
using namespace Aspose::Slides::Foss;
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;
}- Non è vero.
Problemi comuni e soluzioni
Errori di linker con riferimenti indefiniti Assicurarsi che `target_link_libraries ((your_targets PRIVATE aspose_slides_foss) “) sia nel tuo ̋CMakeLists.txt∂ e che la libreria sia stata recuperata con successo tramite ̆FetchContent∂.
File di intestazione non trovato Includere il percorso completo che inizia con <Aspose/Slides/Foss/...>. Eseguire ̋cmake –build∂ dalla directory build, non dalla directory sorgente.
`Sostegno: Operazione eccezionale = equivalente per le funzionalità non supportate Alcune funzionalita’ (grafici, animazioni, esportazione PDF) non sono supportati. Controlla la documentazione del progetto per l’elenco attuale delle limitazioni.
Crash quando si accede alle diapositive per indice La presentazione ` predefinita crea sempre una diapozitiva all’indice 0. Se hai caricato un file vuoto o rimosso tutte le diapositure, ̋prs.slides() [0]∂ sarà fuori portata.
Domande frequenti
Aspose_slides_foss richiede Microsoft Office?
No. La biblioteca crea e legge file .pptx in C++ senza dipendenza da Microsoft Office, automazione COM o API di Windows.
Quali compilatori e standard C++ sono supportati?
La libreria richiede C++20 o successiva. È testata con GCC 11+, Clang 13+ e MSVC 2022.
La biblioteca è gratuita per uso commerciale?
Si. È rilasciato sotto la licenza MIT. Puoi usarlo, modificarlo e ridistribuirlo per qualsiasi scopo, comprese le applicazioni commerciali.
Posso caricare un file PPTX esistente?
Passare il percorso del file al costruttore Presentation:
Presentation prs("existing.pptx");
prs.save("copy.pptx", SaveFormat::PPTX);Come aggiungo più diapositive?
Utilizzare prs.slides().add_empty_slide(layout) dopo aver ottenuto un layout da ⌒prS.masters (())[0].layouts_ slides (() [0]` .
Vedi anche:
- FAQ Aspose.Slides FOSS per C++
- Come creare presentazioni in C++
- Come aggiungere forme in C++
- Iniziare Docs
- Referenza API