我正在使用以下代码来打印包含文本和图像的HTML内容.

if (![UIPrintInteractionController isPrintingAvailable]) {

UIAlertView *alertView = [[[UIAlertView alloc]

initWithTitle:NSLocalizedString(@"Printer Availability Error Title",@"")

message:NSLocalizedString(@"Printer Availability Error Message",@"")

delegate:nil

cancelButtonTitle:NSLocalizedString(@"OK",@"OK")

otherButtonTitles:nil] autorelease];

[alertView show];

return;

}

UIPrintInteractionController *pic =

[UIPrintInteractionController sharedPrintController];

if(!pic) {

NSLog(@"Couldn't get shared UIPrintInteractionController!");

return;

}

pic.delegate = self;

UIPrintInfo *printInfo = [UIPrintInfo printInfo];

printInfo.outputType = UIPrintInfoOutputGeneral;

printInfo.jobName = @"Sample";

pic.printInfo = printInfo;

NSString *htmlString = [self prepareHTMLText];

UIMarkupTextPrintFormatter *htmlFormatter =

[[UIMarkupTextPrintFormatter alloc] initWithMarkupText:htmlString];

htmlFormatter.startPage = 0;

// 1-inch margins on all sides

htmlFormatter.contentInsets = UIEdgeInsetsMake(72.0,72.0,72.0);

// printed content should be 6-inches wide within those margins

htmlFormatter.maximumContentWidth = 6 * 72.0;

pic.printFormatter = htmlFormatter;

[htmlFormatter release];

pic.showsPageRange = YES;

void (^completionHandler)(UIPrintInteractionController *,BOOL,NSError *) =

^(UIPrintInteractionController *printController,BOOL completed,NSError *error) {

if (!completed && error) {

NSLog(@"Printing could not complete because of error: %@",error);

}

};

if (UI_USER_INTERFACE_IdioM() == UIUserInterfaceIdiomPad) {

[pic presentFromBarButtonItem:self.myPrintBarButton

animated:YES

completionHandler:completionHandler];

} else {

[pic presentAnimated:YES completionHandler:completionHandler];

}

请参阅附件中的结果(按比例缩小的版本可能不是很清楚,但希望你能得到图片).

这是我的问题:

>打印纸尺寸如何由AirPrint确定?如果我想专门为A4纸格式化和打印数据怎么办?

>使用上述代码并使用不同的模拟打印机(打印机模拟器)打印的结果是,在所有情况下,我在第一页的顶部获得1英寸的边距,但在连续页面上没有.为什么?

>使用上述代码并使用不同的模拟打印机(打印机模拟器)进行打印的结果是,在某些情况下,字体样式会丢失.结果,内容向下移动.为什么?

html打印在一张纸,html – 打印纸张尺寸和内容插入相关推荐

  1. wps不能打印_Excel表格怎么打印在一张纸上?

    不知道小伙伴们有没有遇到过一个问题,就是在需要打印表格的时候,还是特别匆忙的情况下,结果打印机没有多余的纸了,只剩下那么一两张,这就很难为人呀.当然,还有一种情况是表格本来刚好可以打印一张纸,不用浪费 ...

  2. excel怎么设置打印区域_excel:将多个表格的不同区域打印在一张纸上

    在使用excel的过程中,经常遇到这样的应用,就是有好几个表格,我们需要将他们打印到一张纸上,这样做,第一节省纸张,第二,数据在一起,对比看起来更直观,那么如何将表格的不同区域打印到一张纸上呢,我们来 ...

  3. excel怎么设置打印区域_Excel数据太多,无法完整打印在一张纸上?你这样设置即可搞定...

    日常生活中,相信很多人都会遇到这样的问题:在打印Excel表格的时候,由于表格里的数据太多了,导致了Excel表格过大,无法将其完整打印在一张纸上.那么这个时候我们要怎么办呢? 其实,想要将Excel ...

  4. 电子发票多页合并打印在一张纸上

    背景 平时打印发票时如果直接打印,会铺满一张A4,在贴票时需要进行折叠不太方便以及美观性不足,并且在发票多的时候还会造成纸张的浪费,怎么将多张发票打印在一张A4纸上呢? 推荐方法 1.前期准备: (1 ...

  5. LODOP 将多张图片拼接打印到同一张纸

    //看过很多资料没有找到将多个图片打印在同一张纸上的方法,经过设想加验证终于找到了以下方法实现且可设置图片间的间隙 function printImage() {LODOP = getLodop(); ...

  6. Excel表格太大,怎么打印在一张纸上?一个键1秒搞定!

    你在打印Excel表格的时候,有没有出现过这种情况:本该一页显示的内容硬生生被分成两页打印.结果只能尽量调小字体.单元格大小,将表格缩成一页? 其实不用这么麻烦的,想将表格打印在一张纸上,无需折腾字体 ...

  7. WPS怎么打印到一张纸上?

    我们在打印WPS表格时,会发现表格的内容不会打印在同一张纸上,看起来非常难受,如果想要将其打印在同一张纸上,要如何设置呢?下面就让小编来告诉大家WPS表格打印怎么缩放到一张纸上的方法. 操作方法: 在 ...

  8. excel打印时等分排版的绿色工具,excel如何等分,打印在一张纸上,excel 怎么把一列数据快速分成等份的几列打印

    如果我们打印时,有很多行,需要等分排版,充满一张纸.进行打印排版 使用这个绿色工具: www.excelfb.com 点击:打印排版等分,支持合并单元格的处理 用法效果如下:

  9. 把多页Word文档缩小打印到同一张纸上

    方法一:首先要确定纸张的大小和方向,系统默认的是"A4"纸,方向纵向.如果要改变,可单击:"文件"-"页面设置",进行相应的更改. 单击:& ...

最新文章

  1. 一般将来时语法课教案_「英语语法」一般过去时用法技巧全解
  2. 编写你自己的单点登录(SSO)服务(转)
  3. Windows server 2016 搭建RDS服务
  4. 如何用Java编写类似C的Sizeof函数
  5. 系统架构设计师软考考后回顾
  6. (13)Vue.js 自定义指令
  7. 杭电多校第三次 Problem A. Ascending Rating(单调队列)
  8. paip.提升用户体验---业务SQL注入漏洞的分析与解决
  9. 一级计算机wps都考些什么,计算机一级WPS考什么内容
  10. QT 学习之饼状图实现
  11. Sass系统技术选型笔记(1)OS
  12. 冷山的博客思听书摘索引页
  13. HTTP和HTTPS HTTPS为什么更安全?
  14. 学习经验分享之十一:硕士论文撰写心得
  15. Java自动识别身份证信息
  16. KVM创建虚拟机ERROR Host does not support any virtualization options
  17. 好用的小工具(二):网站权重查询小工具
  18. python利用opencv进行车牌号识别定位
  19. 2017 计蒜之道 初赛 第一场 阿里的新游戏 题解
  20. Linux 文件管理 : rm 命令详解

热门文章

  1. 初探JVM之垃圾收集器
  2. 照片打开一半是灰色怎么修复?
  3. B2B云进销存ERP系统连锁版原型(附赠:5套后台框架模版)
  4. windows系统WASAPI录音demo
  5. Python:numpy 矩阵除以向量
  6. 经验 // 通用又好用的思维工具
  7. Android中Paint字体的灵活使用
  8. 【模型修改的漫漫长路】经典VGG模型理解-这大概是目前最详细的讲解了【一】
  9. tp5.1多域名多模块设置
  10. WinSCP下载,安装