Qt WebKit印刷收缩因子

时间:2009-08-03 11:45:07

标签: qt webkit

从WebKit打印时,它似乎会自动对输出施加缩小因子。有没有办法在打印时禁用收缩,最好不要修改WebKit源? 我认为可能有可能使用Qt 4.6 trunk并使用更长高度的setFixedLayout来欺骗WebKit而不是缩小,但我还没有尝试过。也许有办法获得底层的WebKit所以我可以这样做?

编辑: Chrome通过扩展打印版面高度来解决此问题 http://src.chromium.org/viewvc/chrome/trunk/src/chrome/renderer/print_web_view_helper.cc?view=markup

1 个答案:

答案 0 :(得分:4)

QT 4.5是不可能的,因为几个月前我自己遇到了这个问题。我现在不讨论Qt 4.6。

罪魁祸首在第115和126行的src/3rdparty/webkit/WebCore/page/PrintContext.cpp中。正如您所看到的那样,收缩因子甚至不是常数,而是计算得到的内容最适合可用的打印区域。

将控制允许缩小范围(PrintingMinimumShrinkFactorPrintingMaximumShrinkFactor)的两个常量设置为1可以解决问题。我当时非常彻底地分析了这个问题,并没有找到比修补Qt更好的解决方案。