Compressão de PDF: exemplos de código

Usando uma API de alta velocidade, poderosa e segura para compactar documentos PDF em várias linguagens de programação

Como compactar arquivos PDF com a biblioteca Aspose.PDF

O Aspose.PDF suporta a compactação de PDF. A maneira pela qual a maior parte do tamanho do arquivo PDF pode ser reduzida é reduzindo o tamanho da incorporação de imagens no documento PDF. Além disso, podemos linearizar o documento para abrir a primeira página o mais rápido possível:

Invocar esse método na verdade não salva o documento. Pelo contrário, o documento só está preparado para ter uma estrutura otimizada, chame então Salvar para obter o documento otimizado.

Etapas para reduzir o tamanho do arquivo PDF


Você precisa da biblioteca Aspose.PDF para testar o código em seu ambiente.

  1. Abra um documento PDF usando o objeto Documento.
  2. Chame o método para otimização no objeto do documento, que remove objetos desnecessários e compacta imagens no arquivo PDF
  3. Salve o documento otimizado no novo caminho usando o método Save ().

Exemplo para C#: compactar documento PDF

Reduzindo o tamanho do documento PDF usando C#

Document pdfDocument = new Document(dataDir + "input.pdf");
pdfDocument.OptimizeResources();
pdfDocument.Save(dataDir + "output.pdf");

Como otimizar documentos PDF para a Web com o Aspose.PDF para Java

A linearização é um processo de tornar um arquivo PDF adequado para navegação on-line usando um navegador da web. Um arquivo PDF linearizado é estruturado de forma a permitir que a primeira página do arquivo PDF seja exibida em um navegador da web do usuário antes que todo o arquivo seja baixado do servidor da web. Isso torna a visualização na web mais rápida e o usuário não precisa esperar que o PDF inteiro seja carregado para começar a visualizar o documento. Usando o método Optimize, podemos:

  • abra a primeira página o mais rápido possível;
  • exibir a próxima página ou seguir por um link para a próxima página o mais rápido possível
  • exibir a página de forma incremental à medida que ela chega quando os dados de uma página são entregues em um canal lento (exiba primeiro os dados mais úteis);
  • permitem que a interação do usuário, como seguir um link, seja realizada mesmo antes de toda a página ser recebida e exibida.

Etapas para reduzir o tamanho do arquivo PDF via Java

  1. Abra um documento PDF usando o objeto Documento.
  2. Chame o método Otimize no objeto do documento, que remove objetos desnecessários e compacta imagens no arquivo PDF
  3. Salve o documento otimizado no novo caminho usando o método Save ().

Exemplo para Java: compactar documento PDF para a Web

Reduzindo o tamanho do documento PDF usando Java

Document pdfDocument = new Document(dataDir + "input.pdf");
// Optimize for web
pdfDocument.optimize();
pdfDocument.save(dataDir + "output.pdf");

Como remover ou nivelar anotações com o Aspose.PDF para C++

Adicionar anotações ao seu documento PDF naturalmente aumenta seu tamanho. As anotações podem ser removidas se não forem necessárias. Eles podem ser achatados, se necessário, mas não requerem modificações adicionais. Ambos os métodos diminuirão o tamanho do arquivo. Usando o método Flatten, podemos:

  • abra o documento o mais rápido possível;
  • exibir uma página como uma única entidade

Etapas para reduzir o tamanho do arquivo PDF via C++

  1. Crie um objeto de documento chamado documento que abra o arquivo PDF de entrada usando a função MakeObject.
  2. Percorra cada objeto de página no objeto do documento usando um loop para cada e um iterador baseado em intervalo chamado page.
  3. Percorra cada objeto de anotação no objeto de página usando um loop para cada e um iterador baseado em intervalo chamado anotação.
  4. Chame o método Flatten no objeto de anotação para mesclá-lo com o conteúdo da página e remover qualquer interatividade.
  5. Chame o método Salvar no objeto do documento para salvar o arquivo PDF atualizado.

Exemplo para C++: nivelar documento PDF

Remova anotações desnecessárias para reduzir o tamanho dos documentos PDF usando C++

// String for path name
String _dataDir("C:\\Samples\\");

// String for input file name
String infilename("OptimizeDocument.pdf");
// String for output file name
String outfilename("OptimizeDocument_out.pdf");

// Open document
auto document = MakeObject<Document>(_dataDir + infilename);

// Flatten annotations
for(auto page : document->get_Pages())
{
    for(auto annotation : page->get_Annotations())
    {
    annotation->Flatten();
    }
}
// Save updated document
document->Save(_dataDir + outfilename);

Sobre a API Aspose.PDF

Uma biblioteca de processamento de PDF para criar aplicativos multiplataforma com a capacidade de gerar, modificar, converter, renderizar, proteger e imprimir documentos sem usar o Adobe Acrobat. Ele suporta a conversão de vários formatos de arquivo em PDF, incluindo HTML, e a conversão de documentos PDF em vários formatos de saída. Os desenvolvedores podem renderizar facilmente todo o conteúdo HTML em uma única página PDF, bem como converter arquivos HTML com tags gráficas SVG em arquivos PDF marcados. A API PDF .NET oferece compactação, criação de tabelas, funções de gráfico e imagem, hiperlinks, tarefas de carimbo e marca d’água, controles de segurança estendidos e manuseio de fontes personalizado.