如何使用java更改docx4j文本方向?

时间:2018-02-04 16:07:20

标签: java text right-to-left docx4j

我正在使用docx4j将文本写入docx文档我想将默认文本方向更改为从右到左,这是我的代码:

WordprocessingMLPackage wordPackage = WordprocessingMLPackage.createPackage();
MainDocumentPart mainDocumentPart = wordPackage.getMainDocumentPart();
mainDocumentPart.addParagraphOfText("some plain text");
File exportFile = new File("test.docx");
wordPackage.save(exportFile);

2 个答案:

答案 0 :(得分:0)

建议使用Apache POI。请查看this页面获取教程,并按照here所述的目标使用模板文件。

答案 1 :(得分:0)

在WordML / OpenXML文件格式中,r2l是运行中的布尔属性:http://webapp.docx4java.org/OnlineDemo/ecma376/WordML/rtl.html

所以:

 // Create object for rtl
BooleanDefaultTrue booleandefaulttrue = wmlObjectFactory.createBooleanDefaultTrue(); 
rpr.setRtl(booleandefaulttrue); 

您可以在运行(R对象)上设置rPr,例如:

RPr rpr = wmlObjectFactory.createRPr(); 
r.setRPr(rpr); 

在上面:

org.docx4j.wml.ObjectFactory wmlObjectFactory = new org.docx4j.wml.ObjectFactory();

您可以通过在Word中创建包含所需内容的示例文档来生成docx4j的代码,然后使用docx4j webapp或docx4j Helper Word AddIn。