更改CharacterRun的字体类型

斯宾塞

我有一个使用HWPF的Apache POI生成的文档(.doc),我想更改字体类型。我猜想更改的地方应该是在每个段落中的字符上。

CharacterRun具有诸如.setBold() .setColor()和的方法.getFontName()但是没有任何方法可以设置我已经能够找到的字体。

在XWPF中,可以.setFontFamily()使用HWPF来做同样的事情吗?

Range after = doc.getRange();
int numParagraphs = after.numParagraphs();

for(int i = 0; i < numParagraphs; i++){
    Paragraph paragraph = after.getParagraph(i);

    int charRuns = paragraph.numCharacterRuns();
    for(int j = 0; j < charRuns; j++){
        int size = 9;
        CharacterRun run = paragraph.getCharacterRun(j);
        run.setFontSize(size*2); // In half sizes.
    }
}
斯宾塞

更改CharacterRun上的字体类型的方法是将字体.setFtcAscii()更改为文档的嵌入字体之一。我正在使用的文档具有下面的字体表。

╔═══╦═════════════════╗
║   ║ Font Family     ║
╠═══╬═════════════════╣
║ 0 ║ Times New Roman ║
║ 1 ║ Symbol          ║
║ 2 ║ Arial           ║
║ 3 ║ Calibri         ║
║ 4 ║ Courier New     ║
║ 5 ║ Cambria Math    ║
╚═══╩═════════════════╝

我需要将字体更改为,Courier New所以我使用了:

run.setFtcAscii(4);

--

其他文档可能具有不同的字体表,因此我创建了一个for循环,用于设置字体索引,然后使用以下命令打印出字体名称 .getFontName()

另外,我发现它的run.setFtcOther(int)作用与run.setFtcAscii(int)


参见:(0x4A4F)

https://msdn.microsoft.com/zh-CN/library/dd947480(v=office.12).aspx

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

更改CharacterRun的字体类型

来自分类Dev

更改徽标的字体类型

来自分类Dev

如何在Unity中更改字体类型?

来自分类Dev

如何统一更改GUI中的字体类型

来自分类Dev

我如何更改ListView的fontcolor和字体类型

来自分类Dev

更改导航栏菜单的字体类型和背景颜色

来自分类Dev

如何统一更改GUI中的字体类型

来自分类Dev

我如何更改ListView的fontcolor和字体类型

来自分类Dev

无法更改动态图像中的字体类型

来自分类Dev

R Markdown-在html输出中更改字体大小和字体类型

来自分类Dev

Android Spinner更改字体字体

来自分类Dev

Android:当我在EditText上应用密码类型时,字体已更改

来自分类Dev

在VBA中更改HTML电子邮件正文的字体类型和大小

来自分类Dev

如何在R markdown文档的中间更改字体大小和类型?

来自分类Dev

在VBA中更改HTML电子邮件正文的字体类型和大小

来自分类Dev

如何在 Typo3 中更改整个网站的字体类型

来自分类Dev

如何更改Neovim字体?

来自分类Dev

如何更改UINavigationItem字体?

来自分类Dev

无法更改字体颜色

来自分类Dev

更改UILabel字体

来自分类Dev

更改字体颜色RTF

来自分类Dev

更改JMenuBar的字体

来自分类Dev

更改键盘的字体

来自分类Dev

如何更改字体样式?

来自分类Dev

Holoviews字体更改

来自分类Dev

更改Tkinter菜单的字体

来自分类Dev

更改plotrix的字体

来自分类Dev

Matplotlib注释更改字体

来自分类Dev

粘贴而不更改字体