我對使用poppler庫顯示pdf的功能有點麻煩。下面的代碼是問題發生的功能。Qt:使用poppler庫打開qrc pdf
常量QString的&文件是文件路徑 INT頁面是由它來打開
當我設置文件,以一個真實的路徑(例如「/用戶/用戶/文件/ XXX的頁面。 pdf「),打開它是沒有問題的。但是當我給qrc文件(「:/files/xxx.pdf」)的路徑,它將無法正常工作。我想在應用程序中使用它來顯示用戶手冊。
我也試着先將QFile打開,打開並執行readAll,然後加載通過執行Poppler::Document::loadFromData(the qbytearray)
接收到的QByteArray,但在ReadOnly模式下打開QFile時它已經出錯。
void class::setPdf(const QString &file, int page)
{
Poppler::Document *doc = Poppler::Document::load(file);
if (!doc) {
QMessageBox msgbox(QMessageBox::Critical, tr("Open Error"), tr("Please check preferences: cannot open:\n") + file,
QMessageBox::Ok, this);
msgbox.exec();
}
else{ /*Code for displaying the pdf, which works fine*/
}
}
我希望你能幫助我,
問候,
馬特
你是怎麼用QFile打開它的?通常情況下,QFile在readOnly模式下從qrc讀取資源,沒有任何問題... – Raiv 2011-06-01 08:45:36