iText-为商店售票机生成PDF

iText-为商店售票机生成PDF,pdf,itext,printers,Pdf,Itext,Printers,我使用的是iText 5.4.4,我想为连续纸张票据打印机生成PDF。我的疑问是如何设置新文档以避免将pdf拆分为多个页面: Rectangle pagesize = new Rectangle(360f, 720f); Document document = new Document(pagesize, 36f, 72f, 108f, 180f); 有可能做到这一点吗?PDF不是HTML。PDF是一种页面描述语言。在PDF文件的根目录中,有一个名为Catalog dictionary的对象。

我使用的是iText 5.4.4,我想为连续纸张票据打印机生成PDF。我的疑问是如何设置新文档以避免将pdf拆分为多个页面:

Rectangle pagesize = new Rectangle(360f, 720f);
Document document = new Document(pagesize, 36f, 72f, 108f, 180f);

有可能做到这一点吗?

PDF不是HTML。PDF是一种页面描述语言。在PDF文件的根目录中,有一个名为Catalog dictionary的对象。在本目录词典中,有对页面树的引用。此页面树是一种包含对文件中每个页面的引用的结构。页面是PDF中的自治元素。假设您有一个包含10000页的PDF,并且只需要10000页,那么您可以直接获取该页,而无需呈现前面的9999页。这是PDF的“存在理由”。因此你的问题听起来很奇怪:PDF固有的页面

似乎你想创建一个只有一个页面的PDF文件,其中包含许多票,每张票的高度为10英寸。在这种情况下,您必须创建一个大页面,在该页面上打印所有这些票据(请注意,这是一个坏主意,但我只是回答您的问题)

您需要考虑,PDF页面有一个最大大小。宽度最大值为14400,高度最大值为14400。因此,如果要为大量高度为10英寸的票证创建一个页面,可以创建如下页面:

Rectangle pagesize = new Rectangle(360f, 14400f);
您将能够在此页面上安装20张高度为10英寸(720个用户单位)的门票,而不是更多