yonge 5 years ago
parent
commit
b8f89de920

+ 4 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ContractServiceImpl.java

@@ -211,7 +211,7 @@ public class ContractServiceImpl implements ContractService, InitializingBean {
 		// 生成借款协议PDF
 		try {
 			PDFUtil.renderToPDFByData(ContractServiceImpl.class.getResource("/").getFile(), FileUtils.readFileToString(srcFile), srcPdfPath,
-					"config/fonts/simsun.ttc");
+					"simsun.ttc");
 		} catch (IOException e) {
 			throw new BizException("生成pdf协议失败", e);
 		}
@@ -344,7 +344,7 @@ public class ContractServiceImpl implements ContractService, InitializingBean {
 		// 生成借款协议PDF
 		try {
 			PDFUtil.renderToPDFByData(ContractServiceImpl.class.getResource("/").getFile(), FileUtils.readFileToString(srcFile), srcPdfPath,
-					"config/fonts/simsun.ttc");
+					"simsun.ttc");
 		} catch (IOException e) {
 			throw new BizException("生成pdf协议失败", e);
 		}
@@ -509,7 +509,7 @@ public class ContractServiceImpl implements ContractService, InitializingBean {
 		// 生成借款协议PDF
 		try {
 			PDFUtil.renderToPDFByData(ContractServiceImpl.class.getResource("/").getFile(), FileUtils.readFileToString(srcFile), srcPdfPath,
-					"config/fonts/simsun.ttc");
+					"simsun.ttc");
 		} catch (IOException e) {
 			throw new BizException("生成pdf协议失败", e);
 		}
@@ -669,7 +669,7 @@ public class ContractServiceImpl implements ContractService, InitializingBean {
 		// 生成借款协议PDF
 		try {
 			PDFUtil.renderToPDFByData(ContractServiceImpl.class.getResource("/").getFile(), FileUtils.readFileToString(srcFile), srcPdfPath,
-					"config/fonts/simsun.ttc");
+					"simsun.ttc");
 		} catch (IOException e) {
 			throw new BizException("生成pdf协议失败", e);
 		}

+ 8 - 7
mec-util/src/main/java/com/ym/mec/util/pdf/PDFUtil.java

@@ -11,7 +11,6 @@ import java.net.URL;
 
 import org.xhtmlrenderer.pdf.ITextRenderer;
 
-import com.google.zxing.client.result.BizcardResultParser;
 import com.lowagie.text.DocumentException;
 import com.lowagie.text.pdf.BaseFont;
 import com.ym.mec.util.exception.UtilException;
@@ -315,12 +314,14 @@ public class PDFUtil {
 	private static ITextRenderer getRendererByData(String baseUrl, String data, String fontFamily) throws DocumentException, IOException {
 		ITextRenderer renderer = new ITextRenderer();
 
-		File fontFamilyFile = new File(baseUrl, fontFamily);
-		if (fontFamilyFile.exists()) {
-			renderer.getFontResolver().addFont(fontFamilyFile.getAbsolutePath(), BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
-		} else {
-			throw new FileNotFoundException("字体文件找不到:" + fontFamilyFile.getPath());
-		}
+		String windir = System.getenv("windir");
+        String fileSeparator = System.getProperty("file.separator");
+        if (windir != null && fileSeparator != null) {
+            renderer.getFontResolver().addFont(windir + fileSeparator + "fonts" + fileSeparator + fontFamily, BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
+        }else{
+        	renderer.getFontResolver().addFont("/usr/share/fonts" + fileSeparator + fontFamily, BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
+        }
+        
 		renderer.setDocumentFromString(data);
 		renderer.getSharedContext().setBaseURL(baseUrl);
 		renderer.layout();