package cn.wlbg.pdfdemos.controller;
 import com.itextpdf.text.*;
 import com.itextpdf.text.pdf.PdfWriter;
 import java.io.File;
 import java.io.FileOutputStream;
 import java.util.Arrays;
 import java.util.List;
 import java.util.UUID;
 public class Wk {
private static String FILEPATH = "D:\\aaa\\";

public static void imagesToPdf(String fileName, List<String> sd, String topath) {
    try {
        fileName = FILEPATH + fileName + ".pdf";
        File file = new File(fileName);
        // 第一步:创建一个document对象。
        Document document = new Document();
        document.setMargins(0, 0, 0, 0);
        // 第二步:
        // 创建一个PdfWriter实例,
        PdfWriter.getInstance(document, new FileOutputStream(file));
        // 第三步:打开文档。
        document.open();
        // 第四步:在文档中增加图片。
/*
 File files = new File(imagesPath);
 */
 String[] images = sd.toArray(new String[sd.size()]);
 int len = images.length;
for (int i = 0; i < len; i++) {
            if (images[i].toLowerCase().endsWith(".bmp")
                    || images[i].toLowerCase().endsWith(".jpg")
                    || images[i].toLowerCase().endsWith(".jpeg")
                    || images[i].toLowerCase().endsWith(".gif")
                    || images[i].toLowerCase().endsWith(".png")) {
                String temp = images[i];
                Image img = Image.getInstance(temp);
                img.setAlignment(Image.ALIGN_CENTER);
                // 根据图片大小设置页面,一定要先设置页面,再newPage(),否则无效
                document.setPageSize(new Rectangle(img.getWidth(), img.getHeight()));
                document.newPage();
                document.add(img);
            }
        }
        // 第五步:关闭文档。
        document.close();
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

public static void main(String[] args) {
    //随机文件名
    String uuid = UUID.randomUUID().toString().replaceAll("-", "");
    String name = uuid;
    String[] arrs = {"d:\\aaa\\aaas-1.png", "d:\\aaa\\aaas-2.png"};
    List<String> sd = Arrays.asList(arrs);
    String imagesPath = "d:\\aaa";
    imagesToPdf(name, sd, imagesPath);
}

}