Hoe werkt FOSS in C++?

Hoe werkt FOSS in C++?

aspose_slides_foss para C++ é uma biblioteca gratuita, licenciada pelo MIT para criar e editar arquivos PowerPoint ̋.pptx⌒ sem Microsoft Office necessário, construída com CMake .

Guia passo a passo

  • Não, não.

Passo 1: Adicionar a Biblioteca via CMake

Adicionar aspose_slides_foss ao seu CMakeLists.txt` (compilador C++20 necessário):

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: Incluir cabeçalhos exigidos

Incluir os cabeçalhos das classes que você precisa:

#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: Faça uma apresentação

Construir uma apresentação para começar com um slide em branco, e depois salvá-lo:

#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: Adicionar um formato com texto

Use `slide.shapes().add_auto_shape (() ̋ para inserir um retângulo, em seguida, chame ⌒text_frame (),->set_text ()) ∂ para adicionar conteúdo de texto:

#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: Aplicar um preenchimento e salvar

Defina uma cor de preenchimento sólido na forma antes de salvar:

#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;
}
  • Não, não.

Problemas comuns e soluções

Erros de link com referências indefinidas Certificar-se `target_link_libraries ((your_targets PRIVATE aspose_slides_foss) “) está no seu ̋CMakeLists.txt∂ e que a biblioteca foi obtida com êxito através do ̆FetchContent∂ .

Arquivo de cabeçalho não encontrado Incluir o caminho completo começando com <Aspose/Slides/Foss/...>. Execute ⌒cmake –build` a partir do diretório de construção, e não do diretório fonte.

`Não suportadoExcepção de operação ^ equivalente para recursos não suportados Alguns recursos (gráficos, animações, exportação PDF) não são suportadas. Verifique a documentação do projeto para obter a lista atual das limitações.

Crash quando acessar slides por índice O padrão Presentation sempre cria um diapositivo no índices 0. Se você carregar um arquivo vazio ou remover todos os diaspositivos, o ̋prs.slides() [0]` estará fora de alcance.

Perguntas Frequentes

O aspose_slides_foss requer o Microsoft Office?

Não. A biblioteca cria e lê arquivos .pptx nativamente em C++ sem dependência do Microsoft Office, da automação COM ou das APIs do Windows.

Que compiladores e padrões C++ são suportados?

A biblioteca requer C++20 ou posterior. É testada com GCC 11+, Clang 13+ e MSVC 2022.

A biblioteca é gratuita para uso comercial?

Sim, é lançado sob a licença MIT. Você pode usá-lo, modificá -lo e redistribuí -la para qualquer finalidade, incluindo aplicações comerciais.

Posso carregar um ficheiro PPTX existente?

Sim. Passe o caminho do ficheiro para o constructor Presentation:

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

Como adiciono vários slides?

Use prs.slides().add_empty_slide(layout) depois de obter um layout do ⌒prS.masters (()) [0].layouts_ slides (() [ 0]ヽ .

Ver também:

  • FAQ Aspose.Slides FOSS para C++
  • Como criar apresentações em C++
  • Como adicionar formas em C++
  • Começar Docs
  • Referência API
 Português