需要由cfDocument生成的PDF格式的薄表边框

时间:2012-05-16 12:49:02

标签: css pdf coldfusion

我正在使用边框折叠(CSS)在我的桌子上制作薄边框。它们在屏幕上渲染得很好,但是当它们通过cfDocument发送到PDF时,它们最终会变成更厚的灰色边框。

我读到cfDocument还不支持边框折叠,那么什么是我最好的选择?

ColdFusion 9

8 个答案:

答案 0 :(得分:4)

表是如此90,但这似乎适用于cfdocument pdf(虽然在Web浏览器显示上不一致):

.tbl {background-color:#000;}
.tbl td,th,caption{background-color:#fff}

...

<table cellspacing="1" class="tbl">
...
</table>

(样式设置中的边框间距不起作用 - 您必须将attr放在表格标记中)

答案 1 :(得分:3)

我在cfdocument中遇到了相同的边框问题。以下是我学到的一些技巧:

而不是像这样设置你的CSS:

table td {
  border: solid thin black;
}

试试这个:

table, table td {
  border: solid black;
}
table {
  border-width: 1px 1px 0 0;
}
table td {
  border-width: 0 0 1px 1px;
}

这明确地使宽度尽可能小。此外,它避免了由于每个单元格具有自己的1px边界而导致的宽度“加倍”的问题,然后使它们彼此相邻(因此在单元格之间,实际上会有2px边框)。 / p>

此外,您可以缩小cfdocument标记的“缩放”值,以减小所有内容的大小,包括边框的粗细。

答案 2 :(得分:2)

cfdocument有很多限制。如果你正在寻找css3支持,javascript等我推荐wkhtmltopdf。它使用webkit生成PDF,因此它支持Safari / Chrome支持的大部分内容。

答案 3 :(得分:2)

我决定看看CFDOCUMENT是否会理解老式HTML,因为上面的解决方案因浏览器而异。它并不理想,但如果你需要让它发挥作用,这可能会有所帮助:

<table cellpadding="1" cellspacing="1" bgcolor="black">
    <tr>
        <td bgcolor="white">Data</td>
        <td bgcolor="white">Data</td>
    </tr>
    <tr>
        <td bgcolor="white">Data</td>
        <td bgcolor="white">Data</td>
    </tr>
    <tr>
        <td bgcolor="white">Data</td>
        <td bgcolor="white">Data</td>
    </tr>
</table>

答案 4 :(得分:1)

我建议使用报告构建器,它会为您提供精细的像素级别控制和分页。

答案 5 :(得分:0)

@gordon , your solution was very close, it did show thin borders on PDF. But it created another problem - some of the borders disappeared. I guess the solution is good for simple tables, and not complex ones.

答案 6 :(得分:-1)

“报表”构建器仅在您希望快速创建交互式表格类型报表时非常有用,该报表允许用户对行进行UN折叠以获取更多数据详细信息,这些详细信息将成为父焦点行的子级详细信息。

我必须说我发现这非常有用,并且非常接近SSRS提供的内容。但在导出为pdf或excel方面并没有真正帮助。

答案 7 :(得分:-1)

border-bottom: 0.4pt solid #ccc;