如何为docx运行apache poi设置粗体
问题描述:
如何将run.getCTR()。getRPr()设置为粗体运行? 我写这段代码,但它根本不起作用。如何为docx运行apache poi设置粗体
run.setBold(true);
我与字体大小相同的问题,但我这个代码固定它:
CTHpsMeasure size = CTHpsMeasure.Factory.newInstance();
sizeFa.setVal(new BigInteger((sizePoint * 2) + ""));
run.getCTR().getRPr().setSz(size);
run.getCTR().getRPr().setSzCs(size);
现在我想设置粗体像上面的代码,用getCTR()。我该怎么办? 谢谢。
答
如果需要run.getCTR().getRPr().setSzCs(size);
来设置字体大小,那么您使用的是Complex Script
(Cs
)字符。这可能是特殊双向(从右到左)语言(例如阿拉伯语)的字符。
所以对于大胆你应该尝试使用CTRPr.setBCs。
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTOnOff;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STOnOff;
...
run.setBold(true);
CTOnOff ctonoff = CTOnOff.Factory.newInstance();
ctonoff.setVal(STOnOff.ON);
run.getCTR().getRPr().setBCs(ctonoff);
...
你说得对,我正在使用复杂字符。谢谢。 @Axel Richter –