十分钟快速理解DPI和PPI,不再傻傻分不清!

https://baijiahao.baidu.com/s?id=1605834796518990333&wfr=spider&for=pc
关于UX测试相关的: 之前一直搞的不是很清楚 这个百家号的解释挺好的 简单转帖一下 以后仔细研究, 

设计师充电站

18-07-1308:58

72DPI的图片拿去打印会糊吗?手机拍出来的照片是多少DPI?PS里显示72PPI为什么另存为JPG就变成96DPI了?

类似的问题层出不穷。本站很多篇文章都讲到了DPI和PPI的问题,但似乎还是不能很好地解释。这里我们以“一次性将这个问题说清楚”为目的,来好好聊聊DPI和PPI。

概念问题

不论是DPI还是PPI,实际都是一种换算的概念,即将图片承载的信息换算为现实中的图片(即人眼能实际看到的图像)。DPI和PPI的区别在于换算的途径不同,DPI面向的是印刷受体,而PPI面向的是荧幕。

1.PPI

PPI是英文Pixels Per Inch的缩写,意为像素每英寸。英寸是常用的长度单位,大约相当于2.54厘米。而像素是专用于荧幕的概念,指的是荧幕可以解析的最小的点。因此,PPI值得是像素在荧幕上的密度,PPI越高图像就越清晰。

举例来说,如果电脑屏幕是2K分辨率,即1920×1080像素,它的图像宽为1920像素。而如果这个电脑屏幕的物理宽度是19.2英寸,电脑屏幕是分辨率就是1920/19.2=100PPI。

2.DPI

DPI是英文Dots Per Inch的缩写,意为点每英寸。应粗你还是那个英寸,但是点的意义有很多。一般来讲,你可以把Dot理解为取样点,即物理设备可以解析的最小单位。在印刷时,它就可以作为印刷网点,而在鼠标等电子设备上,可以理解为最小操作阈值(即设备会把多么远的两个点当作一个点来处理)。

我们仍然拿1920×1080像素的图片来举例子,如果印刷设备的解析能力刚好是100DPI,而且你要印制的纸张尺寸刚好是19.2英寸,那么印刷设备就可以刚好把一个像素作为一个取样点,印刷完成后图片的保真度是百分之百(也就是图片所有的视觉信息都被印刷出来了)。在大多数情况下,这几个数值都不那么整好,因此保真度会产生损失。

作用原理

正如前文所说,DPI和PPI是链接图片信息和视觉的窗口,那么它们是如何产生作用的呢?

1.图片内置的DPI和PPI

图片在计算机(或其他设备)里是一系列代表视觉信息的数据,它的单位是像素。因此,真正能定义图片尺寸的是分辨率,比如前面提到的1920×1080像素。

而很多格式的图片会内置DPI或PPI这个属性,它的唯一作用是作为图形处理软件的参考值。比如,一张图片的PPI是300,那么置入Illustrator的时候就会直接是300PPI下的尺寸。DPI是完全相同的道理。换言之,不论图片的DPI和PPI如何变化,如果分辨率不变,那么图片承载的信息量就不会变化,在实际意义上图片的“大小”都是相同的。

2.设备的DPI和PPI

我们之前提到了印刷设备的解析能力这个问题。其实每个荧幕和每个印刷设备都有自己PPI或DPI参数。我们拿荧幕来说,荧幕的PPI就决定了荧幕的解析能力(注意,并非最大解析能力,而是绝对解析能力)。

如你把某个图片的尺寸在屏幕上放大缩小,它的物理尺寸在改变,因此对信息量来说PPI也在改变。然而,荧幕会按照它自己的PPI显示能力来重新解析这张图片,最终形成你肉眼看到的结果。这个过程,我们可以称为“栅格处理。”

3.栅格处理时使用的DPI和PPI

栅格处理,实际就是将图片在物理尺寸不变的情况下,对DPI或PPI进行调整,图片的信息量会受到影响。图像为何需要进行栅格处理?因为任何设备都有固定的解析能力,比如很多荧幕的解析能力是72PPI,这时一张全屏后(即在屏幕的物理尺寸下)从信息量上来说有300PPI的图片显然超过了荧幕的解析能力,因此对荧幕来说这么大的图片是没必要的,把图片在荧幕的物理尺寸下处理为72PPI就刚好了。

