通过css设置打印机纸张大小

qlfbtfca  于 2023-01-27  发布在  其他
关注(0)|答案(6)|浏览(193)

我的打印机默认尺寸是A4,我需要用旧的点阵打印机打印8.5inx5.5in的工资单,我试着将每个工资单DIV设置为固定高度。

width: 175.6mm;
height:123.7mm;
margin-left:auto;
margin-right:auto;

虽然它完全符合工资单的大小,但打印后,纸张会一直滚动,直到它结束,因为工资单纸张都是连接在一起的,不像A4。我不希望对打印机纸张大小进行任何更改,所以我设置:

@media print 
{
   @page
   {
    size: 8.5in 5.5in;
    size: portrait;
  }
}

但谷歌浏览器的打印预览仍然显示这个:

实际上可以这样做吗?或者有没有办法在打印工资单后强制打印机停止打印,以防止它继续滚动纸张?(我认为这应该是不可能的)
我只使用谷歌浏览器。

**更新日期:

我注意到纸张大小将改变后,我选择“保存为PDF”,如果我选择回我的默认打印机,纸张大小是不正确的再次。

gojuced7

gojuced71#

也许这能行。

@media print 
{
   @page
   {
    size: 8.5in 5.5in;
    size: landscape;
  }
}

@media print 
{
   @page
   {
    size: 5.5in 8.5in ;
    size: landscape;
  }
}
hrirmatl

hrirmatl2#

上次我检查的时候,@media print在主流浏览器中的支持非常差。我遇到了一个和你类似的问题,在尝试了几周之后,我不得不给予,转而使用服务器端的pdf生成库(PDF 4 NET)。如果你需要排版,打印文档-我不认为HTML能做到这一点。

b4wnujal

b4wnujal3#

今天我用的是Chrome 32.0.1700.107 m
W3 CSS3标准建立的页面大小与“保存存为PDF”选项直接从Chrome的打印界面工作得很好。记住,使用打印机是非常不同的Chrome的打印界面,因为它使用打印机的默认大小,但在另存为PDF选项的情况下,它确实采取的大小CSS建立。
多年来,我一直对不同项目的不同接口和解决方案感到困扰(例如:直接从服务器生成PDF文件,这在处理和代码中太繁重,或者告诉用户使用Windows打印界面等)。这对我来说是一个很好的解决方案,似乎是确定的!
现在只使用网站中的CSS3就可以创建大小合适的PDF文件,而不需要使用第三方软件或其他技巧。
在您的情况下,最好的解决方案是简单地更改打印机中配置的默认纸张大小,这是我用一个小的浮动div向用户建议的,该div提供了建议,并隐藏了打印功能。但由于您不希望对打印机纸张大小进行任何更改,如果您希望避免在服务器端进行更改,则需要printig人员执行多一个步骤:首先保存PDF,然后将其从刚创建的PDF发送到打印机。

332nm8kg

332nm8kg4#

对我来说就像这样

@page {
  size: <%= @size_card[0] %>cm  <%= @size_card[1] %>cm;
  margin: 0;
}

我尝试像你说的第二个大小属性的“景观”或“肖像”,但它覆盖了最后一个,所以它不需要,因为你已经说什么是高度和什么是宽度。

1cosmwyk

1cosmwyk5#

我认为浏览器对www.example.com的设置的访问是有限Printer.it它是由操作系统和打印机驱动程序执行的(通过选择纸张来源作为拖拉机送纸器或页边距作为自定义)。

33qvvth1

33qvvth16#

这是我在最新的chrome版本104.0.5112.81(官方版本)(64位)上为纸张大小的CR-80(身份证大小)工作

@media print {
    @page {
        size: 86mm 54mm;
        margin: 0;
    }
}

相关问题