基于qt把ppt转换成pdf

void MainWindow::on_pushButton_2_clicked()
{
    QString fileName = "C:\\Users\\Administrator\\Desktop\\1112.pptx";
    QAxObject *_powerPointAxObj = new QAxObject("Powerpoint.Application", 0);
    if (!_powerPointAxObj)
    {
        _powerPointAxObj = new QAxObject("KWPP.Application", 0);
         if (!_powerPointAxObj)
         {
             return;
         }
    }
    _powerPointAxObj->dynamicCall("SetVisible(bool)", false);
    QAxObject *presentations = _powerPointAxObj->querySubObject("Presentations");
    QList<QVariant> paramList;
    paramList.push_back(QVariant(fileName));
    paramList.push_back(0);
    paramList.push_back(0);
    paramList.push_back(0);
    QAxObject *presentation = presentations->querySubObject("Open(const QString&,int,int,int)",paramList);
    if (presentation != nullptr)
    {
        paramList.clear();
        QString application_path = QApplication::applicationDirPath();
        application_path.replace("/", "\\");
        application_path += "\\ShowFile.pdf";
        paramList.push_back(application_path);
        paramList.push_back(32);
        paramList.push_back(0);
        presentation->dynamicCall("SaveAs(const QString&,int,int)", paramList);
        presentations->dynamicCall("Close()");  
        delete presentations;
    }
}
原创文章 11 获赞 10 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_14874791/article/details/103990279