Я пытаюсь получить пример для создания документа PDF/A с помощью Apache PDFBox (CreatePDFA.java).
Для этого я скопировал примерный класс как есть в модуль проекта, который включает зависимость maven от PDFBox в версии 2.0.0-RC3. Я только изменил сигнатуру метода и использовал фиксированный шрифт, имя файла и сообщение вместо args[].
При попытке запустить код я получаю NPE в строке 107, потому что он не может загрузить цветовой профиль (InputStream имеет значение null). Когда я проверяю включенную библиотеку в деталях проекта, я вижу папку ресурсов, но она не содержит ожидаемый файл, а именно "pdfa/sRGB Color Space Profile.icm".
К сожалению, гугление проблемы только обнаружило больше ссылок на всегда одну и ту же реализацию примера, но через некоторое время я действительно нашел то, что кажется нужным файлом на apache.googlesource.com
Я скопировал файл в наш собственный каталог ресурсов, а затем использовал эту строку кода:
InputStream colorProfile = CreatePdfA.class.getResourceAsStream("/pdfa/sRGB Color Space Profile.icm");
Это, наконец, остановило NPE - файл, по-видимому, найден, но теперь я получаю другое исключение, которое говорит:
java.lang.IllegalArgumentException: Invalid ICC Profile Data
Здесь я застрял. Я надеялся, что это будет работать сразу из коробки, но, похоже, я что-то упускаю. Любые идеи?