Како функционише FOSS у C++?

Како функционише FOSS у C++?

C ++ için aspose_slides_foss, CMake ile oluşturulan ve düzenleyen PowerPoint .pptx` dosyaları için ücretsiz bir MIT lisanslı kütüphane.

Adım adım rehberliği

  • Ne demek istiyorsun?

Adım 1: CMake aracılığıyla Kütüphane ekle

aspose_slides_foss ekle CMakeLists.txt` (C++20 derleyicisi gereklidir):

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)

Adım 2: Gerekli Başlıkları Ekle

İhtiyacınız olan sınıflar için başlıkları ekleyin:

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

3. Adım: Bir sunum yapın

Bir Presentation oluşturun ve bir boş slaytla başlayın, sonra kaydetin:

#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;
}

Adım 4: Metinle Şekil Ekle

Bir dikdörtgen eklemek için `slide.shapes().add_auto_shape (() ̋ kullanın, sonra metin içeriği ekleyecek şekilde ⌒text_frame (),->set_text ()) ̆ çağırın:

#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;
}

Adım 5: Bir doldurma uygula ve kaydet

Kaydetmeden önce şekle katı bir doldurma rengi koyun:

#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;
}
  • Ne demek istiyorsun?

Genel Sorunlar ve Çözümler

Bağlantı hataları tanımlanmamış referanslarla `target_link_libraries ((your_targets PRIVATE aspose_slides_foss) “) ve kütüphanenin başarılı bir şekilde getirilmesi için txt.txt’te bulunması.

Başlık dosyası bulunamadı <Aspose/Slides/Foss/...> ile başlayan tam yolu ekle. Run ⌒cmake –build` oluşturma dizininden, kaynak dizinde değil.

DesteklenmeyenOperasyonException eşdeğeri desteklenmemiş özellikler için Bazı özelliklere (grafik, animasyonlar, PDF ihracı) destek verilmez. Geçerli sınırlamaların listesini proje belgeleri ile kontrol edin.

İndeks ile slaytlara erişirken çökme Varsayılan Presentation her zaman indeks 0’da bir slayd oluşturur. Boş dosya yüklediyseniz veya tüm slaytanı kaldırdıysanız, ⌒prs.slides() [0]` menzilden dışarı olacaktır.

Sıkça Sorulan Sorular

Aspose_slides_foss için Microsoft Office gerekli mi?

Hayır. Kütüphane, Microsoft Office’e, COM otomasyonuna veya Windows API’lerine bağımlı olmadan C ++ dilinde .pptx dosyalarını yaratır ve okur.

Hangi derleyiciler ve C++ standartları desteklenir?

Kütüphane C ++ 20 veya daha yeni bir dil gerektirir. GCC 11+, Clang 13+ ve MSVC 2022 ile test edilmiştir.

Kütüphane ticari kullanım için ücretsiz mi?

Evet. MIT Lisansı altında yayınlandı. Ticari uygulamalar dahil olmak üzere herhangi bir amaç için kullanabilir, değiştirebilir ve yeniden dağıtabilirsiniz.

Mevcut bir PPTX dosyasını yükleyebilir miyim?

Evet. Dosya yolunu Presentation yapıcıya aktarın:

Presentation prs("existing.pptx");
prs.save("copy.pptx", SaveFormat::PPTX);

Nasıl birden fazla slayt ekleyebilirim?

prs.slides().add_empty_slide(layout) kullanın, sonra bir düzen elde edin ⌒prS.masters (()) [0].layouts_ slides (() [ 0]` .

Ayrıca bakınız:

  • C++ için FAQ Aspose.Slides FOSS
  • C ++‘de sunumlar nasıl oluşturulur?
  • C ++‘da Şekiller Nasıl Eklenir?
  • Başlamak Docs
  • API İpucu
 Türkçe