Qt显示pdf之五在Qt中使用

来源:互联网 发布:什么是数据时代 编辑:程序博客网 时间:2024/05/22 06:09

引入前面章节封装的lib,dll 和lib


void MainWindow::slotOpenPdf()

{
    QString pdf = QApplication::applicationDirPath() + "\\1.pdf";
    PDFIumReader_Loadpdf(pdf.toStdString().c_str());
    int counts = PDFIumReader_GetPageCount(pdf.toStdString().c_str());
    ui->lineEdit->setText(0);
    float width, height = 0;
    char *buf = PDFIumReader_GetPage(pdf.toStdString().c_str(), 0, width, height,false);
    QImage image((uchar*)buf, width, height, QImage::Format_RGBA8888);
    ui->label->setPixmap(QPixmap::fromImage(image));
}
void MainWindow::sloNextPdf()
{
    QString pdf = QApplication::applicationDirPath() + "\\1.pdf";
     float width, height = 0;
     int page = 0;
    char *buf = PDFIumReader_GetNextPage(pdf.toStdString().c_str() , page, width, height,false);
    QImage image((uchar*)buf, width, height, QImage::Format_RGBA8888);
    ui->label->setPixmap(QPixmap::fromImage(image));
    qDebug()<<pdf;
}
void MainWindow::slotLastPdf()
{
    QString pdf = QApplication::applicationDirPath() + "\\1.pdf";
     float width, height = 0;
     int page = 0;
    char *buf = PDFIumReader_GetLastPage(pdf.toStdString().c_str() ,page, width, height,false);
    QImage image((uchar*)buf, width, height, QImage::Format_RGBA8888);
    ui->label->setPixmap(QPixmap::fromImage(image));
} 


最后奉上该系列的所有源码和编译好的库:

地址:http://pan.baidu.com/s/1jIABjTG    密码:wstb