渲染为pdf时,我需要html页面为打印宽度的100%.否则内容会被切断.是否有捷径可寻?
我提出了一个解决方法,它在渲染后获取html宽度,然后设置缩放系数以强制使用正确的宽度.
var page = require('webpage').create(), system = require('system'), dpi = 89.9, // strange, but that's what I get on Mac pageWidth = 210; // in mm var getWidth = function() { return page.evaluate(function() { // get width manually // ... return width; }); }; page.paperSize = {format: 'A4', orientation: 'portrait'}; page.open(system.args[1], function (status) { window.setTimeout(function () { page.zoomFactor = (pageWidth / 25.4) * dpi / getWidth(); page.render(system.args[2]); phantom.exit(); }, 200); });
寻找一个直接的解决方案,因为获得宽度需要我做一些技巧,因为我使用的框架.
管理通过添加以下CSS规则来解决此问题,该规则将缩小页面并使其适合:
html { zoom: 0.60; }