将列文本旋转60度

时间:2011-03-08 09:26:09

标签: java jasper-reports

如何在iReport中为报表旋转列文本60度?

2 个答案:

答案 0 :(得分:3)

据我所知,iReport工具本身不支持旋转文本。这给你留下了很少的选择,我已经概述了。

解决方案#1

使用图形编辑器(例如Inkscape)手动创建已经旋转文本的静态图像。将该图像作为报告列名称嵌入报告中。

解决方案#2

使用基于命令行的工具(例如ImageMagick)自动创建带有旋转文本的静态图像。像以前一样嵌入图像。

解决方案#3

创建一个Web服务,当给定文本字符串时,角度和fount(即字体大小,权重和族)可以相应地生成图像。使用此URL嵌入图像,并将URL设置为使用列文本作为字符串绘制角度的表达式。例如:

http://localhost:9000/ImageServlet?text=$V{text}&angle=60&family=Arial&size=12pt

请注意$V{text}的使用。另请注意,语法不正确,但应该让您了解所需的内容。

解决方案#4

开发一个可以自定义报告的类。为此,您必须使用iText APIJasperReports API来确定必要的方法调用。

答案 1 :(得分:1)

我为该任务编写了一个scriptlet。它用roated文本创建了一个图像,下面是透明背景。可以在jasper布局中设置字体系列,样式和大小,文本颜色等。有关详细信息和代码,请参阅此处:http://jasperforge.org/plugins/espforum/view.php?group_id=83&forumid=101&topicid=52656#99620