Учебники по библиотеке PDF для Android или muPDF

Я пытаюсь читать файлы PDF в моем приложении для Android. Я не хочу использовать программу чтения PDF по умолчанию и просто открыть новое намерение, потому что мне нужен собственный графический интерфейс, и я хочу использовать первую страницу в качестве обложки. Поэтому мне нужно сделать свой собственный читатель PDF. Я провел небольшое исследование и наткнулся на библиотеку muPDF и Android PDF Viewer.

  1. Я пытался следовать учебному пособию по реализации библиотеки Android PDF Viewer из описания github. Но проблема в том, что он загружает PDF-файл навсегда. Нужно ли делать что-то еще, кроме только шагов в описании?

  2. Я не могу найти учебники для библиотеки muPDF, есть ли? Как это реализовать?

  3. Если на предыдущие два вопроса нет полезного ответа, есть ли хорошая PDF-библиотека с учебными пособиями и хорошей документацией?

Спасибо, надеюсь, я смогу решить мою проблему

5 ответов

MuPDF - очень хорошая библиотека, вы можете ее использовать. Если вам нужен полный пример приложения для Android с использованием MuPDF, я предлагаю вам взглянуть на это настраиваемое приложение для журналов на Github.

Прежде всего, если вы хотите использовать MUPDF в существующем проекте приложения для Android, вы можете следовать руководству, которое вы найдете по этой ссылке (все работы принадлежат автору, я этого не писал).

Я также пытаюсь интегрировать очень простое решение для чтения / печати PDF внутри моего приложения, и я пытаюсь сократить / упростить демонстрацию приложения MuPdf, которую вы получите, следуя этому руководству. Мне уже удалось (как-то) удалить аннотации и функции выбора файлов, но мне действительно нужна помощь, чтобы выполнить всю работу. Там действительно много всего и абсолютно нет документации по этому поводу. Я просто пытаюсь прочитать код и выяснить, что нужно, а что нет, убирая функции одну за другой и руководствуясь ошибками, которые вы получаете в catlog.

Кроме того, поскольку нам обоим (если я правильно понял ваши потребности) нужны только функции рендеринга PDF, было бы замечательно, если бы кто-то указал, как (если возможно) отключить некоторые из ненужных функций, встроенных в библиотеку MuPDF, при сборке из исходного кода (как поддержка DjVu, просто в качестве примера).

Надеюсь, это поможет, даже если это не реальный ответ на ваш вопрос.

Вот как мне удалось создать библиотеку MuPDF для Windows с помощью Cygwin, android-ndk

  1. Загрузите MuPDF 1.3 Source с https://code.google.com/p/mupdf/downloads/list распакуйте в папку c:/mupdf-1.3-source

  2. Установите Cygwin: Загрузите и запустите Запустите setup-x86.exe с http://cygwin.com/install.html при установке cygwin, убедитесь, что вы выбрали make-пакеты и компиляторы C++.

  3. Сделай генерацию. открыть терминал cygwin, запустить

    cd /cygdrive/
    cd c/mupdf-1.3-source
    make generate
    
  4. Установите android-ndk: скачайте android-ndk-r9d-windows-x86.zip и распакуйте его в

    c:/android-ndk-r9d
    
  5. Сборка mupdf lib: на консоли windows cmd:

    • подготовка:

      cd c:/mupdf-1.3-source/platform/android
      copy local.properties.sample local.properties
      

      редактировать local.properties, раскомментировать

      #sdk.dir=C:\\Program Files (x86)\\Android\\android-sdk
      

      и изменить на

      sdk.dir=REAL andforid-sdk Folder
      
    • построить: пока еще на c:/mupdf-1.3-source/platform/android, бежать:

      /android-ndk-r9d/ndk-build
      

      После завершения сборки папка с именем libs будет создана в

      c:/mupdf-1.3-source/platform/android
      
  6. Создать Android APK. Откройте Eclipse, создайте новый проект Android из существующего кода, перейдите к c:/mupdf-1.3-source/platform/androidТеперь вы можете создать MUPDK APK.

Начиная с Android 5.0 вы также можете использовать встроенный в Android рендерер PDF, а для работы с PDF вы всегда можете использовать iTextg - только некоторые альтернативы на будущее.

В этом SO- ответе приведены некоторые шаги по извлечению необходимых фрагментов из примера Java-приложения MuPDF.

Желательно, чтобы у меня была "готовая к использованию" библиотека Java, к которой я мог бы присоединиться в качестве зависимости. Предотвращает ли это JNI или просто никто не взялся за это?

Ну, есть jmupdf (упомянутый в этом дубликате), но в нем перечислены Windows и Linux (не специально Android) в качестве протестированных платформ. Кажется, рабочий стол и мертвый для меня (без изменений в 12 месяцев). По крайней мере, по сравнению с вибрацией самого MuPDF.

Другие вопросы по тегам