参见英文答案 >
How to make a HTML Page in A4 paper size page(s)?14个
我需要创建一个A4纸张大小的HTML页面.
我需要创建一个A4纸张大小的HTML页面.
我知道A4纸张尺寸的像素是:595px x 842px(字符串编号10-11).但是当我放置这些尺寸并尝试打印页面时(我打印到PDF文件,由于暂时缺少墨水),我不会让我的HTML完全适合页面:它要小得多.
当我尝试添加一些像素(当然是系数)时,我得到了794px x 1122px(字符串编号12-13),第二次打印尝试(保存为PDF文件)给了我这个版本有点的结果更大,然后需要.
那么,解决方案是什么?为什么595px x 842px与真正的A4保存为PDF不兼容?
附:我使用Chromium用于Ubuntu 13.10并且没有在Windows上检查它.
我这样做是为了能够通过PHP简单地更改值,然后将HTML页面转换为PDF,如described here.
解决方法
HTML假定屏幕为96 DPI,或1像素为1/96英寸.
在具有非常高分辨率的硬件上,它使用逻辑像素的概念,逻辑像素是接近1/96英寸的单位,并且每个单元由多个设备像素组成.这适用于打印机,也适用于具有高分辨率屏幕的手机和其他设备.
因此,如果你想要一个相同尺寸的矩形和一个A4(21×29.7厘米),你应该使用794×1122像素,或者使用CSS,宽度:794px;高度:1122px.但你也可以使用物理单位,宽度:21厘米;高度:29.7厘米,如果你不想担心这些逻辑像素.