|
@@ -2,6 +2,7 @@ package com.fdkankan.sale.util.pdf;
|
|
|
|
|
|
import com.itextpdf.text.*;
|
|
|
import com.itextpdf.text.pdf.*;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
|
|
|
import java.io.ByteArrayOutputStream;
|
|
|
import java.io.IOException;
|
|
@@ -24,16 +25,21 @@ public class PdfUtils {
|
|
|
stamper.setFormFlattening(true);
|
|
|
AcroFields form = stamper.getAcroFields();
|
|
|
// 文字类的内容处理
|
|
|
- Map<String, String> datemap = (Map<String, String>) map.get("dataMap");
|
|
|
+ Map<String, Object> datemap = (Map<String, Object>) map.get("dataMap");
|
|
|
form.addSubstitutionFont(bf);
|
|
|
for (String key : datemap.keySet()) {
|
|
|
- String value = datemap.get(key);
|
|
|
- form.setField(key, value);
|
|
|
+ if(datemap.get(key) instanceof String && datemap.get(key)!=null){
|
|
|
+ String value = (String) datemap.get(key);
|
|
|
+ form.setField(key, value);
|
|
|
+ }
|
|
|
}
|
|
|
// 图片类的内容处理
|
|
|
Map<String, String> imgmap = (Map<String, String>) map.get("imgMap");
|
|
|
for (String key : imgmap.keySet()) {
|
|
|
String value = imgmap.get(key);
|
|
|
+ if(StringUtils.isBlank(value)){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
String imgpath = value;
|
|
|
int pageNo = form.getFieldPositions(key).get(0).page;
|
|
|
Rectangle signRect = form.getFieldPositions(key).get(0).position;
|