Я оцениваю библиотеку Winnovative PdfToText и столкнулся с тем, что меня беспокоит.
Все работает нормально, и я могу сразу извлечь текстовое содержимое из небольшого pdf размером 20 КБ или меньше, если я запускаю консольное приложение. Тем не менее, если я вызываю тот же код из выполняемого графического интерфейса NUnit, это занимает 15-25 секунд (я проверил, что это PdfToText, поместив точку останова на строку, которая извлекает текст, и нажал F10, чтобы увидеть, сколько времени требуется, чтобы перейти к следующая строка).
Это касается меня, потому что я не знаю, где обвинить, потому что я не знаю причину. Есть ли проблема с NUnit или PdfToText? Все, что я хочу сделать, это извлечь текст из PDF-файла, но 20 секунд совершенно неразумно, если я собираюсь увидеть такое поведение при определенных условиях. Если это просто при запуске NUnit, это приемлемо, но в противном случае мне придется искать в другом месте.
Проще продемонстрировать проблему с помощью полного решения VS (2010), поэтому вот ссылка, облегчающая настройку и запуск (не нужно загружать NUnit или PdfToText или даже образец pdf):
http://dl.dropbox.com/u/273037/PdfToTextProblem.zip (Возможно, вам придется изменить ссылку на PdfToText, чтобы использовать dll x86, если вы работаете на 32-разрядной машине).
Просто нажмите F5 и загрузится бегун NUnit Gui.
Я не привязан к этой библиотеке, если у вас есть предложения, я попробовал iTextSharp (слишком дорого для 2 строк кода) и посмотрел на Aspose (я не пробовал, но лицензия SaaS $ 11k). Но им либо не хватает необходимой функциональности, либо они слишком дороги.