der*_*rek 5 java apache ms-word docx apache-poi
我正在尝试从 MS docx 文件中获取样式信息,使用添加的样式(如粗体、斜体)编写文件内容没有问题。字体大小等,但读取文件内容并获取样式信息不太清楚。我尝试过使用 XWPFDocument,这个 API 似乎没有读取样式的能力。我现在正在尝试 XWPFWordExtractor,它看起来更有希望,但我仍然无法获取文本的样式信息。
我阅读的内容类型类似于以下内容。
“您好,这是粗体文本,这是斜体文本abd 这是粗体斜体文本”
任何指向示例的指针都会很棒。
好的,根据 Gagravarr 的评论,解决方案如下,正是我想要的。所以基本上加格拉瓦尔回答了这个问题,但我不知道除了说它之外还应该给予他信任。
\n\nfor (XWPFParagraph paragraph : docx.getParagraphs()) {\n int pos = 0;\n for (XWPFRun run : paragraph.getRuns()) {\n System.out.println("Current run IsBold : " + run.isBold());\n System.out.println("Current run IsItalic : " + run.isItalic());\n for (char c : run.text().toCharArray()) {\n\n System.out.print(c);\n pos++;\n }\n System.out.println();\n }\n }\nRun Code Online (Sandbox Code Playgroud)\n\n`
\n\n输出如下
\n\n\nCurrent run IsBold : false\nCurrent run IsItalic : false\n"Hello, this is\xc2\xa0\nCurrent run IsBold : true\nCurrent run IsItalic : false\nbold text\nCurrent run IsBold : false\nCurrent run IsItalic : false\n\xc2\xa0and this is\xc2\xa0\nCurrent run IsBold : false\nCurrent run IsItalic : true\nitalic text\nCurrent run IsBold : false\nCurrent run IsItalic : false\n\xc2\xa0a\nCurrent run IsBold : false\nCurrent run IsItalic : false\nn\nCurrent run IsBold : false\nCurrent run IsItalic : false\nd this is\xc2\xa0\nCurrent run IsBold : true\nCurrent run IsItalic : true\nbold-italic text\nCurrent run IsBold : false\nCurrent run IsItalic : false\n"
| 归档时间: |
|
| 查看次数: |
9238 次 |
| 最近记录: |