pdf文件预览其实很简单
第一步,下载插件:
链接:https://pan.baidu.com/s/1K0Wc6kmaEhr7vUL1MgwGLg
提取码:2e42
插件目录:
/preview 是个java方法,用来把pdf变成流 传递参数的话最好传递数字,传递汉字的会有问题
<button class="btn btn-success btn-sm" onclick="fileView('${contractFile.fileId}');">
合同预览
</button>
function fileView(fileId) {
window.open("/pdf/web/viewer.html?file=" + encodeURIComponent("/preview?fileId=" + fileId));
}
//文件预览
@RequestMapping(value = "/preview", method = RequestMethod.GET)
public void pdfStreamHandler(HttpServletRequest request, HttpServletResponse response) {
String id = request.getParameter("fileId");
//根据模板文件id得到文件路径
ContractFileList contractFile = contractFileListService.selectContractFileByFileId(id);
logger.info("文件预览路径为====" + contractFile.getFileUrl());
File file = new File(contractFile.getFileUrl());
if (file.exists()) {
byte[] data = null;
try {
FileInputStream input = new FileInputStream(file);
data = new byte[input.available()];
input.read(data);
response.getOutputStream().write(data);
input.close();
} catch (Exception e) {
System.out.println("pdf文件处理异常:" + e);
}
} else {
return;
}
}