如何从英寸计算像素进行打印

时间:2015-12-19 00:21:15

标签: css printing media

我想允许用户选择固定的纸张尺寸和dpi,然后生成一个div容器,其中的图像具有足够的宽度/高度,当它发送到具有相同设置的打印机(相同的纸张尺寸和dpi)时,它将具有预期的尺寸/质量。

据我所知,这个公式非常简单,我做了什么: 如果用户选择24“x 18”,72 dpi 它生成一个div容器,图像为1728px x 1296px(24“x 72dpi = 1728px宽度和18”x 72dpi = 1296px)

但是当我将带有媒体打印的div发送到打印机时,即使我的PDF打印机设置为24“x18”x 72dpi,其尺寸实际上也小于纸张。

我的公式是否正确?

enter image description here

1 个答案:

答案 0 :(得分:0)

出于打印目的,您可以定义"打印样式",其功能类似于媒体查询(实际上 是媒体查询):

@media print {
    body {
        background: none;
    }
    .my_wrapper {
      width: 80%;
      margin: 2in auto;
    }
etc.
}

在那里你可以用绝对单位定义所有元素的大小,例如厘米,英寸等。看看这里:http://www.w3schools.com/cssref/css_units.asp(在该页面的底部)

(记住:那里有什么,只对打印输出有效)

您还可以设置分页符以确定将网页划分为打印页面的位置,请参阅http://www.w3schools.com/cssref/pr_print_pageba.asp和以下页面。

因此, 可以为打印输出制定相对精确的布局。但这需要做很多工作,而且在您的网站上放置一个人们可以打印出来的pdf通常会更容易。