Electron printToPDF 文本中间分页符
Electron printToPDF page break in middle of text
我有一个电子项目,它使用内置的 webContents.printToPDF() 函数生成 pdf。
mainWindow.webContents.printToPDF({}, function(error, data) {
if(error) throw error;
fs.writeFile(arg, data, function(error) {
if(error) throw error;
});
});
我遇到的问题是,当我打印跨多个页面的 table 时,分页符不会出现在元素周围,而是将单词切成两半,如下面的示例所示。
我正在为这个项目使用 electron-prebuilt 0.35.2,程序正在 运行 windows 7 计算机上运行。我在electron's github issues.
中搜索没有找到相关问题
如有任何帮助,我们将不胜感激。
我不能post将此作为评论,因为我没有必要的声誉。
这似乎是 Chromium 的问题,而不是 Electron 的问题。您可以尝试对 tr
或 table 单元格中的 div
使用 page-break-inside: avoid;
。不过我还没有测试过。
您也可以尝试为 tr
设置 display: block;
。
我使用 PhotonKit 作为我的 CSS 框架。该框架使用 flexbox 进行布局。
用 Bootstrap 替换 PhotonKit 后,table 单元格之间的文本中断问题已解决。我认为这是直接由 chromium 未正确处理 flexbox 布局以进行打印造成的。
我有一个电子项目,它使用内置的 webContents.printToPDF() 函数生成 pdf。
mainWindow.webContents.printToPDF({}, function(error, data) {
if(error) throw error;
fs.writeFile(arg, data, function(error) {
if(error) throw error;
});
});
我遇到的问题是,当我打印跨多个页面的 table 时,分页符不会出现在元素周围,而是将单词切成两半,如下面的示例所示。
我正在为这个项目使用 electron-prebuilt 0.35.2,程序正在 运行 windows 7 计算机上运行。我在electron's github issues.
中搜索没有找到相关问题如有任何帮助,我们将不胜感激。
我不能post将此作为评论,因为我没有必要的声誉。
这似乎是 Chromium 的问题,而不是 Electron 的问题。您可以尝试对 tr
或 table 单元格中的 div
使用 page-break-inside: avoid;
。不过我还没有测试过。
您也可以尝试为 tr
设置 display: block;
。
我使用 PhotonKit 作为我的 CSS 框架。该框架使用 flexbox 进行布局。
用 Bootstrap 替换 PhotonKit 后,table 单元格之间的文本中断问题已解决。我认为这是直接由 chromium 未正确处理 flexbox 布局以进行打印造成的。