在处理图像时,DPI 根本不重要。图像以像素为单位,因此这是您需要调整的。您可以放心地忽略 DPI,因为它在这种情况下没有意义。
缩放在这里对您没有帮助 - 请记住您正在使用像素设备,而不是矢量,因此画布需要已经是您想要用于打印等的大小,否则您将在缩放时由于插值而降低质量.
就是这样:
您需要根据最终阶段所需的尺寸预先计算画布尺寸(以像素为单位)。
假设您要以 300DPI 输出打印 15 x 10 厘米(或大约 6 x 4 英寸)的图像。然后计算像素:
Width : 10 cm * 300 / 2.54 = 1181 pixels
Height: 15 cm * 300 / 2.54 = 1772 pixels
对于英寸只需乘以 DPI(4 英寸!= 10 厘米,因此结果略有不同,为简单起见选择数字):
Width : 4 in * 300 = 1200 pixels
Height: 6 in * 300 = 1800 pixels
对于 26.45 cm @ 300 DPI 的图像,画布需要:
26.45 cm * 300 DPI / 2.54 inches = 3124 pixels.
要在屏幕上的较小区域中显示该画布,您可以使用 CSS 来显示元素,例如 -
<canvas width="3124" height="3124" style="width:600px;height:600px;"></canvas>
您现在可以在画布的实际像素位置绘制,它会在屏幕上按比例缩小显示(但保留画布本身的所有信息)。如果您使用鼠标坐标,您只需按比例缩放鼠标位置(画布位置 = 鼠标坐标 * 3124px / 600px)。
对于缩放等,它变得有点复杂,但原则仍然存在:图像的最终尺寸必须是最终结果的尺寸。
关于 DPI:如果此图像是 72 DPI 或 300 DPI,则像素数将完全相同。如前所述,原因是图像以像素为单位。
当涉及到像素设备(位图、监视器、相机等)时,DPI 是一个任意值,仅用于 DTP 软件以获取最终打印尺寸的提示,该软件将仅使用此信息来预缩放图像与您用来设置打印的页面相关。