美文网首页
【PS】1.2 概念——图片

【PS】1.2 概念——图片

作者: 蓝色922 | 来源:发表于2017-05-05 10:38 被阅读642次

    版权说明:此教程系ZD9503原创,部分内容参考网络资源,如需商业用途转载请与ZD9503@jamily.cc联系,谢谢配合!

    【关于图片的那些事】

    一、图片分辨率是不是个伪概念?

    之前我们在讲图片时,主要说了两个内容,一是图片尺寸在电脑中和在现实中的表达形式,二是图片分辨率,即用 PPI 来表示图片像素密度。为了严谨起见,楼主对这两个内容作出了严格的区分解释,但在日常应用中,关于图片分辨率还有另外的说法。

    许多人认为『横纵方向上的像素数量乘积』不仅可以用来表示图片的虚拟尺寸,还可以用来表示图片的分辨率;更甚至,还有人用『整张图的像素总量』来表示图片分辨率。我们常听人说,这张图的分辨率是 800 x 600,这张图的分辨率是 48W 像素。

    这两种描述图片分辨率的方法正确吗?有人说对,因为大多数人都这么说,这大多数人里还不乏一些精通设计的大神;有人说错,证据就在于分辨率这三个字的本意,即分辨率的作用就是『衡量对细节的分辨能力』

    楼主认为,用 PPI 描述图片分辨率最为合适,但也能理解另外两种说法,甚至在日常应用中,楼主也经常采用这两种不准确的说法,至于原因为何,楼主接下来会尽量解释。希望大家不要去纠结图片分辨率到底应该怎么去描述,因为时至今日,分辨率已经是一个极其复杂混乱的概念,我们只要知道各种说法所代表的意义即可。

    前面我们了解了屏幕分辨率的相关知识,也知道了屏幕像素密度的计算方法及其意义。作为对比,我们提到了图片像素密度这个概念,并知道这就是衡量图片分辨率的值。以此作为前提,楼主问大家一个问题:我们知道屏幕像素密度的意义是衡量屏幕的清晰程度,那图片像素密度的意义是什么?

    很多人都会回答说,图片像素密度自然是用来衡量图片清晰程度的。之前楼主也是这么告诉大家的,分辨率就是为了描述精度而存在的一个概念。但楼主现在要告诉大家,这个回答说对也对,说不对也确实不对,为什么呢?因为这句话可以有两种解释方法,第一种解释方法严格来说有些问题,第二种解释方法才是正确的。

    根据公式,你需要知道下面 ① ② 两个参数才能计算出 PPI 的值:

    可在屏幕上,图片可以被随意的放大缩小,也就是说图片对角线尺寸不是固定的,你无法知道这张图的对角线究竟是几英寸;PPI 的计算需要图片的传统尺寸,如果这张图片都不会被打印,也就没有传统尺寸。既然如此,(在不打印的情况下)讨论显示器上图片的 PPI 对清晰度的影响似乎没什么意义。

    在电脑上做设计的时候都是以像素为单位的,因为载体就是屏幕。我们常常听到的说法是『给我来个 100像素 x 100像素 的头像』,也没听人说『给我来个长 1厘米,宽 1厘米的头像』。这似乎证明说,只有需要打印的时候才需要去考虑图片分辨率。

    难道图片分辨率就没什么用吗?自然不是,我们前面就讲到过,PPI 是传统尺寸与虚拟尺寸的换算桥梁,当涉及到打印时,图片分辨率就会体现自己的意义:通过决定单位范围内的像素数量来决定图片的清晰程度并决定打印的传统尺寸。

    楼主做了张图来阐述图片分辨率、虚拟尺寸、传统尺寸之间的关系。一共四步,每次操作都是在前一步的基础上做出的,右侧红字是操作说明,其下的黑字是操作原理或结果提示。

    不知道通过这张图,大家能不能更好地理解前面讲过的内容:图片在电脑上时更重要的是虚拟尺寸;在图片不需要打印的情况下,图片分辨率的意义不是来衡量图片清晰度,只需要设置好长宽像素即可;如果在新建图片时就以英寸作为单位,那图片分辨率会直接决定这张图的虚拟尺寸。

    假如,我上面说过的内容你无法理解,那你就记住接下来的这段结论:PPI 是虚拟尺寸和传统尺寸进行换算的桥梁,在图片传统尺寸是确定的情况下,PPI越高,这张图中包含的像素越多,打印出来越清晰,反之越不清晰。但如果图片只会在屏幕上显示而不会被打印,那讨论 PPI 最大的意义,就是确定这张图在屏幕上显示的实际大小,关于这一点,后面会具体解释。

    楼主带着大家来梳理下图像像素与分辨率的关系。要求能理解,强行记忆并没什么用。

    ① 同一张图片像素固定,分辨率越大,印刷出来的图片越小越清晰;分辨率越小,印刷出来的尺寸越大,画面不清晰。

    ② 同一张图片分辨率固定,像素越多,图片打印越大;像素越少,图片越小;单位范围内的像素一样多,所以清晰度相同。

    现在请我们记住:平常说的『图片分辨率』往往指的是『图片虚拟尺寸』或者『图片像素总数』。尽管这不够科学,但也有几分道理,毕竟人们总是趋向更为简单的解释。至于图片分辨率到底是不是个伪概念,相信诸位心中已经有了答案。

    二、图片分辨率设置为多少合适?

    当图片需要被打印的时候,我们就需要去考虑图片分辨率的大小问题。理论上讲,我们一直在追求更高的 PPI,但是技术限制以及情景需要这两点则是告诉了我们:合适的分辨率才是最好的选择。

    尺寸一定时,图片分辨率越高,就意味着像素越多,软件处理起来也就越费劲。要知道,PS 处理位图的实质是就对图中的像素进行处理,通过改变像素的颜色和性质来实现不同的效果。因此,PS 在处理像素较多的图片时,需要占用大量的系统资源,甚至会直接卡退。

    人眼的分辨能力也许高到我们无法想像,但是如果在特定的的距离下观看,你必须承认,人的视力是有限的。图片再细腻,隔远了你也不能『明察秋毫』,因此,为了既满足计算机处理速度又满足观看效果,不同的印刷品有不同的分辨率要求。

    最常用的值是 300 PPI,不管是洗印照片还是印刷杂志、名片,亦或者打印报告文件,300 PPI 都是一个合适的值。海报、写真等面积较大的印刷品一般设置为 100-200 左右。大型喷绘就更低了,一般在 20 左右,毕竟我们看大型喷绘时都离得挺远。

    根据观看距离来决定图片像素密度

    <0.5米:300 - 600 PPI
    0.5 米:300 - 150 PPI
    1.0 米:150 - 72 PPI
    5.0 米:100 - 50 PPI
    10 米: 50 - 10 PPI
    大于五十米:10 - 1 PPI
    注意:以上只是经验之谈,非标准

    关于印刷品分辨率,最直观的感受就是,当我们近距离看大型喷绘的时候,往往能直接看到小格子,这些格子在电脑上的时候被称为像素,被打印出来后,就成了格子。但是你看杂志就很难看到格子,因为杂志所用的图片分辨率更高,打印出的格子会小到你无法察觉。

    刚刚讲的是图片在会被打印的情况下设置 PPI,还有一种非常重要的情况,那就是当图片只在屏幕上显示而不需要被打印的时候,这时,PPI 一般都会被设置成 72。我们之前讲过,在屏幕上作图,最重要的是图片虚拟尺寸,只有在打印的时候,PPI 才有意义,那我们为什么要默认设置屏幕上的图片 PPI 为 72 呢?诸多疑惑,楼主将在下个问题里给大家澄清。

    三、不被打印的图片为何常用 72 PPI?

    有同学会问,为什么电脑上的图片(不会被打印)要设置图片分辨率?既然在屏幕上显示时,重要的是虚拟尺寸,那为什么还要再规定一个图片分辨率的值呢?首先恭喜,如果你能产生这样的疑问,说明你已经理解掌握了之前的内容。

    这个问题虽然说来话长,但也简单,不要慌,听楼主慢慢忽悠。以下,我们将用『电脑图片』来代指只会在电脑中显示,而不会被打印的图片。

    先上结论:设置电脑图片的分辨率是为了使设计更加直观化,通俗来讲,就是为了让屏幕显示出来的尺寸都等于真实尺寸,因此,我们希望电脑图片的分辨率和屏幕像素密度一样。说白了就是:我们想让屏幕上任何图片的大小都和现实中一样,拿尺子去量屏幕上的结果和打印出来再测量的结果一致。

    比如我在屏幕上画一条线段,不放大也不缩小的情况下,用尺子量是 10 英寸,我当然希望这条线被打印出来后也是 10 英寸,那如何让这张图在屏幕上显示的尺寸和在现实中显示的尺寸相同呢?自然是让图片分辨率和屏幕像素密度相同。为了帮助大家熟悉主流说法,在下文中,楼主会用屏幕分辨率来代指屏幕像素密度

    讲到这里,是不是开始对我们提出的问题产生疑惑了,为什么要设置成 72 PPI呢?难道不应该是设置成和屏幕分辨率一样的值吗?不可能每台电脑的屏幕分辨率都是 72 PPI 吧?要回答这个问题,我们就得追溯下历史。

    为了正常显示内容,操作系统必须要知道屏幕分辨率的值,不然总不能让一个像素占满了一个 30 英寸的屏幕吧,那这系统还怎么用?可在上古年间,限于技术,系统无法自动获取到屏幕分辨率的值,除非我们手动测量计算,然后把参数写入到系统配置文件中。

    我想绝大多数用户都是难以接受这种做法的。可矛盾客观存在,就必须要去解决。系统既要知道屏幕分辨率的值,又无法自动获取这个值,用户也不愿意手动告诉系统这个值是多少。如果你是系统开发者,你会怎么做?想必也只能综合下当时常见的显示器分辨率,从而给出一个默认值。

    微软的 Windows 系统默认屏幕分辨率是 96 PPI,苹果的 Mac OS 系统默认屏幕分辨率是 72 PPI。显然,这些值是人为硬性规定的,未必是显示器的真实分辨率。因此,目前我们还做不到屏幕上的一英寸就是现实中的一英寸,只能说大约是一样长,多少还是有差距的。

    刚刚说的是上古年间的事情了,现在的显示器基本都有 EDID 技术,简单来讲,就是显示器在制造时,都会往芯片上写入一个名为EDID 的文件,其中包括屏幕的颜色设置、生产时间、分辨率等。系统可以通过读取它从而知道显示器的分辨率。

    有人会问了,既然现在 EDID 技术已经非常普及了,能不能让系统别采用默认的 72 或者 96 ,就让它读取我的真实分辨率行吗?这样子我显示器上的内容不就按照真实尺寸来显示了么。的确,这是我们以后需要努力达成的一个目标,但是现在不行,不是说技术上不行,而是历史遗留的包袱太重。

    因为行业历史,大部分程序在开发的时候都默认屏幕分辨率是 96 或者 72 ,而且软件并不能很好的适应不同的分辨率,所以当我们把系统默认的分辨率改为其他值时,很多软件的窗口就会大小失调,甚至按钮残缺。

    要想真正实现『屏幕上的 5cm 就是现实中的 5cm』,我们需要等大部分开发者都慢慢意识到让程序自动适应不同分辨率的重要性,并把目前还不规范的程序一个个慢慢修正过来。总之,这还有相当长的一段路要走。

    讲到这里,这个问题似乎还没跑到正题上来,Windows 的用户数量应该比 Mac OS 更多,我们不应该少数服从多数,采用 96 PPI 吗?别着急,楼主还没讲完呢。

    为何我们更认同 72 PPI,而不是 96 PPI 呢,难道真是因为苹果公司就比微软高大上?在我这种软粉眼里,显然不是。真实原因,一方面是当时主流屏幕的 PPI 确实在 72左右,另一方是则是因为 72 PPI 比 96 PPI 更好用一些。

    为了讲清楚,我们需要引入 pt(point)这个概念,pt 是一个传统单位,和厘米、英寸没有什么本质上的区别,point 直译过来是点的意思,在 Office 办公软件里,pt 也被翻译成磅。讲到这里,你可能明白些了,pt 是用来描述字体大小的单位,正如我们常常听到的说法一样:把字体设置成 36 磅,即字体大小是 36 点。

    这个 point 和我们要讲的 72 PPI 到底有什么关系呢?巧就巧在了换算比例上: 1 英寸 = 72 点。如果我们屏幕像素密度是 72 PPI,即屏幕上的一英寸包含 72 个像素,岂不就意味着一个像素(Pixel)就代表了一个点(Point),这样做的好处是让文字大小在设计的时候看起来最为直观,举例说,36 磅的字就是宽高为 36 个像素的字。

    既然 72 PPI 和屏幕真实分辨率相近,还有利于文字设计,那何乐而不为呢?于是全世界都约定成俗的采用 72 PPI 作为设计电脑图片时的默认分辨率。

    在上个问题里,我们讲过,在电脑上显示时,图片分辨率并不重要,因为它并不能决定电脑图片的清晰程度。但我也没说,电脑图片的分辨率就毫无意义吧,现在楼主告诉大家了,电脑图片分辨率设置成 72 PPI 的意义:一是为了在电脑上显示的时候接近现实中的尺寸,二是为了更方便的设计文字大小。

    另外,还有一个重要原因是,PS 之类的软件并不是按照系统默认的 PPI 来显示内容,不管你系统认为屏幕分辨率是多少,它都会遵循 72 PPI 这个标准。这一点涉及到软件开发问题,我们便不再深入,不过讲到这,楼主表示心疼微软一秒。

    顺便再一提,有人问,为什么手机或平板的屏幕分辨率明明比 72 大很多,为什么我们还要设置为 72 呢?关于这一点吧,往浅了说,就是因为图片会进行缩放;往深了说……大概楼主也不用教 PS 了,直接开讲 Android 得了。

    这个问题大概是啰嗦完了,看起来有些枯燥,但其实还好。你要知道,绝大多数人都无法搞清楚上面的这些问题,能看到这些解释,你很幸运,幸运源自你的好学。我们多读书,不就是为了少上当受骗么。

    四、图片分辨率是怎么改变的?

    通过以前的学习,希望你能明白,楼主的这个问题是想说:在图片传统尺寸确定的情况下,怎么改变图片的虚拟尺寸,这就涉及到了插值算法的相关问题。不要看到算法两个字就发慌,我们一点点来,很简单的。

    打开图片后改变尺寸的两种姿势:

    1. 通过菜单【图像-图像大小】
    2. 默认快捷键〖Ctrl+Alt+I〗

    PS:
    我们之前讲过在 PS 里面放大图片,但那只是针对显示预览效果而言,并非真正的改变了图片的尺寸,现在的方法才是真正改变了图片的尺寸,保存后改变生效。

    最左边的是原图信息,右边两张图都是在原图的基础上做出的改动,也就是说,② 并不是在 ① 的基础上改的,而是在最左边原图的基础上更改的,这一点很重要,请注意。

    通过 ① 图可以知道,在勾选重新采样的时候,哪怕改变分辨率(72→7.2),PS 也会保持图片的传统尺寸不变,只改变图内的像素密度,即增多或减少图内的像素数量。不信的同学可以将显示尺度从英寸改为像素,看看是否会较原图有所改变。

    通过 ② 图可以知道,在不勾选重新采样的时候,改变分辨率就会改变图片的传统尺寸,这时像素数量是不会也不允许手动更改的,也就是说图像的虚拟尺寸不变,图像内的像素数量也不会改变。

    也就是说,重新采样这个开关,控制了改变分辨率的两种效果。开启时,更改PPI 的作用是,在保持图片原有传统尺寸不变的情况下,改变图片内的像素数量,从而改变虚拟尺寸(图片在屏幕上的大小);关闭时,PPI 的作用是,在保持图片原有虚拟尺寸不变的情况下,改变图片内的像素大小,从而改变传统尺寸(图片打印出来的大小)。

    既然如此,问题又来了:重新采样是如何在不改变图片的传统尺寸下改变图内像素数量的呢?这就话归正题,涉及到插值算法了,所谓重新采样 / 插值算法,就是 PS 通过基于现有像素的颜色值为所有新的像素分配颜色,从而重定像素。

    PS 里面提供了六种插值算法,且各自都有快捷键。自动不是一种插值算法,而是 PS 根据图片类型以及操作是放大还是缩小来智能选取插值算法,楼主一般都用自动。至于这六种方法,各有特点,如有需要,可以手动选择。

    ① 保留细节(扩大)

    选取该方法后,会出现“减少杂色”的滑块条。通过消除杂色的方式,保留细节。至于什么是杂色,我们以后会讲到,暂且一记。

    ② 邻近

    通过平均相邻像素的色彩决定新像素颜色。优点是速度快,缺点是不够精确,图像边缘会出现锯齿。适合色调比较单一的图片。

    ③ 两次线性

    通过平均上下左右四个像素的色彩决定新像素颜色。速度比邻近稍快,效果也稍好。同样也比较适合色调较为单一的图片。

    ④ 两次立方

    通过平均周围多个像素的色彩决定新像素的颜色。速度慢,但精度高,产生的色调更为平滑,适合绝大多数情况,比较推荐。

    ⑤ 两次立方(较平滑)

    在两次立方的基础上提高了色彩平滑程度。
    更注重色彩渐变的平滑,适合图片放大操作。

    ⑥ 两次立方(较锐利)

    在两次立方的基础上提高了色彩锐化程度。
    更注重保证图片清晰程度,适合图片缩小操作。

    PS:可以指定一种默认插值方法,以后只要进行重新取样就将使用此方法。

    1. 通过菜单【编辑-首选项-常规】
    2. 默认快捷键〖Ctrl+K〗

    通过重新采样的方法,我们可以为一张图添加更多的像素。但不要觉得,这就能把不清晰的图变清晰了,强行添加像素属于打肿脸充胖子的行为,就好比正规军里混入了杂牌军,效果能好么?

    以上,是我们在 PS 里面改变图片分辨率的一些内容。顺着这个话题,楼主拖泥带水的说点『关于低分辨率图片进行高清重建的事情』。

    在各种影视作品里,我们经常看到,警察或者黑客对着电脑一顿噼里啪啦,模糊的照片就变清晰了,这就是对低分辨率图片进行高清重建的一个典型应用。通过上面的学习,我们知道,PS 确实可以增多图片像素,能在一定程度上提高清晰度,但毕竟程度有限。

    不过也不能说影片里纯属扯淡,因为 Google 在这个问题上已经取得了重大进展。虽然没有影片里那么夸张,但其超分辨率技术 RAISR 确实令人感到震撼,哪怕是马赛克,也可以还原成相对清晰的图片。

    低分辨率高清重建,最主要的目的就是为了让图片变得更清晰,在这一方面,各种手段可谓百花齐放百家争鸣。通过不断的学习后,我们也可以通过 PS 使图片变得更清晰。在此之前,给迫不及待需要高清重建的同学们推荐几个好东西。

    1. 卷积神经网络放大图片(在线处理,效果不错,值得收藏)
    2. 无损算法放大图片工具(软件便携,图片通用,家庭必备)
    3. 超神奇的模糊修复软件(针对摄影,算法不错,模糊克星)

    五、相机分辨率越高越好吗?

    不要被相机分辨率这个词给吓到了,你可以把它理解为像素规模,即所拍图片的像素数量,比如 1000W 像素、2000W 像素等,都是对其的描述。把这个问题通俗点来说,就是:相机像素越高越好吗?

    我们知道,数码相机的核心是感光元件,要评价一个相机的好坏,不得不看感光元件。常用的感光元件有两种,CCD 和 CMOS,我们以 CCD 为例,来探索下这东西究竟得怎么看。

    有人会说了,看分辨率。这里的分辨率其实是代指的像素数量毫无疑问,大多数人买相机首先关注的参数就是分辨率,仿佛像素越高,成像质量越好。真的是这样吗?要知道,所谓的 2000W,也就是在 CCD 靶面上给你划了2000W 个像素格。

    平常我们都觉得 2000W 像素的相机已经很棒了,但万万没想到的是诺基亚竟然推出了 4100W 像素的手机,单论参数,可谓是秒天秒地秒空气。不过问题来了,这 4100W 的成像质量咋还比某些 2000W 像素差点呢?

    一个真相就这么浮现在我们眼前了:CCD 有很多参数,但其中最重要的,便是靶面的大小尺寸,而非像素数量。我会告诉你说,两个其他参数都相同但靶面大小相差一倍的 CCD,价格可能相差 10 倍吗?

    我们知道拍照的时候物体是成像在靶面上的,现在靶面那么小,你就是将靶面分成 4100W 个格子点,但每个点都不清晰,那又有什么用呢?通俗点讲,相机分辨率,也不过是厂商在 CCD 靶面上刻线罢了,也就是将CCD 分成一个个小单元罢了。如果愿意的话,估计诺基亚也是可以给你划出来 5000W 像素的。

    经常听人说 iPhone 成像效果好,于是各种猜测就来了,可能算法比别家好啊,结构设计比别家好啊!我觉得更多可能性是苹果在 CCD 的用料方面比较厚道罢了。苹果在光学方面没那么深的造诣,不必神话,相反,楼主倒觉得诺基亚的那款手机在拍照上可谓暴打苹果。

    补充一点,现在大部分的手机一般用 CMOS 作为感光元件,甚至说,在当今市场,CMOS大有一统江湖的趋势,究其原因,一是价格便宜,二是技术进步。我不是说 CMOS 就一定没有 CCD 好,100 块的 CCD 能跟 500 块的 CMOS 比吗?

    回到我们的问题,相机分辨率越高越好吗?回答是否定的,只有在 CCD 靶面尺寸一定的情况下谈相机分辨率才是有意义的。当然,我们在这里并未考虑其他影响相机的因素。

    另外,有必要提醒各位,相机中存在着最大像素和有效像素这两个概念。最大像素指的是感光元件上所集成的像素总量,有效像素指的是在最大像素中参与照片成像的像素总量。厂家往往只宣传最大像素,但更重要的其实是有效像素。

    好,打住,再聊就扯得更远了,至于摄影相关问题,楼主只知一些理论,并没上手实践过,所以这里也不夸夸其谈了。关于相机选购上,楼主经常开玩笑说,小白追求什么性价比?其实这话也不无道理嘛,反正楼主也不做导购。

    六、所有的图片都有图片分辨率吗?

    我们知道,对实际物体进行拍摄或扫描是一个数字化的过程,得到的图片被称为数码图片或数字图片。针对我们的问题,楼主要告诉大家,只有数码图片才会有图片分辨率的概念。

    你能告诉我天安门前毛爷爷的大头贴的分辨率是多少吗?好像并不能;我在纸上涂鸦,似乎也不存在图片分辨率这个问题。这其实不难想象,我们知道,图片分辨率存在的前提是像素,像素存在的前提是显示屏。因此,现实中的照片既没有像素,也没有图片分辨率。

    再问问大家,胶卷有分辨率吗?以前不管是拍照还是摄影,都用胶卷作为载体。具体原理,我们不再追究,直接告诉大家结论:胶卷没有像素这一说,也就没有分辨率这一说,但是胶卷成像异常细腻,所以哪怕是几十年前的黑白电影,只要胶片完好保存,也有可能转化成现在的 8K 分辨率的视频。

    数码相机能够挤走胶片相机,并不是因为数码相机拍照更清楚,相反,现在的绝大多数的数码相机拍照清晰度都不如曾经的胶片相机。当然,如果非要用低档胶卷相机和现在的高档数码相机对比,你当我没说。世间所有事物非得比个高下出来也就玩不下去了,要不你告诉我筷子和勺子哪个拿来吃饭更好?

    当然,也不要受到楼主的误导认为胶片相机就完爆数码相机。胶片的最大问题是,在转印、保存、复制过程中产生的误差,远超过数字信息的损失。这也是目前绝大部分技术都逐渐向数字化发展的原因。

    好了,关于图片方面与分辨率相关的内容,楼主一时间就只能想都这些了,如果有哪里没讲明白的,还请留言垂询。这一节废话比较多,讲的也有点抽象,如果一遍看不懂,纯属楼主的锅,不要失望,根据关键词,去 B 站搜索一些视频演示可能更容易理解。。


    单纯的靠 【PS】1.0 概念——分辨率 内容,,恐怕还是会有很多同学感觉云里雾里,楼主围绕着分辨率这个概念,做了一些补充说明,争取能让各个层次的同学都能理解,都能有所收获。

    需要注意的是,补充部分可能会对脑洞产生误导或损坏等不可逆的影响,请慎重决定是否阅读。希望大家都能无所畏惧,按照顺序把分辨率相关部分读完。

    【PS】0.0 前言——碎碎念
    【PS】1.0 概念——分辨率
    【PS】1.1 概念——屏幕
    【PS】1.2 概念——图片(正在查看的章节)
    【PS】1.3 概念——打印

    相关文章

      网友评论

          本文标题:【PS】1.2 概念——图片

          本文链接:https://www.haomeiwen.com/subject/zlmjtxtx.html