Вопрос по java, android – как показать или прочитать файл docx

13

Я новичок в рендеринге файлов в Android, и я хочу рендерить или отображать файл DOCX в моем приложении.

Я уже извлек текст из файла DOCX, но теперь я хочу также извлечь изображения из файла DOCX.

Я нашел несколько способов отображения изображений на чистом Java, но есть ли хорошие примеры для Android?

Я пытался этот код для получения изображений, но не работает ...

public void extractImages(Document xmlDoc)
{
    NodeList binDataList = xmlDoc.getElementsByTagName("w:drawings");
    String fileName = "";
    Node currentNode;
    for(int i = 0; i < binDataList.getLength(); i++)
    {
        currentNode = binDataList.item(i);
        if(currentNode.getNodeType() == Node.ELEMENT_NODE && ((Element)currentNode).hasAttribute("w:name"))
        {               
            File newImageFile = new File(picDirectory, ((Element)currentNode).getAttribute("w:name").replaceFirst("wordml://", ""));
            if(newImageFile.exists())
            {

            }
            else
            {
                if(writeImage(newImageFile, currentNode))
                {
                    //Print some success message
                }
            }
        }
    }
Вы ищете для сравнения файлов? У меня такая же проблема!stackoverflow.com/questions/13411678/docx4j-giving-wrong-result Abbas Hashmi

Ваш Ответ

3   ответа
8

AndroidDocxToHtml, который я сделал, чтобы продемонстрировать использование docx4j на Android.

Пара предостережений.

Во-первых, этот проект включает не все зависимости docx4j, а только те, которые необходимы для преобразования docx в HTML. Поэтому, если вы хотите заняться другими делами, вам могут понадобиться другие зависимости.

Во-вторых, docx4j требует JAXB - смотритеэтот пост в блоге повторно JAXB на Android - и JAXB context init при запуске приложения занимает некоторое время в зависимости от устройства. Есть способы обойти это, но с дополнительными усилиями.

Если все, что вы хотите сделать, это извлечь изображения, и вам все равно, как они соотносятся с текстом, вы можете просто искать части изображения. Вы могли бы использоватьOpenXML4J для этого и избегать JAXB.

5

BitmapFactory заводские методы.

BitmapFactory класс имеет методы для созданияBitmap из байтового массива, файла или InputStream.

Как только у вас естьBitmap объект, который вы можете отобразить, установив его наImageView в вашем макете, используяsetImageBitmap метод.

Вам нужно найти библиотеку, которая может читать файлы .docx. Мне никогда не приходилось делать этого раньше, но любая приличная библиотека должна предоставлять метод для извлечения данных изображения из файла. Я предлагаю попробовать Google:goo.gl/Bcw8e
Дело в том, как я могу получить изображения из файла DOCX, который я знаю, как показать & amp; конвертировать я хочу, как получить или извлечь изображения из файла DOCX ....... SilentKiller
6

затем вы можете исследовать структуру папок, где находятся изображения и т. Д.

я распаковал его & amp; получить все изображения, но я хочу их соответствующим образом, как .. 1. ТЕКСТ 2. Изображение, а затем снова текст таким образом ..... SilentKiller
я потерял электронную почту чат ушел ..

Похожие вопросы