1. Produits
  2.   Aspose.Slides
  3.   Aspose.Slides FOSS for C++

Aspose.Slides FOSS for C++

Créez, lisez et modifiez des présentations PowerPoint depuis C++ — gratuit et open‑source, aucune dépendance à Office requise.

Bibliothèque C++ Open Source pour PowerPoint Presentations

Aspose.Slides FOSS pour C++ est une bibliothèque MIT-licencée pour travailler avec les fichiers PowerPoint .pptx. Intégrer via CMake FetchContent et commencer immédiatement à créer, lire et éditer des présentations sans installer Microsoft Office ou tout temps de fonctionnement propriétaire.

La bibliothèque expose une API de présentation construite autour des Presentation, Slide , ShapeCollection et Paragraph le modèle conceptuel utilisé par PowerPoint lui-même. Ajouter et supprimer les pistes, insérer AutoShapes, tables et connecteurs, formater le texte au niveau du caractère avec audacieux, italic, taille et couleur de la phonture, appliquer des remplis solides ou gradients, et ajouter des effets visuels (ombre, lumière, bleu, réflexion).

Les sémantiques RAII assurent une nettoyage fiable des ressources: le destructeur Presentation libère automatiquement tout état interne. Des parties XML inconnues rencontrées pendant la charge sont conservées verbatim sur sauvetage, de sorte que les roulements ne détruisent jamais le contenu que la bibliothèque n’a pas encore compris. La bibliotheque nécessite un compilateur conforme à C++20. Pour plus de fonctionnalités, voir Aspose.Slides for C++ enterprise edition.

Présentation et Slide API

  • ** Créer et ouvrir PPTX:** Crée de nouvelles présentations ou ouvre les fichiers existants .pptx via Presentation() ou Presentation(path).
  • Add and remove slides: Gérer programmativement le SlideCollection avec add_empty_slide(), remove() et remove_at().
  • Autosignatures: Insérer les rectangles, les ellipses, la ligne et d’autres géométries par ShapeType.
  • Tables et connecteurs: Ajouter des formes de table structurées et des lignes de connexion entre les formes via add_connector().
  • Notes de haut-parleur: Lire et écrire les notes de son par slide à travers NotesSlideManager.
  • Commentaires lus: Les commentaires d’accès sont lancés en itérant pres.comment_authors() et leurs commentaire associés.

Où Aspose.Slides FOSS peut être utilisé

  • Génération de rapport: Construire des plaques en slide marquées à partir de sources de données sans Office.
  • ** Automatisation des échantillons:** Remplissez les modèles PPTX avec un contenu dynamique dans les pipelines CI/CD.
  • Migration de contenu: Lire les présentations existantes et les slides de restructuration ou de re-style.
  • ** Systèmes intégrés:** Traitement des fichiers PPTX dans les environnements critiques de performance ou limités par les ressources.
  • ** Traitement de batch:** Applicez des changements de formatage uniques dans les grandes bibliothèques de déchi.

Formatisation de texte et effets visuels

  • ** Formatisation au niveau du caractère:** Apply bold, italic, font size, and color to individual Portion objects via PortionFormat.
  • Fulls solides et gradients: Fillez la forme à une couleur solide ou gradent linéaire multi-stop en utilisant FillFormat et FillType.
  • Scenne et éclair effets: Application de l’ombre extérieure, éclipse, bleu, et réflexion à toute forme via EffectFormat.
  • ** Alignement par paragraphe:** Sélectionnez la gauche, le centre, la droite ou justifiez l’alignment par alinéa en utilisant ParagraphFormat et set_alignment().
  • Round-trip safe: Les parties XML inconnues sont conservées verbatim sur la réinscription.

Expérience de développeur

Aspose.Slides FOSS s’intégrera via CMake FetchContent, donc aucune téléchargement manuelle ou installation système n’est nécessaire.

L’API reflète le modèle d’objet de PowerPoint (Presentation, Slide , ShapeCollection ، TextFrame et Paragraph), donc tout le monde qui connaît le model d’object Powerpoint peut utiliser immédiatement la bibliothèque.

Créer une présentation et ajouter un format

RAII assure que le destructeur Presentation libère automatiquement tous les ressources lorsque l’objet sort de portée. add_auto_shape() prend un enum ShapeType, puis x/y position et largeur/altitude dans les points - la forme text_frame fournit accès à la configuration du contenu texte.

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)
#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>

int main() ```cmake
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)

Formater le texte et appliquer un effet de remplissage

Le formatage de texte fonctionne au niveau Portion - la plus petite unité d’un cours de caractères. Ouvrez le fichier sauvé, navigez vers la première partie du premier paragraphe et définissez les propriétés des phontres directement.

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

namespace asf = Aspose::Slides::Foss;

int main() ```cpp
#include <Aspose/Slides/Foss/presentation.h>

namespace asf = Aspose::Slides::Foss;

int main() {
    asf::Presentation prs("output.pptx");
    auto& shape = prs.slides()[0].shapes()[0];
    auto& portion = shape.text_frame()
        ->paragraphs()[0].portions()[0];

    // Bold, 18pt text
    portion.portion_format().set_font_bold(asf::NullableBool::TRUE);
    portion.portion_format().set_font_height(18);

    // Solid background fill on the shape
    shape.fill_format().set_fill_type(asf::FillType::SOLID);

    prs.save("formatted.pptx", asf::SaveFormat::PPTX);
    return 0;
}

Foire aux questions

Qu’est-ce que Aspose.Slides FOSS pour C++ ?

C’est une bibliothèque gratuite, MIT-licencée C++ pour créer, lire et éditer des présentations PowerPoint .pptx sans nécessiter Microsoft Office.

Quels formats de fichiers sont soutenus ?

.pptx est le format de lecture/écriture supporté. Exportation à PDF, HTML, SVG ou images n’est pas disponible dans cette édition.

Vous avez besoin de Microsoft Office ou PowerPoint ?

Aspose.Slides FOSS est une bibliothèque C++ indépendante sans dépendance sur Microsoft Office, l’automatisation COM ou tout temps de fonctionnement propriétaire.

Comment l’installer ?

Utilisez CMake FetchContent pour intégrer la bibliothèque directement à partir de GitHub. La bibliotheque nécessite un compilateur conforme C++20.

Puis-je appliquer des effets visuels comme l’ombre et le rayonnement ?

Oui. La bibliothèque soutient les effets d’ombre extérieure, de lumière, du blour et des réflexions sur n’importe quel objet de forme via l’API EffectFormat.

La bibliothèque utilise-t-elle le RAII pour la gestion des ressources ?

Oui. le destructeur Presentation libère tout état interne automatiquement, donc aucune nettoyage explicite n’est nécessaire.

Un PPTX va-t-il détruire un contenu inconnu ?

Les parties XML inconnues rencontrées pendant la charge sont conservées verbatim sur sauvegarde, de sorte que le contenu que la bibliothèque ne comprend pas encore n’est jamais perdu.

Où puis-je trouver le code source ?

La bibliothèque est MIT-licencée et hébergée sur GitHub. rapports de bug et demandes de pull sont les bienvenus.

  

Ressources de support et d'apprentissage

 Français