java - docx4j生成pdf时,如何指定pdf的页边框
怪我咯
怪我咯 2017-04-18 10:20:38
0
1
778

生成pdf:

public String savePdf(WordprocessingMLPackage wordMLPackage,Map data) throws Exception { String pdfDir = getFilePath() + ".pdf"; File file = new File(pdfDir); FileUtils.createDir(file); //使用默认的FOSettings settings.setWmlPackage(wmlPackage);settings.setApacheFopMime("application/pdf"); OutputStream os = new java.io.FileOutputStream(file); Docx4J.toPDF(wordMLPackage, os); os.flush(); os.close(); if (logger.isDebugEnabled()) { logger.debug("savepath:"+file.getAbsolutePath()); } return pdfDir; }

比如说,生成word的时候,可以指定word的上下左右页边距,但是生成pdf时,如何控制页边距,我却没有找到,隐约觉得FOSettings类里会支持,但始终没有找到。
同理,做word转pdf时,也是不知如何控制pdf的页边距。
word转pdf:

public String doc2pdf(String docxPath, String pdfPath) throws Exception{ OutputStream os = null; try { WordprocessingMLPackage mlPackage = WordprocessingMLPackage.load(new File(docxPath)); //设置字体 Mapper fontMapper = new IdentityPlusMapper(); String fontFamily = "SimSun"; PhysicalFont simsunFont = PhysicalFonts.get(fontFamily); fontMapper.put(fontFamily, simsunFont); mlPackage.setFontMapper(fontMapper); os = new java.io.FileOutputStream(pdfPath); FOSettings foSettings = Docx4J.createFOSettings(); foSettings.setWmlPackage(mlPackage); Docx4J.toFO(foSettings, os, Docx4J.FLAG_EXPORT_PREFER_XSL); }catch(Exception ex){ ex.printStackTrace(); }finally { os.close(); } return pdfPath; }

如果有其他的第三方开源插件,jar可以在mvnrepository找到的,麻烦也推荐一下~~当前项目的word有点复杂
萌新刚刚入住社区,求各路大神回复......

怪我咯
怪我咯

走同样的路,发现不同的人生

모든 응답 (1)
黄舟

아무도 모르나요? ................................docx4j에 대해 내가 아는 것........................또는 docx4j PDF 자체 지원을 모릅니다

    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿
    회사 소개 부인 성명 Sitemap
    PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!