3

我正在尝试在RaphaëlPaper.js之间做出决定。我选择了 Paper.js,但是,现在我在几个地方阅读它不适用于 Retina 或高清显示器。至少以前没有。Raphaël 似乎很自然地工作,因为它是基于 SVG 的。Paper.js 是否解决了 Retina 问题,还是从来没有真正的问题?有简单的解决方法吗?

4

3 回答 3

2

高 DPI 支持off默认设置为,您必须激活它,因为存在一些问题。现在它们中的大部分都应该得到解决,因此最新的 paper.json默认将 HiDPI 设置为。

如果您仍在使用旧版本,您可以像这样打开它:

<canvas id="canvas" hidpi="on"></canvas>

但是最新版本不需要这样做。

于 2013-12-11T10:25:31.580 回答
0

不幸的是,该hidpi设置对我没有任何帮助。我不得不像这样直接将图像设置为画布的宽度和高度

var mergedContext = mergedCanvas[0].getContext('2d');
mergedContext.fillStyle = 'rgb(255, 255, 255)';
mergedContext.fillRect(0, 0, totalWidth, totalHeight);

// This line is the secret
mergedContext.drawImage(canvasData, 0, canvasWidth, canvasHeight);

使用最后一行代码,图像有多大并不重要。它总是调整大小以适合。

于 2016-01-05T16:36:27.137 回答
0

使用这种风格

html,
body {
    height: 100%;
}

/* Scale canvas with resize attribute to full size */
canvas[resize] {
    width: 100%;
    height: 100%;
} 

从这里https://github.com/paperjs/paper.js/issues/662

于 2016-09-07T15:56:24.827 回答