我们有一个要求,我们已经预先打印了文具,并希望用户将数据放入 HTML 表单并能够在该表单上打印数据。对齐/文本大小等非常重要,因为预印的文具已经有每个字符的框。在java中实现这一目标的好方法是什么?我正在考虑使用碧玉报告。还有其他选择吗?可能是带有文本或其他内容的叠加图像?
此外,我们可能需要能够在普通纸上打印,在这种情况下,我们的应用程序需要打印这些框,并且打印后的表格应该与已打印的包含数据的空白信纸相匹配。
我们有一些开源框架来做这些事情吗?
Jaspersoft 报告——http: //sourceforge.net/projects/jasperreports/
然后,您将创建 XML 模板,然后您将能够生成 PDF、HTML、CSV、XLS、TXT、RTF 等格式的报告。它具有自定义报告的所有必要选项。以前用过,推荐一下。
您将使用 iReport 创建模板,然后编写代码让引擎以不同的可能方式传递数据。
检查http://www.jaspersoft.com/jasperreports
编辑:
您可以拥有背景图像并将框覆盖在其上并设置最大字符大小的限制......等等
它非常强大,并为您提供了很多选择
这是 iReport 的背景图片教程之一http://ireport-tutorial.blogspot.com/2008/12/background-image-in-ireport.html
有些事情要考虑。首先在网页方面,您要使用文具作为表单布局吗?一定要准确吗?梳理框(每个字符一个) 你想在网页上显示它,还是稍后处理梳理。你将如何处理说一个经过梳理的 6 位数字。这是否正确对齐。如果他们输入 7 位数字会怎样。文本也一样。如果它不适合怎么办。字体选择,我们在使用 W 时获得了很多乐趣...您希望框中的字符如何对齐,这意味着什么字体限制,我们查看的一些自动魔术软件确实像改变每个字符的大小这样的废话.
精梳编辑是一场噩梦,我们显示精梳,但在选择时将编辑表面提高到整个框的大小。
另一件事可能会让您发疯,您会发现盒子的大小和布局存在细微差异,因此它们从远处看起来还不错,但一列盒子会移动一个像素。一些测试人员不得不把他们的电子显微镜借给我们,这样我们才能看到我们有多少墨水分子。:(
预计会在 UI 方面花费大量时间,并记住打印的文具更改,因此为自己提供某种形式的元描述开始时会为您省去很多麻烦。
打印以电子方式填写的表格内容时,最大的问题是在预打印的表格上正确对齐。您可能会为一台打印机对齐内容,但当您使用另一台打印机时,它会完全错位。
Fly Software 有一个名为 InForm Designer 的表单设计产品,它允许用户指定和保存打印机的垂直和水平偏移量,从而很好地解决了这个问题。这确保填写的表单内容始终对齐。我试过了,效果很好。看看你自己在这里...
http://www.flysoftware.com/products/inform_designer/overview.asp
在您自己的应用程序中实现类似于 InForm 的打印机偏移可能是值得的(如果可能的话)。