1.得到pdf文件的url地址,在代码中截取第一页作为图片,以base64格式加密输出
2.直接贴代码
private Map<String,Object> getFirstPageAsImgByPdf(String url){
Map<String,Object> result = new HashMap<>();
String res = null;
PDDocument pd = null;
try {
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<byte[]> response = restTemplate.getForEntity(url, byte[].class);
// 加载pdf文件
pd = PDDocument.load(new ByteArrayInputStream(response.getBody()));
// 准备pdf文件渲染对象
PDFRenderer pdfRenderer = new PDFRenderer(pd);
// 判断pdf页数
if (pd.getNumberOfPages() > 0) {
// 设置页数(首页从0开始)、每英寸点数、图片类型
BufferedImage bim = pdfRenderer.renderImageWithDPI(0, 96, ImageType.RGB);
ByteArrayOutputStream bos = new ByteArrayOutputStream();