Aspose.Slides FOSS for C++ MIT lisanslı bir kütüphane olup PowerPoint .pptx dosyalarıyla çalışmak için kullanılır. CMake FetchContent aracılığıyla entegre edin ve Microsoft Office ya da herhangi bir tescilli çalışma zamanı kurmadan sunumları oluşturma, okuma ve düzenleme işlemlerine hemen başlayın.
Kütüphane, PowerPoint’in kendisi tarafından kullanılan kavramsal model olan Presentation, Slide, ShapeCollection, TextFrame, Paragraph ve Portion etrafında inşa edilmiş bir Presentation API’si sunar. Slayt ekleyip kaldırabilir, AutoShape’ler, Tablolar ve Bağlayıcılar ekleyebilir, metni karakter düzeyinde kalın, italik, yazı tipi boyutu ve renk ile biçimlendirebilir, katı veya degrade dolgu uygulayabilir ve görsel efektler (gölge, parıltı, bulanıklık, yansıma) ekleyebilirsiniz.
RAII semantiği güvenilir kaynak temizliğini sağlar: Presentation yıkıcı tüm iç durumu otomatik olarak serbest bırakır. Yükleme sırasında karşılaşılan bilinmeyen XML parçaları kaydetme sırasında olduğu gibi korunur, böylece round‑tripping kütüphanenin henüz anlamadığı içeriği asla yok etmez. Kütüphane C++20 uyumlu bir derleyici gerektirir. Ek özellikler için Aspose.Slides for C++ enterprise edition bakınız.
.pptx dosyalarını Presentation() veya Presentation(path) aracılığıyla açın.SlideCollection‘i add_empty_slide(), remove() ve remove_at() ile yönetin.ShapeType geometrileri add_auto_shape() aracılığıyla ekleyin.add_connector() aracılığıyla.NotesSlideManager aracılığıyla okuyun ve yazın.pres.comment_authors() üzerinden yorum dizilerini yineleyerek ve ilişkili yorumlarına erişin.Portion nesnelerine kalın, italik, yazı tipi boyutu ve renk uygulayın PortionFormat aracılığıyla.FillFormat ve FillType kullanarak ayarlayın.EffectFormat aracını kullanın.ParagraphFormat ve set_alignment() kullanarak ayarlayın.Aspose.Slides FOSS, CMake FetchContent aracılığıyla bütünleşir, bu yüzden manuel indirme veya sistem genelinde kurulum gerekmez. Kütüphane, projenizle birlikte kaynaktan derlenir.
API, PowerPoint’in kendi nesne modelini (Presentation, Slide, ShapeCollection, TextFrame, Paragraph, Portion) yansıtır, bu sayede PowerPoint nesne modeline aşina olan herkes kütüphaneyi hemen kullanabilir. MIT lisanslıdır, GitHub’da açık kaynaklıdır ve C++20 uyumlu bir derleyici gerektirir.
RAII, Presentation yıkıcısının nesne kapsam dışına çıktığında tüm kaynakları otomatik olarak serbest bırakmasını sağlar. add_auto_shape() bir ShapeType enum alır, ardından x/y konumu ve genişlik/yükseklik noktalar cinsinden — şeklin text_frame metin içeriğini ayarlamaya erişim sağlar.
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() {
Aspose::Slides::Foss::Presentation prs;
auto& slide = prs.slides()[0];
// Add a rectangle AutoShape
auto& shape = slide.shapes().add_auto_shape(
Aspose::Slides::Foss::ShapeType::RECTANGLE,
50, 50, 400, 150
);
shape.text_frame()->set_text("Hello, Aspose.Slides!");
prs.save("output.pptx", Aspose::Slides::Foss::SaveFormat::PPTX);
return 0;
}
```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)
Metin biçimlendirme, Portion seviyesinde çalışır — karakter akışının en küçük birimi. Kaydedilen dosyayı açın, ilk paragrafın ilk bölümüne gidin ve yazı tipi özelliklerini doğrudan ayarlayın. Şekil doldurma bağımsızdır: doldurma türünü katı olarak ayarlayın ve bir renk atayın.
#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;
}
```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;
}
Microsoft Office gerektirmeden PowerPoint .pptx sunumlarını oluşturmak, okumak ve düzenlemek için ücretsiz, MIT lisanslı bir C++ kütüphanesidir.
.pptx, desteklenen okuma/yazma formatıdır. PDF, HTML, SVG veya görüntülere dışa aktarma bu sürümde mevcut değildir.
Hayır. Aspose.Slides FOSS, Microsoft Office, COM otomasyonu veya herhangi bir tescilli çalışma zamanına bağımlılığı olmayan bağımsız bir C++ kütüphanesidir.
Kütüphaneyi doğrudan GitHub’dan entegre etmek için CMake FetchContent kullanın. Kütüphane, C++20 uyumlu bir derleyici gerektirir.
Evet. Kütüphane, EffectFormat API’si aracılığıyla herhangi bir şekil nesnesinde dış gölge, parıltı, bulanıklık ve yansıma efektlerini destekler.
Evet. Presentation yıkıcı, tüm iç durumu otomatik olarak serbest bırakır, bu yüzden açık bir temizlik gerekmez.
Hayır. Yükleme sırasında karşılaşılan bilinmeyen XML parçaları, kaydedilirken tam olarak korunur, böylece kütüphanenin henüz anlamadığı içerik asla kaybolmaz.
Kütüphane MIT lisanslıdır ve GitHub’da barındırılmaktadır. Hata raporları ve çekme istekleri memnuniyetle karşılanır.