是否有可能控制top&使用UIMarkupTextPrintFormatter时的底页页边距?

时间:2011-02-01 23:10:03

标签: iphone css printing ios-4.2

我正在尝试使用iOS 4.2中的打印内容从我的iPhone应用程序进行打印,但是我很难将多页内容显示出来。正如您在附加的iOS打印API生成的PDF屏幕截图中所看到的,UIMarkupTextPrintFormatter在渲染时非常喜欢使用极小的上边距。

此外,它似乎也没有试图将块元素拆分得太漂亮......在屏幕截图中很难看到但是分页实际上发生在表行的中间,而不是在行之间的边界上。

我尝试使用CSS @page指令来指定页面边界,但iOS Webkit似乎根本不支持这些。

有没有人知道HTML或iOS SDK中的任何技术,以使这些顶级利润更大?

我真的不想编写自定义的UIPrintPageRenderer类,因为我试图让我的用户能够通过HTML模板自定义他们的打印输出...使用自定义渲染器几乎肯定会使这个不可能(或者真的难)。

非常感谢任何帮助!

Top-of-page are really small by default

1 个答案:

答案 0 :(得分:2)

您使用UIPrintPageRenderer走在正确的轨道上,但幸运的是,您无需编写自定义子类来执行此操作。您需要做的就是实例化一个vanilla UIPrintPageRenderer,设置headerHeightfooterHeight属性,然后使用addPrintFormatter:startingAtPage:将HTML格式化程序添加到渲染器。它只需要几行代码,我在这里发布了我的方法:Print paper size and content inset