Задать вопрос
CrazySage
@CrazySage
C++ developer

Использование Win32 версии Poppler-qt4?

Скачал с windows.kde.org poppler и возникло две проблемы.

1. Как сделать статическую либу poppler-qt4? В devel варианте идет lib являющаяся оболочкой для dll (а таскать за собой dll-ки не хочется), при самостоятельной сборке в конфигурации статической библиотеки и с ключом /MT либа все равно требует дллку при запуске.

2. Когда я пытаюсь собрать пример

#include &lt;poppler-qt4.h&gt;<br/>
<br/>
QString filename;<br/>
Poppler::Document* document = Poppler::Document::load(filename);<br/>
if (!document || document-&gt;isLocked()) {<br/>
 delete document;<br/>
 return;<br/>
}<br/>
if (document == 0) {<br/>
 return;<br/>
}<br/>
Poppler::Page* pdfPage = document-&gt;page(pageNumber); // Document starts at page 0<br/>
if (pdfPage == 0) {<br/>
 return;<br/>
}<br/>
QImage image = pdfPage-&gt;renderToImage();<br/>
if (image.isNull()) {<br/>
 return;<br/>
}<br/>
<br/>
// ... use image ...<br/>
<br/>
// after the usage, the page must be deleted<br/>
delete pdfPage;<br/>
delete document;



программа молча дохнет на renderToImage(), delete pdfPage, delete document

при этом page->text() и page->thumbnail() работают нормально

Кто-нибудь с подобным встречался?

Может ли это быть из-за того что у меня статически прилинкована одна версия Qt, а Poppler из-за того, что собран динамически и требует Qt-шные dll-ки использует другую?


Окружение:

Windows 7, MS Visual Studio Professional 2008, Qt 4.7
  • Вопрос задан
  • 3439 просмотров
Подписаться 2 Комментировать
Подписчики вопроса 2 К ответам на вопрос (3)