如何以编程方式创建可打印的表单?

时间:2015-06-18 21:21:48

标签: forms layout desktop-publishing

我希望创建高质量的可打印表格 - 想想复杂的纸质表格,如纳税申报表或保险表格。最终只是一种形式,但外观漂亮,清晰,一致。

目前,这在我的组织中主要是手动过程 - 使用桌面出版(或现在称之为的任何类型)软件。

我有一个应该在表格上的模型,我们的电子系统就是这样做的。

我希望能够将我们的模型翻译成纸质形式。

此外,我希望人类编辑能够进行微小的调整/空间改进 - 然后系统验证文件是否仍然有效,即所有相关元素/文本仍然在文件上。

因此格式,无论它是什么,都必须是可写的和可读的。

我对如何执行此操作的任何/所有建议持开放态度,以下是我所看到的一些选项:

1)使用打印媒体CSS创建HTML页面 - 缺点似乎是我不能包含跳到特定页面的说明,因为只有浏览器中的打印功能知道每个元素将在哪个物理页面上。但是,验证文档是否有效似乎很容易。

2)Word / Open office - 这些都显得非常笨拙并且准备好了文档,寻找项目似乎很有野心。

3)PDF - 阅读PDF似乎是一场噩梦。

4)乳胶 - 虽然对形式有一些支持,但它似乎在乳胶世界中占有一席之地。

有没有人有这方面的经验或有关如何解决这个问题的建议?我对任何技术建议持开放态度,我不关心平台。

1 个答案:

答案 0 :(得分:1)

我建议使用HTML。我已经创建了自己的HTML编写库,但.net已经提供了一个类: https://msdn.microsoft.com/en-us/library/system.web.ui.htmltextwriter(v=vs.110).aspx

HTML(特别是现在的HTML5)的优点是你可以将javascript引入“交互式”数据。

此外,用户始终可以从几乎任何Web浏览器将文档导出为PDF。缺点是任何“额外”都需要文件夹结构(与PDF不同)。

我终于上传了my own library to GitHub,但这是非常简单的编程。只需在标记之间插入内容,然后编写IO.File.WriteAllText()即可快速写入。

每个类都以标记的字符串形式输出,并附加在“父”标记之间。