Converter PDF para formatos PDF/A
Aspose.PDF for Java permite converter um arquivo PDF em um arquivo PDF compatível com PDF/A. Antes de fazer isso, o arquivo deve ser validado. Este artigo explica como.
Por favor, note que seguimos a Adobe Preflight para validar a conformidade com PDF/A. Todas as ferramentas do mercado têm sua própria “representação” da conformidade com PDF/A. Por favor, confira este artigo sobre ferramentas de validação de PDF/A para referência. Escolhemos os produtos da Adobe para verificar como o Aspose.PDF produz arquivos PDF porque a Adobe está no centro de tudo o que está relacionado a PDF.
Antes de converter o PDF em um arquivo compatível com PDF/A, valide o PDF usando o método de validação. O resultado da validação é armazenado em um arquivo XML e, em seguida, este resultado também é passado para o método de conversão. Você também pode especificar a ação para os elementos que não podem ser convertidos usando a enumeração ConvertErrorAction.
Conversão de PDF para PDF/A_1b
O seguinte trecho de código mostra como converter arquivos PDF para PDF/A-1b compatível.
// Abrir documento
Document document = new Document(DATA_DIR + "PDFToPDFA.pdf");
// Converter para documento compatível com PDF/A
// Durante o processo de conversão, a validação também é realizada
document.convert(DATA_DIR + "log.xml", PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);
// Salvar documento de saída
document.save(DATA_DIR + "PDFToPDFA_out.pdf");
document.close();
Para realizar apenas a validação, use a seguinte linha de código:
// Abrir documento
Document document = new Document(DATA_DIR + "ValidatePDFAStandard.pdf");
// Validar PDF para PDF/A-1a
if (document.validate(DATA_DIR + "validation-result-A1A.xml", PdfFormat.PDF_A_1B)) {
System.out.println("Válido");
} else {
System.out.println("Não válido");
}
document.close();
Conversão de PDF para PDF/A_3b
A partir do Aspose.PDF for Java 9.3.0, a API também suporta a conversão de arquivos PDF para o formato PDF/A_3b.
// Abrir documento
Document document = new Document(DATA_DIR + "PDFToPDFA.pdf");
// Converter para documento compatível com PDF/A
// Durante o processo de conversão, a validação também é realizada
document.convert(DATA_DIR + "log.xml", PdfFormat.PDF_A_3B, ConvertErrorAction.Delete);
// Salvar documento de saída
document.save(DATA_DIR + "PDFToPDFA_out.pdf");
document.close();
Conversão de PDF para PDF/A_3a
A partir do Aspose.PDF for Java 10.6.0, a API também suporta a conversão de arquivos PDF para o formato PDF/A_3a.
// Abrir documento
Document document = new Document(DATA_DIR + "PDFToPDFA.pdf");
// Converter para documento compatível com PDF/A
// Durante o processo de conversão, a validação também é realizada
document.convert("file.log", PdfFormat.PDF_A_3A, ConvertErrorAction.Delete);
// Salvar documento de saída
document.save(DATA_DIR + "PDFToPDFA_out.pdf");
document.close();
Conversão de PDF para PDF/A_2a
A partir do lançamento do Aspose.PDF for Java 10.2.0, a API oferece o recurso de converter arquivos PDF para o formato PDF/A3.
public static void ConvertPDFtoPDFa2a() {
// Abrir documento
Document pdfDocument = new Document(_dataDir + "PDFToPDFA.pdf");
// Converter para documento compatível com PDF/A
// Durante o processo de conversão, a validação também é realizada
pdfDocument.convert("file.log", PdfFormat.PDF_A_2A, ConvertErrorAction.Delete);
// Salvar documento de saída
pdfDocument.save(_dataDir + "PDFToPDFA_out.pdf");
}
Conversão de PDF para PDF/A_3U
A partir do lançamento do Aspose.PDF for Java 17.2.0, a API oferece o recurso de converter arquivos PDF para o formato PDF/A_3U.
public static void ConvertPDFtoPDFa3u() {
// Abrir documento
Document pdfDocument = new Document(_dataDir + "PDFToPDFA.pdf");
// Converter para documento compatível com PDF/A
// Durante o processo de conversão, a validação também é realizada
pdfDocument.convert("file.log", PdfFormat.PDF_A_3U, ConvertErrorAction.Delete);
// Salvar documento de saída
pdfDocument.save(_dataDir + "PDFToPDFA_out.pdf");
}
Criar PDF/A-3 e anexar arquivo XML
Aspose.PDF para Java oferece a funcionalidade de converter arquivos PDF para o formato PDF/A e também suporta as capacidades de adicionar arquivos como anexo ao documento PDF. Caso você tenha a necessidade de anexar arquivos ao formato de conformidade PDF/A, recomendamos usar o valor PDF_A_3A da enumeração com.aspose.pdf.PdfFormat, o PDF/A_3a é o formato que fornece a funcionalidade de anexar qualquer formato de arquivo como anexo a um arquivo compatível com PDF/A. No entanto, uma vez que o arquivo está anexado, você deve convertê-lo novamente para o formato Pdf-3a, a fim de corrigir os metadados. Por favor, dê uma olhada no trecho de código a seguir.
public static void ConvertPDFtoPDFa3u_attachXML() {
Document doc = new Document();
// adicionar página ao arquivo PDF
doc.getPages().add();
// carregar arquivo XML
FileSpecification fileSpecification = new FileSpecification(_dataDir + "attachment.xml", "Arquivo xml de exemplo");
// Adicionar anexo à coleção de anexos do documento
doc.getEmbeddedFiles().add(fileSpecification);
// realizar conversão para PDF/A_3a
doc.convert(_dataDir + "log.xml", PdfFormat.PDF_A_3A/* ou PDF_A_3B */, ConvertErrorAction.Delete);
// salvar arquivo PDF final
doc.save(_dataDir + "attached_PDFA_3A.pdf");
}
Tente converter PDF para PDF/A online
Aspose.PDF para Java apresenta a você o aplicativo online gratuito “PDF para PDF/A-1A”, onde você pode tentar investigar a funcionalidade e a qualidade com que ele funciona.