Qt:使用poppler库打开qrc pdf

| 我使用poppler库显示pdf的函数遇到了一些麻烦。下面的代码是发生问题的函数。 const QString&file是文件的路径 int页面是必须打开的页面 当我将文件设置为真实路径时(例如\“ / Users / User / Documents / xxx.pdf \”),打开它没问题。但是,当我给出一个qrc文件的路径(\“:/ files / xxx.pdf \”)时,它将无法正常工作。我想用它来显示应用程序内的用户手册。 我还尝试过先用它制作一个QFile,将其打开并执行readAll,然后通过执行“ 0”来加载接收到的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   从中打开并执行   readAll,然后加载QByteArray   收到者   正在执行Poppler :: Document :: loadFromData(   qbytearray),但它已经出错   在ReadOnly中打开QFile时   模式。
QFile f;
f.setFileName(\":/skin/AppIcon16.png\");
f.open(QIODevice::ReadOnly);
QByteArray r=f.readAll();
从资源中完美读取所有数据,并进行了检查。所以我建议您在尝试时做错了。可能是路径错误,也许还有其他...     

要回复问题请先登录注册