BitmapSource.Create()方法中DPI的相关性是什么?

8
我阅读了维基百科上关于DPI的文章,但它让我更加困惑... 我的图片上没有DPI信息。在使用BitmapSource.Create()时应该使用什么DPI,是否可以使用一个恒定值(96/72?),如果我不打算打印图片是否真的很重要?

这可能会有所帮助:在WPF中使用PNG图像时要注意DPI。在WPF中,几乎没有必要使用除96以外的任何其他单位,因为96是默认的设备独立单位大小。 - Clemens
谢谢!我会去阅读相关资料。由于我正在使用 Photoshop 图像数据,我注意到 Photoshop 的默认值是 72,但我不确定将其传递给 BitmapSource.Create() 作为 96 是否会损坏图像。 是的,在第一个链接中有解释。谢谢! - UIlrvnd
我想看到关于最近这个答案遭受的随机负评的评论,请告诉我您为什么认为它没有用,这样我就可以尝试改进它(或投票关闭它)...我可以保证我在研究方面付出了努力。 - UIlrvnd
1个回答

13

DPI 不会以任何方式影响位图的像素。图像的 DPI 只是附加的元数据,用于描述每个像素在实际尺寸中应该有多大。

例如,您可以拥有两个图像,它们都代表一个 8.5 英寸 x 11 英寸的扫描纸张。其中一个可能来自分辨率更高的 600 DPI 扫描仪,因此每个像素的尺寸为 600 每英寸点,图像尺寸为 5100x6600。同样的纸张也可以由分辨率更低的 300 DPI 扫描仪扫描,因此其分辨率只有 2550x3300。

现在假设你想将这两个图像并排显示在屏幕上以比较这些纸张。它们应该在屏幕上是相同的尺寸。很可能较大的图像会被缩小,而不是所有像素都可见。然而,它们仍然存在,如果您放大图像,您会看到更好的质量。放大低分辨率的图像会导致显著降低的质量。

DPI 的作用是使您能够在屏幕上显示各种图像,并使它们保持适当的大小比例。这对于打印也很重要。

通常情况下,您应该坚持使用默认的 96 DPI,除非您有理由不这样做。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接