Classe PdfViewer
Contents
[
Hide
]
A classe Java PdfViewerExamples demonstra os principais fluxos de trabalho do visualizador disponíveis através da API Facades.
Decodificar todas as páginas do PDF
Use este fluxo de trabalho quando cada página do PDF de origem deve ser renderizada como uma imagem.
Etapas
- Crie e configure uma instância de
PdfViewer. - Vincule o PDF de origem com
bindPdf. - Chame
decodeAllPages()para renderizar o documento em umBufferedImagematriz. - Salve cada página decodificada em um arquivo de imagem de saída.
- Feche o arquivo PDF vinculado.
Exemplo Java
public static void decodeAllPages(Path inputFile, Path outputDir) throws Exception {
PdfViewer viewer = createViewer();
try {
viewer.bindPdf(inputFile.toString());
BufferedImage[] pages = viewer.decodeAllPages();
for (int index = 0; index < pages.length; index++) {
ImageIO.write(pages[index], "png", outputDir.resolve("decode_all_pages_" + (index + 1) + ".png").toFile());
}
} finally {
viewer.closePdfFile();
}
}
Decodificar uma página PDF específica
Use este fluxo de trabalho quando apenas uma página precisar ser renderizada para uma imagem.
Etapas
- Crie e configure uma instância de
PdfViewer. - Vincule o PDF de origem.
- Chame
decodePage()para a página que você deseja renderizar. - Salve a página decodificada em um arquivo de imagem de saída.
- Feche o visualizador.
Exemplo Java
public static void decodeSpecificPage(Path inputFile, Path outputFile) throws Exception {
PdfViewer viewer = createViewer();
try {
viewer.bindPdf(inputFile.toString());
ImageIO.write(viewer.decodePage(1), "png", outputFile.toFile());
} finally {
viewer.close();
}
}
Inspecionar metadados PDF
Use este fluxo de trabalho quando precisar de informações do documento relacionadas ao visualizador antes da renderização ou impressão.
Etapas
- Crie e configure uma instância de
PdfViewer. - Vincule o PDF de origem.
- Leia a contagem de páginas, o tipo de coordenada e a resolução de renderização.
- Use ou imprima os valores recuperados.
- Feche o arquivo PDF vinculado.
Exemplo Java
public static void inspectPdfMetadata(Path inputFile) {
PdfViewer viewer = createViewer();
try {
viewer.bindPdf(inputFile.toString());
System.out.println("Page count: " + viewer.getPageCount());
System.out.println("Coordinate type: " + viewer.getCoordinateType());
System.out.println("Resolution: " + viewer.getResolution());
} finally {
viewer.closePdfFile();
}
}
Inspecionar as configurações do visualizador vinculadas
Use este fluxo de trabalho quando precisar confirmar ou ajustar o comportamento do visualizador após vincular o PDF.
Etapas
- Crie e configure uma instância de
PdfViewer. - Vincule o PDF de origem.
- Defina opções do visualizador, como redimensionamento automático, rotação automática e visibilidade da caixa de diálogo de impressão.
- Leia as configurações do visualizador ativo e a contagem de páginas.
- Feche o visualizador.
Exemplo Java
public static void inspectBoundViewerSettings(Path inputFile) {
PdfViewer viewer = createViewer();
try {
viewer.bindPdf(inputFile.toString());
viewer.setAutoResize(true);
viewer.setAutoRotate(true);
viewer.setPrintPageDialog(false);
System.out.println("Page count: " + viewer.getPageCount());
System.out.println("Print as image: " + viewer.getPrintAsImage());
System.out.println("Auto resize: " + viewer.getAutoResize());
System.out.println("Auto rotate: " + viewer.getAutoRotate());
} finally {
viewer.close();
}
}