为什么qt用widget写的页面打开本地HTML去打印的时候原有图片不显示,自己在HTML画的图片也不显示?

为什么qt用widget写的页面打开本地HTML去打印的时候原有图片不显示,自己在HTML画的图片也不显示?

看你怎么打印的,以及你的图片路径,渲染是否正确。在浏览器中直接打印(打印预览)看看呢

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7478408
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:【Qt】QWidget设置样式表无效的解决方法
  • 除此之外, 这篇博客: Qt中设置widget背景图片中的 标题Qt中设置widget背景图片 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    第一类方法:setStyleSheet()中设置

    1.直接在代码中书写

    this->setStyleSheet("background-image:url(:/bmp/IMG_0345.JPG)");//设置图片的背景路径
    

    2.在Qt中添加图片的资源,然后可以在ui中,右键空白界面,编辑样式表,添加资源。
    在以上的两个方法中,都有一个问题,当父窗口中没有子窗口时,以上两种方法无效。

    第二类方法:在调色板中设置widget的背景图片

    1.添加如下代码

    
    ```cpp
    Qpalette palette;
    palette.setBrush(QPalette::Background,QBrush(QPixmap(":/background.bmp")));
    this->setPalette(palette);
    
    2.设置图片平铺
    
    ```cpp
    Qpalette palette;
    palette.setBrush(QPalette::Background,QBrush(QPixmap(":/background.bmp").scaled(this->size(),Qt::IgnoreAspectRatio,Qt::SmoothTransformation);
    this->setPalette(palette);
    

    推荐使用第二类方法,可以不用担心顶层父窗口有没有子窗口

    参考1
    参考3
    参考2

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^