Este breve tópico aborda como compactar PDF em Java juntamente com informações detalhadas sobre as etapas de configuração completas e configurações de ambiente, incluindo informações sobre as classes necessárias a serem usadas. Você pode facilmente usar chamadas de API simples em código Java para reduzir o tamanho do arquivo PDF e salvá-lo em disco ou em fluxo de memória. Você verá como você pode usar diferentes opções de compactação disponíveis na classe OptimizationOptions para obter compactação.
Etapas para compactar PDF em Java
- Adicione a referência de biblioteca Aspose.PDF for Java do repositório Maven para compactar o arquivo PDF
- Inclua a referência ao namespace Aspose.PDF em seu projeto para compactar PDF
- Crie Document class para carregar o arquivo PDF de origem
- Instanciar o objeto de classe OptimizationOptions para configurar a compactação do arquivo PDF e definir diferentes configurações de otimização de PDF
- Use o método optimizeResources para compactar PDF em Java e salvar PDF em disco
As etapas de exemplo acima em Java reduzem o tamanho do PDF adotando as etapas definidas em ordem. O processo começará adicionando a referência da API usando o repositório Maven e importando os namespaces necessários. Em seguida, carregaremos o arquivo PDF de origem usando o objeto da classe Document para realizar a compactação. Para definir diferentes opções de compactação para PDF, o objeto OptimizationOptions class será usado. Definiremos opções para compactar imagens e qualidade de imagem PDF antes de chamar o método optimizeResources para aplicar as configurações. Por fim, o PDF compactado será salvo no disco ou no fluxo de memória.
Código para compactar PDF em Java
import com.aspose.pdf.Document; | |
import com.aspose.pdf.optimization.OptimizationOptions; | |
import com.aspose.pdf.License; | |
public class CompressPDFFile { | |
public static void main(String[] pdfCompressArgs) throws Exception { | |
// Setting the product license to Compress PDF in Java | |
License lic = new License(); | |
lic.setLicense("Aspose.Total.lic"); | |
// Load source PDF document for compression | |
Document CompressPdfDocument = new Document("Sample.pdf"); | |
// Optimize PDF document.Note that this method cannot guarantee document shrinking and depends | |
// on content of PDF | |
OptimizationOptions PdfoptimizeOptions = new OptimizationOptions(); | |
// Set CompressImages option | |
PdfoptimizeOptions.getImageCompressionOptions().setCompressImages(true); | |
// Set the image quality option | |
PdfoptimizeOptions.getImageCompressionOptions().setImageQuality(50); | |
// Applying set options on PDF resources | |
CompressPdfDocument.optimizeResources(PdfoptimizeOptions); | |
// Save the compressed PDF document | |
CompressPdfDocument.save("CompressPdf.pdf"); | |
} | |
} |
O exemplo acima em Java compacta o tamanho do PDF usando poucas linhas de código e interface de API simples. O OptimizationOptions é capaz de aplicar diferentes configurações de compactação, incluindo LinkDuplicateStreams, RemovePrivateInfo, RemoveUnusedStreams, MaxResolution, ImageEncoding, RemoveUnusedObjects e muitos outros usando os respectivos métodos de configuração. Observe que, se o PDF de origem tiver um conteúdo que possa ser referido usando as configurações acima, ele contribuirá para a compactação do PDF se as propriedades acima forem usadas.
Neste tópico, vimos que para desenvolver um código Java compactador de PDF pode ser facilmente usado com a ajuda de simples chamadas de API. Se você estiver interessado em dividir o PDF em páginas separadas, consulte o artigo como dividir PDF por páginas em Java.