2016-09-15 5 views
0

для Word Addin Я использую PDFBox для управления PDF-файлами. Вернее, я хотел бы использовать его. Раньше я использовал его с помощью собственного приложения для рабочего стола. PDFBox - это библиотека Java, которая может быть использована как DLL с IKVM (например, здесь: http://www.squarepdf.net/pdfbox-in-net). Проблема, которую я испытываю, заключается в том, что все библиотеки для Wordaddins должны быть прочно названы. Я попробовал знак strongname, но затем получаю исключение, что часть общего ведения журнала apache (в каталоге MANIFEST.MF) не может быть найдена. Я знаю, что до сих пор это довольно расплывчато, и позже я расскажу о более подробных подробностях, но, возможно, кто-то уже прошел через это и имеет представление о том, как это сделать правильно, или может указать мне в какое-то место, где уже есть сильная версия PDFBox. Спасибо заранее!Strongname Подпись IKVM PDFBox для Word Addin

ответ

0

Я приведу дополнительную информацию по этому вопросу, потому что мой коллега в отпуске. Я сильно назвал все pdfbox-dll, и, пытаясь открыть pdf-файл, я получу первое исключение FileNotFoundException. Файл $ (PrjectDir) \ bin \ x86 \ Debug \ commons-logging.properties не найден.

Все следующие Исключения имеют ту же проблему. В качестве примера следующее исключение - это исключение DirectoryNotFoundException. Он не смог найти \ bin \ x86 \ Debug \ META-INF \ services \ org.apache.commons.logging.LogFactory. Есть более чем 10 FileNotFoundExceptions только на открытии моего PDF:

doc = PDDocument.load(new File(inputFile)); 

Все из них не могут найти что-то из Logger.

В следующем шаге, я пытаюсь сделать поток контента из первой страницы этого файла PDF:

contentStream = new PDPageContentStream(doc, (PDPage)doc.getDocumentCatalog().getAllPages().get(0), true, false); 

Первое исключение, я стану есть другой FileNotFoundException для C: \ Users (пользователь) .accessibility.properties или $ (ProjectDir) \ bin \ x86 \ Debug \ META-INF \ services \ java.text.spi.NumberFormatProvider

До этого момента у меня есть 20 исключений или около того. Большинство из них не могут найти что-то из регистратора. Но я могу написать открытый pdf-файл на жесткий диск. Если я пытаюсь вставить текст в contentstream, я получаю труднее Exception в точке я должен установить шрифт:

PDFont font = PDType1Font.HELVETICA; 
contentStream.setFont(font, 10); 

На данный момент я получаю следующее исключение:

исключения (первый шанс) типа «Исключение System.TypeInitializationException» произошло в fontbox-1.8.12.dll. Дополнительная информация: Инициализатор типа для "org.apache.fontbox.cmap.CMap" генерировал исключение.

Я думаю, что у ссылок есть проблема, если pdfbox прочен. У кого-нибудь есть идея, что делать? Большое спасибо.

Смежные вопросы