Gerar PDF via API C++ de código aberto
Biblioteca C++ de código aberto para criar, editar, manipular e analisar arquivos PDF.
O que é PDF-Writer?
PDF-Writer é uma biblioteca C++ de código aberto que suporta totalmente a criação, edição, manipulação e análise de arquivos PDF, bem como fluxos. A biblioteca foi desenvolvida com o principal método “one-off” de geração de arquivos PDF. É por isso que está funcionando rápido e usa pouca memória, independentemente do tamanho do arquivo. Portanto, é melhor criar arquivos PDF pequenos ou gerar documentos PDF maiores.
Adicionar conteúdo a um PDF é sempre muito importante e ajuda os desenvolvedores na geração de PDFs personalizados. A biblioteca inclui suporte para vários recursos importantes para o processamento de arquivos PDF, como criação de páginas PDF, operadores PDF para desenho de conteúdo, incorporação de imagens JPG ou PNG e TIFF, modificação de PDF, mesclagem ou divisão de PDFs, renderização de arquivos PDF, extração de dados de PDF , suporte a texto Unicode, suporte a fontes TrueType e OpenType e muito mais.
Introdução ao PDF-Writer
O método recomendado para criar a biblioteca e o aplicativo de exemplo é usar o CMake. você pode obtê-lo no site do CMake. A biblioteca depende de Zlib, LibTiff, LibJpeg, FreeType e LibPng. Isso significa que você deve compilá-los também, antes de usar a biblioteca PDF em um contexto vinculado.
Você também pode instalá-lo manualmente; baixe os arquivos de versão mais recentes diretamente do repositório GitHub.
Geração e modificação de PDF via C++
Os desenvolvedores de software podem usar a API PDF-Writer para gerar um novo arquivo PDF dentro de seus próprios aplicativos C++. A biblioteca também facilita os desenvolvedores a modificá-la de acordo com suas próprias necessidades. Você pode facilmente incorporar imagens JPG, PNG e TIFF, definir objetos reutilizáveis, incorporar páginas de PDFs existentes, bem como texto com facilidade. Você pode usar as páginas de PDFs existentes anexando-as como páginas ao PDF ou como partes para incluir nos gráficos de uma página recém-criada. Usando as etapas a seguir, você pode gerar PDF facilmente.
Gerar PDF em C++
- Crie uma instância do objeto PDFWriter
- Abra um arquivo PDF para escrever
- Agora vá em frente e adicione conteúdo ao PDF.
- Salvar documento PDF
Geração de PDF em C++
// Create an instance of the PDFWriter objec
PDFWriter pdfWriter;
// Open a PDF file for writing
pdfWriter.StartPDF("c:\\myFile.pdf",ePDFVersion13);
// ...add content to PDF file...
pdfWriter.EndPDF();
Adicionando novas páginas ao documento PDF
Com a biblioteca PDF-Writer é possível adicionar novas páginas e definir suas dimensões dentro de um documento PDF. É muito fácil e requer apenas algumas linhas de código C++ para adicionar novas páginas a um arquivo PDF. A biblioteca também dá aos desenvolvedores o poder de modificar uma página existente ou excluir uma página. Também é possível adicionar conteúdo a uma página PDF já criada.
Incorporando imagens em documentos PDF
A biblioteca PDF-Writer oferece suporte para incorporar imagens TIFF, PNG e JPG, bem como páginas PDF. Existem métodos de alto nível que são gerais para qualquer tipo de imagem. Além disso, existem alguns métodos de nível inferior para usos avançados das imagens. Ele forneceu suporte para imagens JPG através do decodificador DCT nativo, PNG através de decodificação com LibPng e Imagens TIFF é através de codificação/decodificação com a ajuda de LibTiff.
Incorporação de imagens em PDF via C++
pdfWriter.StartPDF("HighLevelImages.PDF",ePDFVersion13);
PDFPage* page = new PDFPage();
page->SetMediaBox(PDFRectangle(0,0,595,842));
PageContentContext* cxt = pdfWriter.StartPageContentContext(page);
cxt->DrawImage(10,10,"soundcloud_logo.jpg"));
pdfWriter.EndPageContentContext(cxt);
pdfWriter.WritePageAndRelease(page);
pdfWriter.EndPDF();
Juntando vários documentos PDF
Usando a API de combinação de PDF de código aberto, os usuários podem combinar rapidamente vários documentos PDF sem dependências externas usando apenas algumas linhas de código. O PDF-Writer oferece aos desenvolvedores de software o poder de gerar um novo documento PDF a partir dos arquivos PDF existentes. Ele ajuda os usuários a armazenar e revisar o documento PDF com mais facilidade.
Mesclando conteúdo de páginas PDF via C++
PDFPage* page = new PDFPage();
page->SetMediaBox(PDFRectangle(0,0,595,842));
PDFPageRange singlePageRange;
singlePageRange.mType = PDFPageRange::eRangeTypeSpecific;
singlePageRange.mSpecificRanges.push_back(ULongAndULong(0,0));
pdfWriter.MergePDFPagesToPage(page,"C:\\Other2PagePDF.PDF",singlePageRange);
pdfWriter.WritePageAndRelease(page);