Commit d9610587 by wenyang Committed by akexiu

经纪人名片4.经纪人电子名片由后端返回,支持PDF/png

parent fed53cc9
......@@ -5194,8 +5194,6 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
String tmpPathPDF = PDFConfiguration.getProperty("businessCardE.pdf.temp.path");
//PDF模板输出结果文件
String templateResultPDF = tmpPathPDF + practitionerId + "-businessCardE.pdf";
//JPG模板输出结果文件
String templateResultPNG = tmpPathPDF + practitionerId + "-businessCardE.png";
//填充数据
Map<String, String> initDatas = new HashMap<>();
Map<String, String> initImages = new HashMap<>();
......@@ -5252,21 +5250,40 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
PDFTemplate.generatePDF(templatePDF, templateResultPDF, initDatas, initImages);
try {
resp.setBusinessCardPdfUrl(putContractFileToOSS("businessCardEPDF", templateResultPDF, practitionerId));
PDDocument doc = null;
ByteArrayOutputStream os = null;
InputStream stream = null;
OutputStream out = null;
try {
// pdf路径
stream = new FileInputStream(templateResultPDF);
// 加载解析PDF文件
doc = PDDocument.load(stream);
PDFRenderer pdfRenderer = new PDFRenderer(doc);
PDPageTree pages = doc.getPages();
int pageCount = pages.getCount();
for (int i = 0; i < pageCount; i++) {
BufferedImage bim = pdfRenderer.renderImageWithDPI(i, 70);
ImageIO.write(bim, "png", new File(templateResultPNG));
// getBusinessCardImg(resp, practitionerId, templateResultPDF, tmpPathPDF);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 把PDF转换为图片
* @param resp
* @param practitionerId
* @param templateResultPDF
* @param tmpPathPDF
* @throws Exception
* @throws IOException
*/
private void getBusinessCardImg(PractitionerBusinessCardResponseVO resp, Long practitionerId,
String templateResultPDF,String tmpPathPDF) throws Exception, IOException {
//JPG模板输出结果文件
String templateResultPNG = tmpPathPDF + practitionerId + "-businessCardE.png";
PDDocument doc = null;
ByteArrayOutputStream os = null;
InputStream stream = null;
OutputStream out = null;
try {
// pdf路径
stream = new FileInputStream(templateResultPDF);
// 加载解析PDF文件
doc = PDDocument.load(stream);
PDFRenderer pdfRenderer = new PDFRenderer(doc);
PDPageTree pages = doc.getPages();
int pageCount = pages.getCount();
for (int i = 0; i < pageCount; i++) {
BufferedImage bim = pdfRenderer.renderImageWithDPI(i, 70);
ImageIO.write(bim, "png", new File(templateResultPNG));
// os = new ByteArrayOutputStream();
// Image image = bim.getScaledInstance(70,45,Image.SCALE_SMOOTH); //设置图像的缩放大小
// AffineTransformOp op = new AffineTransformOp(AffineTransform.getScaleInstance(1,1),null); //设置图像的缩放比例
......@@ -5282,25 +5299,22 @@ public class PractitionerServiceImpl implements com.yd.api.practitioner.service.
// }
// out = new FileOutputStream(file);
// out.write(dataList);
if(i == 0){
resp.setBusinessCardProsImg(putContractFileToOSS("businessCardEPros", templateResultPNG, practitionerId));
}else if(i == 1){
resp.setBusinessCardConsImg(putContractFileToOSS("businessCardECons", templateResultPNG, practitionerId));
}
}
} catch (Exception e) {
e.printStackTrace();
throw e;
} finally {
if (doc != null) doc.close();
if (os != null) os.close();
if (stream != null) stream.close();
if (out != null) out.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
if(i == 0){
resp.setBusinessCardProsImg(putContractFileToOSS("businessCardEPros", templateResultPNG, practitionerId));
}else if(i == 1){
resp.setBusinessCardConsImg(putContractFileToOSS("businessCardECons", templateResultPNG, practitionerId));
}
}
} catch (Exception e) {
e.printStackTrace();
throw e;
} finally {
if (doc != null) doc.close();
if (os != null) os.close();
if (stream != null) stream.close();
if (out != null) out.close();
}
}
/**
* 经纪人申请开通邮箱
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment