使用方法の転換 つを行うための方法の多くPOIを使用しているとDOCX4j
InputStream is = new FileInputStream(new File("your Docx PAth"));
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage
.load(is);
List sections = wordMLPackage.getDocumentModel().getSections();
for (int i = 0; i < sections.size(); i++) {
wordMLPackage.getDocumentModel().getSections().get(i)
.getPageDimensions();
}
Mapper fontMapper = new IdentityPlusMapper();
PhysicalFont font = PhysicalFonts.getPhysicalFonts().get(
"Comic Sans MS");//set your desired font
fontMapper.getFontMappings().put("Algerian", font);
wordMLPackage.setFontMapper(fontMapper);
PdfSettings pdfSettings = new PdfSettings();
org.docx4j.convert.out.pdf.PdfConversion conversion = new org.docx4j.convert.out.pdf.viaXSLFO.Conversion(
wordMLPackage);
//To turn off logger
List<Logger> loggers = Collections.<Logger> list(LogManager
.getCurrentLoggers());
loggers.add(LogManager.getRootLogger());
for (Logger logger : loggers) {
logger.setLevel(Level.OFF);
}
OutputStream out = new FileOutputStream(new File("Your OutPut PDF path"));
conversion.output(out, pdfSettings);
System.out.println("DONE!!");
これは完璧とさえ複数のDOCXファイルにしようとした作品があります。
SOにはありません。 「ツールやライブラリをお勧めしますか?」と尋ねるときに、なぜあなたはオープンオフィスのセットアップを安定させようとしないのですか? –
JODConverter(https://code.google.com/archive/p/jodconverter/)またはdocx4j(http://www.docx4java.org/trac/docx4j) – Davide
JODConverterはバックグラウンドでOpenOfficeを使用しています。 OpenOfficeが何らかの理由なくハングする(クラッシュする)ことがあります。私もdocx4jを試しました(私の質問を見てください) – Ferguson