C# 使用iTextSharp PDF连续标记

C# 使用iTextSharp PDF连续标记,c#,pdf,itext,C#,Pdf,Itext,我有打印标签的工作代码。现在的问题是,我需要用连续纸张打印标签,但在iTextsharp配置iTextsharp.text.PageSize.A4中无法选择。请告知我如何根据当前场景选择页面大小 谢谢您的问题与PDF文档格式有关。在PDF中,内容分布在不同的页面上。您可以自己定义这样一个页面的大小。您提到iTextSharp.text.PageSize.A4,但您可以自己将页面大小定义为矩形对象。看 如果您想要一个长而窄的页面,可以如下定义页面大小: Document Doc = new Doc

我有打印标签的工作代码。现在的问题是,我需要用连续纸张打印标签,但在iTextsharp配置iTextsharp.text.PageSize.A4中无法选择。请告知我如何根据当前场景选择页面大小


谢谢

您的问题与PDF文档格式有关。在PDF中,内容分布在不同的页面上。您可以自己定义这样一个页面的大小。您提到iTextSharp.text.PageSize.A4,但您可以自己将页面大小定义为矩形对象。看

如果您想要一个长而窄的页面,可以如下定义页面大小:

Document Doc = new Document(new Rectangle(595f, 14400f));
Document Doc = new Document(new Rectangle(360, 144));
尽管如此,还是存在一些实现限制。页面的最大高度或宽度为14400个用户单位。请参阅博客帖子

然而,我很确定你不想创建一个狭长的页面。如果要在连续纸张上打印标签,则需要创建一个PDF文档,其中每个页面的大小正好是一个标签。您的PDF将具有与标签一样多的页面

假设一个标签的尺寸为5×2英寸宽:12.7厘米;高度:5.08cm,则应创建如下文档:

Document Doc = new Document(new Rectangle(595f, 14400f));
Document Doc = new Document(new Rectangle(360, 144));
你应该确保标签上的所有内容都放在一个页面上。标签打印机应该知道PDF中的每一页都应该打印在单独的标签上

感谢@amedeeVanGasse更正我的初始答案