圖像的頁碼我使用的代碼從下面的鏈接來渲染圖像檢索PDF - iText的
下面是我嘗試守則塊。我實際上在做的是找到圖像的DPI,如果圖像的dpi低於300,則將其寫入文本文件。
NOW,我也想寫這些圖片在PDF中的位置。我如何獲得該圖像的頁碼?
try {
String filename;
FileOutputStream os;
PdfImageObject image = renderInfo.getImage();
BufferedImage img = null;
String txtfile = "results/results.txt";
PdfDictionary imageDict = renderInfo.getImage().getDictionary();
float widthPx = imageDict.getAsNumber(PdfName.WIDTH).floatValue();
float heightPx = imageDict.getAsNumber(PdfName.HEIGHT).floatValue();
float widthUu = renderInfo.getImageCTM().get(Matrix.I11);
float heigthUu = renderInfo.getImageCTM().get(Matrix.I22);
float widthIn = widthUu/72;
float heightIn = heigthUu/72;
float imagepdi = widthPx/widthIn;
filename = String.format(path, renderInfo.getRef().getNumber(), image.getFileType());
System.out.println(filename+"-->"+imagepdi);
if(imagepdi < 300){
File file = new File("C:/Users/Abhinav/workspace/itext/results/result.txt");
if(filename != null){
if (!file.exists()) {
file.createNewFile();
}
FileWriter fw = new FileWriter(file.getAbsoluteFile(),true);
file.setReadable(true, false);
file.setExecutable(true, false);
file.setWritable(true, false);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(filename);
bw.write("\r\n");
bw.close();
}
}
是的,我真的給了它一個想法,但上面的代碼是從ExtractImages。java,但我在MyImageRenderListener .java中編寫文本文件,所以如何從ExtractImages.java中獲取'i'值並將其傳遞給MyImageRenderListener .java?對不起,如果這聽起來很愚蠢我更多的PHP開發人員,所以我沒有得到一個線索如何做到這一點 – Abhinav
我會更新我的答案。 –
感謝一噸布魯諾,我明白了:) – Abhinav