用java生成包含图片的PDF

iText包是java生成PDF文件的一个挺好用的工具。

今天初次尝试使用,将代码记录一下。

	public void createPdf(String path){
		File file=new File(path);  
		String files[];  
		ArrayList pictures = new ArrayList();
		files=file.list();  
		for(int i=0;iwidth){
					tempImage.scalePercent(width/tempImage.getWidth()*100);//用页面显示宽度除以图片宽度算出缩小的合适百分比
				}				
				doc.add(tempImage);
			}
			doc.close();
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (DocumentException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (MalformedURLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} 
	}
从指定的文件夹中取出所有iText可处理的图片文件,然后依次放入PDF中。第一次生成时发现有一个图片过大,超出PDF边界,后来发现有方法可以取出PDF的页面宽度以及图片宽度,用页面宽度减去页边距,然后再根据图片宽度算出应该缩放的百分比,有一个问题要注意,就是缩放后图片宽度不变,只是在PDF中显示的宽度变了。

你可能感兴趣的:(其它)