Bom dia, galera,
estou com uma duvida com relação ao pdfbox. O negócio é o seguinte, tenho que abrir um documento pdf e verificar o tamanho de todas as suas páginas. Eu já consegui fazer isso com o código abaixo:
doc = PDDocument.load( "c:\\temp\\teste.pdf" );
List allPages = doc.getDocumentCatalog().getAllPages();
for( int i=0; i<allPages.size(); i++ )
{
PDPage page = (PDPage)allPages.get( i );
//PDRectangle mediaBox = page.getMediaBox();
PDRectangle mediaBox = page.findCropBox();
//largura e altura em pontos
double largura = mediaBox.getWidth();
double altura = mediaBox.getHeight();
//considerando 72dpi. 1 polegada = 2.54mm
largura = Math.ceil(largura / 72 * 2.54f * 10) ;
altura = Math.ceil(altura / 72 * 2.54f * 10) ;
alturaTotal += altura;
}
O problema é que eu não sei qual a unidade de medida usada para os valores retornardos pelos métodos getWidth() e getHeigth().
Eu chutei que os valores são retornados em pontos e chutei também a resolução de 72dpi e funcionou. Eu consegui chegar nos valores corretos em milimetros para o tamanho de cada página. Esse calculo deu certo mesmo para documentos gerados com resolução de 1200dpi.
Essa é a minha duvida: posso considerar que o valor para a conversão será sempre de 72dpi? Procurei na documentação do pdfbox e não achei nada que me garantisse isso. Procurei também nos fontes do pdfbox e não achei nada.
O que vcs me dizem?
[]'s
Léo