Я новичок в TIKA. Я пытаюсь преобразовать текстовые документы Microsoft в HTML с помощью Tika. Я использую TikaOnDotNet-оболочку для использования TIKA в .Net framework. Мой код конверсии выглядит следующим образом:конвертировать текстовые документы в HTML со встроенными изображениями от TIKA
byte[] file = Files.toByteArray(new File(@"myPath\document.doc"));
AutoDetectParser tikaParser = new AutoDetectParser();
ByteArrayOutputStream output = new ByteArrayOutputStream();
SAXTransformerFactory factory = (SAXTransformerFactory)TransformerFactory.newInstance();
TransformerHandler handler = factory.newTransformerHandler();
handler.getTransformer().setOutputProperty(OutputKeys.METHOD, "html");
handler.getTransformer().setOutputProperty(OutputKeys.INDENT, "yes");
handler.getTransformer().setOutputProperty(OutputKeys.ENCODING, "UTF-8");
handler.setResult(new StreamResult(output));
ExpandedTitleContentHandler handler1 = new ExpandedTitleContentHandler(handler);
tikaParser.parse(new ByteArrayInputStream(file), handler1, new Metadata());
File ofile = new File(@"C:\toHtml\text.html");
ofile.createNewFile();
DataOutputStream stream = new DataOutputStream(new FileOutputStream(ofile));
output.writeTo(stream);
все работает хорошо, кроме встроенных изображений. Сгенерированный HTML содержит тег изображения, такой как:
<img src="embedded:image2.wmf" alt="image2.wmf"/>
, но источник изображения не существует. Просьба сообщить мне
Вы забыли установить соответствующий [EmbeddedDocumentExtractor] (http://tika.apache.org/1.13/api/org/apache /tika/extractor/EmbeddedDocumentExtractor.html) в 'ParseContext', чтобы указать, какие ресурсы нужно сохранить и где? – Gagravarr
@Gagravarr Не могли бы вы привести мне пример? Я думаю, что это главная причина. – Mahdi
У TikaCLI есть один, например [этот бит в Git] (https://github.com/apache/tika/blob/master/tika-app/src/main/java/org/apache/tika/cli/ TikaCLI.java # L1004) – Gagravarr