从上面的例子中,你也可以看出,栅格处理无处不在。你在解析能力为72PPI的电脑荧幕上查看一张图片时,不论你如何放大缩小图片,肉眼看到的都是72PPI的图像。即便图片可能被放大到模糊,你看到的仍是72PPI,因为电脑荧幕会将任何图像栅格处理到72PPI。

然而在栅格处理的过程中,处理结果的质量和原图质量有很大的关系。比如,一张在改物理尺寸下,信息量可以达到300PPI的图片,被设备栅格到150PPI,它仍然会是清晰的。而如果原信息量只有72PPI,栅格到150PPI就会看起来模糊。

对于印刷设备来说也是一样的,现代印刷机的解析能力一般是300,因此在图片的物理尺寸和预想印刷完成后的物理尺寸相同时,如果信息量达不到300DPI,那么在印刷时就会被印刷设备栅格处理到300DPI,结果就会是模糊的。但上述两者都不能算绝对,毕竟人眼的识别能力也是有限的,比如220DPI的图像被从300DPI的设备中印刷出来,肉眼也基本看不出模糊。

4.简单理解栅格

栅格处理有非常多种算法,在Photoshop中,在缩放图片的时候你可以看到类似“两次立方”、“两次线性”、“临近”这样的选项,指的就是栅格处理的计算方式。

几乎所有的栅格都是有损处理,除了某些算法中的整数倍放大。这很容易理解,毕竟栅格相当于一种缩放。试想,你将5×5像素的图片栅格成4×4像素会发生什么?由于像素完全无法一一对应,4×4像素的图片中,每个像素都需要根据原图中的9个像素来计算新的色值,因此原图的信息受到了不可逆的破坏。

实际应用

原理说了不少,那么应用的时候我们应该注意什么?

1.在条件允许的情况下,图片分辨率越高越好

我们可能不会有精力去关心图片信息量的DPI是多少,印刷设备的DPI又是多少这种细节的问题。但有一点是可以确定的,那就是图片只要足够大,印刷就会清晰。

2.如果有可能,使用准确的数值

许多软件可以帮助你了解图片实际尺寸下的PPI,比如使用Photoshop,在300PPI下创建A4的文件(尺寸21×29.7厘米,对应分辨率2480×3508像素)并做出图片,那么大多数情况下都可以完美印刷。正如前文所述,大多印刷设备的解析能力是300DPI,因此在该图片的信息量下,1个像素刚好对应1个点,甚至不需要栅格处理。而如果你强行使用400PPI来创建A4尺寸的文件,拿到300DPI的设备上会被栅格,说不定还不如300DPI的质量好(毕竟是有损处理,但这种差别未必能看得出来)。

