Node WebKit更改源代码中的打印设置

时间:2014-01-14 08:09:38

标签: css node.js node-webkit

所以我有一个使用节点WebKit构建的应用程序,它会创建一个要打印的图像,但是我无法通过使用CSS来消除所有边距,所以这是我的CSS。

<style media="print">
  @page {
    size: 216mm 356mm;
    margin: 0; padding: 0;
    width: 216mm; height: 356mm;
  }

  html, body {
    margin: 0; padding: 0;
    width: 216mm; height: 356mm;
  }

  img {
    display: block;
    width: 100%; height: 100%;
  }
</style>

我已经尝试过各种尺寸,属性和黑客的组合,但输出上仍有很大的余量/填充。所以既然Node WebKit是开源的,我想我会把我的C ++帽子放在更高的层次上。

我应该编辑Node Webkit中的数千个文件中的哪一个以保持向前兼容?

1 个答案:

答案 0 :(得分:1)

我想到了这一点,在下载了node-webkit源代码并构建了几次编辑后page-setup.cc::CalculateSizesWithinRect允许我打印没有边距。

源代码现在读取

void PageSetup::CalculateSizesWithinRect(const gfx::Rect& bounds, int text_height) {
  effective_margins_.header = 0;
  effective_margins_.footer = 0;
  effective_margins_.left = 0;
  effective_margins_.top = 0;
  effective_margins_.right = 0;
  effective_margins_.bottom = 0;