Apache tika:保留项目符号列表和样式并自定义输出

时间:2018-03-06 21:36:05

标签: xhtml apache-poi docx apache-tika

我正在用Apache Tika做一些测试。目标是将复杂的Word文档(几页文本,表格,图像,具有多级缩进的项目符号列表)转换为xhtml,保留尽可能多的信息/样式。

我在官方网站上发现了这个开箱即用的例子。它发挥了作用,但有很多局限性:

  1. 未正确输出项目符号和编号列表。如果存在嵌套列表,则生成<p class="list_Paragraph">· first element of the list</p>而不是<ul><li>first element of the list</li>....并且缩进级别会丢失。
  2. 文本颜色,字体大小,对齐方式和许多其他样式都不会输出。
  3. 是否可以为特定标签/样式生成特定输出? (例如:heading3将变为<smallHeading>而不是<h3>
  4. 不提取图像。
  5. 第4点可能需要实施一个提取器(从我在其他帖子中找到的),但是有可能达到前3点吗?我们是在谈论一些设置/扩展示例解析器/处理程序还是必须从头开始实现所有内容?建议?

    非常感谢。

    public String parseToHTML() throws IOException, SAXException, TikaException {
        ContentHandler handler = new ToXMLContentHandler();
    
        AutoDetectParser parser = new AutoDetectParser();
        Metadata metadata = new Metadata();
        try (InputStream stream = ContentHandlerExample.class.getResourceAsStream("test.doc")) {
            parser.parse(stream, handler, metadata);
            return handler.toString();
        }
    }
    

0 个答案:

没有答案