Casos de Uso

Casos de Uso

Este guia demonstra casos de uso reais para Aspose.PDF FOSS para C++, incluindo geração de documentos, conversão de PDF para imagem, extração de texto, distribuição segura e AcroForm coleta de dados. A biblioteca se vincula apenas à biblioteca padrão do C++ e requer um compilador C++20.

Geração de Documentos

Crie um PDF do zero adicionando páginas a um novo Document e salvando o resultado. Esse padrão sustenta a geração de faturas, impressão de certificados e pipelines de produção de extratos:

#include <aspose/pdf/document.hpp>

int main() {
    Aspose::Pdf::Document doc;
    doc.Pages().Add();
    doc.SetTitle("Monthly Report");
    doc.Save("report.pdf");
}

Conversão de PDF para Imagem

Renderize uma página para uma imagem raster para miniaturas, saída pronta para impressão ou linhas de base de regressão visual. PngDevice, JpegDevice, BmpDevice e TiffDevice processam cada um uma página por vez em uma determinada resolução:

#include <aspose/pdf/document.hpp>
#include <aspose/pdf/png_device.hpp>
#include <aspose/pdf/resolution.hpp>
#include <fstream>

int main() {
    Aspose::Pdf::Document doc("input.pdf");
    Aspose::Pdf::Devices::PngDevice png(Aspose::Pdf::Devices::Resolution(150));
    std::ofstream out("page1.png", std::ios::binary);
    png.Process(doc.Pages()[1], out);
}

Extração de Texto e Indexação

Extrair o texto completo de um documento com TextAbsorber para indexação de busca, pipelines de mineração de dados ou verificação automática de conteúdo em suítes de teste:

#include <aspose/pdf/document.hpp>
#include <aspose/pdf/text_absorber.hpp>
#include <iostream>

int main() {
    Aspose::Pdf::Document doc("input.pdf");
    Aspose::Pdf::Text::TextAbsorber absorber;
    absorber.Visit(doc);
    std::cout << absorber.Text() << "\n";
}

Distribuição Segura de Documentos

Criptografar um documento com senhas de usuário e proprietário separadas antes da distribuição. A senha de usuário é necessária para abrir o arquivo; a senha de proprietário controla permissões como impressão e extração de conteúdo:

#include <aspose/pdf/document.hpp>

int main() {
    Aspose::Pdf::Document doc("report.pdf");
    doc.Encrypt("user-password", "owner-password",
                Aspose::Pdf::Permissions(),
                Aspose::Pdf::CryptoAlgorithm::AESx256);
    doc.Save("report-secured.pdf");
}

AcroForm Coleta de Dados

Ler os valores enviados de volta a partir de um formulário PDF preenchido iterando Form.Fields() e imprimindo o nome de cada campo e seu valor atual — útil para processar formulários de inscrição preenchidos sem um servidor de submissão de formulários separado:

#include <aspose/pdf/document.hpp>
#include <aspose/pdf/forms/form.hpp>
#include <iostream>

int main() {
    Aspose::Pdf::Document doc("submitted-form.pdf");
    auto& form = doc.Form();
    for (auto* field : form.Fields()) {
        std::cout << field->PartialName() << " = " << field->Value() << "\n";
    }
}

Ver também

 Português