これは私にとってそれを修正したものです。それは私が網膜ディスプレイを使っていたからではありません(私は持っていないからです):
https://github.com/niklasvh/html2canvas/issues/576
これを使ってhtml2canvas.jsのgetBounds()メソッドを変更するだけです。
function getBounds (node) {
if (node.getBoundingClientRect) {
var clientRect = node.getBoundingClientRect();
var width = node.offsetWidth == null ? clientRect.width : node.offsetWidth;
return {
top : Math.floor(clientRect.top),
bottom: Math.floor(clientRect.bottom || (clientRect.top + clientRect.height)),
right : Math.floor(clientRect.left + width),
left : Math.floor(clientRect.left),
width : width,
height: node.offsetHeight == null ? clientRect.height : node.offsetHeight
};
}
return {};
}