如何使用SQLite的表格数据和一些图像生成PDF?

时间:2014-04-22 10:21:46

标签: ios sqlite pdf

我的iPad应用程序中有一个SQLlite表。当用户点击按钮时#34;打印"我想调用一个方法来读取表并创建一个包含表数据的PDF文件。还想在顶部添加公司徽标和地址。

知道如何做到这一点?我是iOS编程的初学者,因此不知道从哪里开始。任何帮助表示赞赏。

由于

1 个答案:

答案 0 :(得分:0)

我最近一直在开发一个应用程序,需要生成用于通过电子邮件发送/打印的PDF文件。

为此,我使用了NDHTMLtoPDF,顾名思义从HTML生成PDF。为了完成HTML生成,我在app主包中有一个基本的HTML模板,它有自定义标签,例如{content},然后我可以使用

替换我想要的任何内容。
  

stringByReplacingOccurrencesOfString:@“{content}”withString:MY_HTML_STRING

因此,在您的基本HTML文件中,您已经拥有公司徽标和地址集以及相关的表格标签。

我感谢您是iOS编程的新手,所以我建议您查看可用于添加和替换字符串的NSString方法。

<强>更新

首先,您需要将baseHtml文件转换为NSString:

NSString *htmlString = [[NSBundle mainBundle] pathForResource:@"base" ofType:@"html"];

如上所述,HTML文件已经有标签,可以将公司徽标和地址放在页面上的所需位置。

然后,您将拥有生成表格的HTML标签,该表格将根据您希望模型数据的显示方式进行设计。

在表格中,您将拥有我通常在{}中包含的各种占位符标记,但您可以使用&lt;&gt;或者您喜欢的任何内容,您可以使用它来填充模型数据。

因此,假设您的模型中有一个属性为firstName,您可以将{firstName}放在HTML表格单元格的其中一个单元格中。

然后回到生成HTML的类中,您可以这样做:

htmlString = [htmlString stringByReplacingOccurrencesOfString:@"{firstName}" withString:[YOUR_MODEL firstName]];

然后,您将为希望在PDF中显示的每个数据模型对象执行此操作。