1

我有一个基于 BIRT 构建的 PDF 渲染解决方案。作为提交给渲染器的数据的一部分,可以提供富 HTML 文本。HTML 以这种格式提供:

<ul><li style="text-align:left;"><span style="font-size:12px;">
 <font face="Arial" color="#262626">Desc Num 1</font></span></li>
 <li style="text-align:left;"><span style="font-size:12px;">
 <font face="Arial" color="#262626">Desc Num 2</font></span></li>
 <li style="text-align:left;"><span style="font-size:12px;">
 <font face="Arial" color="#262626">Desc Num 3</font></span></li>
 <li style="text-align:left;"><span style="font-size:12px;">
 <font face="Arial" color="#262626">Desc Num 4</font></span></li>
 <li style="text-align:left;"><span style="font-size:12px;">
 <font face="Arial" color="#262626">Desc Num 5</font></span></li>
 <li style="text-align:left;"><span style="font-size:12px;">
 <font face="Arial" color="#262626">Desc Num 6</font></span></li></ul>

在某些系统(生产!)上,列表在项目之间呈现出巨大的空间,但在其他系统上,列表正确显示。

注意:我看到这个渲染问题只是编号列表

此处为 2 个渲染输出的图像,左侧错误,右侧正确 http://i.imgur.com/Qid4V.png

任何建议我可以采取什么方向来解决这个问题表示赞赏。罗

4

2 回答 2

0

由于这是一份报告,我相信其中一个网站会帮助您了解哪里出了问题:

此类从报告中提取样式

http://tinyreport.googlecode.com/svn-history/r19/trunk/tinyreport-birt/src/main/java/com/bradrydzewski/tinyreport/birt/xpath/StyleFactory.java

这里也是 BIRT 的规范

http://www.eclipse.org/birt/release20specs/BPS11_BIRTStyle_CSS_SPEC.pdf 您需要破解他们的代码并对其进行自定义以执行您想要的操作

由于您使用的是 3+ 它有

  • 能够将 CSS 导入报表设计。
  • 能够将 CSS 导入库。

这是与您的问题类似的论坛帖子:http: //www.eclipse.org/forums/index.php/m/365412/

和一个可以帮助你的博客:

http://birtworld.blogspot.com/2007/07/its-been-while-but-after-some-family.html

于 2012-12-20T16:41:46.903 回答
0

在发布的 HTML 代码中,或在其中嵌入的 CSS 代码中,没有任何内容导致所描述的问题。事实上,屏幕截图表明font标记至少在字体方面已被忽略(字体肯定不是 Arial 那里)。

您两次提到“编号列表”,但标记是ul, 表示“未编号”列表(或者实际上是一个项目符号列表)。因此,屏幕截图中的数字来自其他地方。在 CSS 中将项目符号列表转换为编号列表是可能且容易的。并且大概是一些 CSS 设置(或发布的代码之外的一些其他格式说明)添加了多余的间距;它可以是行高、边距或填充。

于 2012-12-20T10:56:50.183 回答