⚠️ Forum Maintenance: Feb 6th, 8am - 14pm (UTC+2)

qt5.15.2 QWebEngineView is slow, QWebEnginePage's print function is very slow.



  • Environment:
    QT 5.15.2 MSVC2019 32bit
    OS: window 10

    Reproduce steps:

    1. Open the printme exmaple,replace local html file with remote url (https://github.com/marketplace)

    main.cpp

    int main(int argc, char *argv[])
    {
        QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
        QApplication app(argc, argv);
    
        QWebEngineView view;
    
    ////////////////////////////////// modification: 
    //    view.setUrl(QUrl(QStringLiteral("qrc:/index.html"))); 
        view.setUrl(QUrl("https://github.com/marketplace"));
    ////////////////////////////////
    
        view.resize(1024, 750);
        view.show();
    
        PrintHandler handler;
        handler.setPage(view.page());
    
        auto printPreviewShortCut = new QShortcut(QKeySequence(Qt::CTRL + Qt::Key_P), &view);
        auto printShortCut = new QShortcut(QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_P), &view);
    
        QObject::connect(printPreviewShortCut, &QShortcut::activated, &handler, &PrintHandler::printPreview);
        QObject::connect(printShortCut, &QShortcut::activated, &handler, &PrintHandler::print);
    
        return app.exec();
    }
    
    1. build and run printme,it's slower to open the remote url. Press CTRL + P to preview the page to print,it takes 9-20 seconds, very slow. We tried QT5.9 to build and run printme example, it's very fast to open url, preview page to print.


  • well, QT5.15.0 is fast, finally we choose QT5.15.0



  • Bit old but if anybody finds this post while researching this (and using MSVC), make sure you're building in release mode for performance testing. The debug libs for WebEngine take significantly longer to initialize.

    See https://forum.qt.io/topic/52360/qwebengineview-is-very-very-very-slow


Log in to reply