大家好,
我在单个文件夹中有多个png图像。 我需要读取这些图像并将所有这些图像转换为单个PDF文件。 在同一个地方。怎么做到这一点?
提前致谢。
答案 0 :(得分:1)
您希望aspose.pdf.jar文件执行此任务。此jar支持pdf文件的Ccitt,Gif,jpeg,png, tiff, bmp, exif etc
扩展。它还可以帮助将文本文件转换为pdf。
示例:
//Instantiate a Pdf object by calling its empty constructor
Pdf pdf1 = new Pdf();
//Create a section in the Pdf object
Section sec1 = pdf1.getSections().add();
//Create an image object in the section
aspose.pdf.Image img1 = new aspose.pdf.Image(sec1);
//Add image object into the Paragraphs collection of the section
sec1.getParagraphs().add(img1);
//Set the path of image file
img1.getImageInfo().setFile("C:/Images/Apple.jpg");
//Set the path of image file
img1.getImageInfo().setTitle("JPEG image");
//Save the Pdf
pdf1.save("d:/pdftest/JPEG_image_toPDF.pdf");
您可以从此处下载aspose.pdf.jar文件:http://www.java2s.com/Code/Jar/a/Downloadasposepdf290jdk16jar.htm,可在此处找到示例http://www.aspose.com/docs/display/pdfjava/How+to+Convert+an+Image+to+PDF
答案 1 :(得分:1)
使用Aspose.Pdf for Java,尝试使用以下代码将多个图像转换为单个文件中的单独PDF页面。
Document doc = new Document();
for(int i=1; i<=3; i++)
{
Page page = doc.getPages().add();
//Create an image object
com.aspose.pdf.Image image1 = new com.aspose.pdf.Image();
//Add the image into paragraphs collection of the section
page.getParagraphs().add(image1);
//Set the ImageStream to a MemoryStream object
image1.setFile("C:\\data\\image" + i + ".jpg");
//Set margins and PageInfo so image will fit, etc.
page.getPageInfo().getMargin().setBottom(0);
page.getPageInfo().getMargin().setTop(0);
page.getPageInfo().getMargin().setLeft(0);
page.getPageInfo().getMargin().setRight(0);
BufferedImage bimg = ImageIO.read(new java.io.FileInputStream(new java.io.File("C:\\data\\image" + i + ".jpg")));
int width = bimg.getWidth();
int height = bimg.getHeight();
page.getPageInfo().setHeight(height);
page.getPageInfo().setWidth(width);
}
doc.save("C:\\data\\output.pdf");
答案 2 :(得分:0)
iText是一个PDF库,允许您以可移植文档格式创建,调整,检查和维护文档。你可以使用itext库,可以添加文本,图像和许多其他元素。有很多基于itext的例子。我与你分享很少的链接。他们可能会帮助你。
答案 3 :(得分:-1)