[转帖]十分钟快速理解DPI和PPI,不再傻傻分不清!的更多相关文章

  1. 十分钟快速入门 Python,看完即会,不用收藏!

    本文以 Eric Matthes 的<Python编程:从入门到实践>为基础,以有一定其他语言经验的程序员视角,对书中内容提炼总结,化繁为简,将这本书的精髓融合成一篇10分钟能读完的文章. ...

  2. Redis 十分钟快速入门

    本教程是一个快速入门教程,所以Redis的命令只是简单介绍了几个常用的,如果有其他需求请求官网查看API 使用. 1. Redis简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的ke ...

  3. 十分钟快速学会Matplotlib基本图形操作

    在学习Python的各种工具包的时候,看网上的各种教程总是感觉各种方法很多很杂,参数的种类和个数也十分的多,理解起来需要花费不少的时间. 所以我在这里通过几个例子,对方法和每个参数都进行详细的解释,这 ...

  4. Redis数据类型简介(十分钟快速学习Redis)

    如何在ubuntu18.04上安装和保护redis 如何连接到Redis数据库 如何管理Redis数据库和Keys 如何在Redis中管理副本和客户端 如何在Redis中管理字符串 如何在Redis中 ...

  5. 十分钟快速实战Three.js

    前言 本文不会对Three.js几何体.材质.相机.模型.光源等概念详细讲解,会首先分成几个模块给大家快速演示一盒小案例.大家可以根据这几个模块快速了解Three.js的无限魅力.学习 我们会使用Th ...

  6. HDFS+MapReduce+Hive+HBase十分钟快速入门

    1.     前言 本文的目的是让一个从未接触Hadoop的人,在很短的时间内快速上手,掌握编译.安装和简单的使用. 2.     Hadoop家族 截止2009-8-19日,整个Hadoop家族由以 ...

  7. 带你十分钟快速构建好 SpringBoot + SSM 框架

    目前最主流的 java web 框架应该是 SSM,而 SSM 框架由于更轻便与灵活目前受到了许多人的青睐.而 SpringBoot 的轻量化,简化项目配置, 没有 XML 配置要求等优点现在也得到了 ...

  8. 十分钟快速创建 Spring Cloud 项目

    一般来说,Intelij IDEA 可以通过 Maven Archetype 来快速生成Maven项目,其实 IDEA 集成了 Spring 官方提供的 Spring Initializr,可以非常方 ...

  9. 巨杉Tech | 十分钟快速搭建 Wordpress 博客系统

    介绍 很多互联网应用程序开发人员第一个接触到的网站项目就是博客系统.而全球使用最广的Wordpress常常被用户用来快速搭建个人博客网站.默认情况下,Wordpress一般在后台使用MySQL关系型数 ...

随机推荐

  1. Spark Streaming和Kafka整合保证数据零丢失

    当我们正确地部署好Spark Streaming,我们就可以使用Spark Streaming提供的零数据丢失机制.为了体验这个关键的特性,你需要满足以下几个先决条件: 1.输入的数据来自可靠的数据源 ...

  2. js获取访问IP、地区、、当前操作浏览器

    js获取IP.地区.当前操作浏览器有什么用呢? 我的回答是用处很多,比如现在的异地登录和对用户常用浏览器做数据分析等. 源代码如下:index.html <!DOCTYPE html> & ...

  3. 视觉机器学习------KNN学习

    KNN(K-Nearest Neighbor algorithm, K最近邻方法)是一种统计分类器,属于惰性学习. 基本思想:输入没有标签即未经分类的新数据,首先提取新数据的特征并与测试集中的每一个数 ...

  4. netty简单样例

    package com.example.demohystrix.process; import io.netty.bootstrap.ServerBootstrap; import io.netty. ...

  5. mongo索引命令

    http://blog.csdn.net/salmonellavaccine/article/details/53907535 1. 创建/重建索引 MongoDB全新创建索引使用ensureInde ...

  6. 给ubuntu换内核

    本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 下载内核源码 有两种方式,一种方式是直接从官网:https://www.kernel.org/直接下载,另一种方 ...

  7. org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1

    项目启动报错2018-12-21 14:06:24.917 INFO 23472 --- [ main] s.c.a.AnnotationConfigApplicationContext : Refr ...

  8. 《Python从菜鸟到高手》已经出版,开始连载了,购买送视频课程

    好消息,<Python从菜鸟到高手>已经出版!!!   JetBrains官方推荐图书!JetBrains官大中华区市场部经理赵磊作序!送2400分钟同步视频课程!500个案例,400道P ...

  9. 开源纯C#工控网关+组态软件(二)工控网关的实现

    一.   工控网关是什么 网关是物联网和工控系统的核心组件.网关起的是承上启下的作用.上即上位机,电脑/触屏监控系统.MES这些:下即下位机,包括PLC.传感器.嵌入式芯片等. 不同厂家的下位机,往往 ...

  10. layui轮播中箭头不起作用问题

    layui轮播中箭头不起作用问题 layui轮播插件在使用中发现箭头不起作用其他都合适,是什么原因造成的呢?发现单独提出layui中的demo是合适的,通过仔细慢慢的寻找,发现layui.use('c ...