【问题标题】:How to add an icon to an iText PdfPCell如何将图标添加到 iText PdfPCell
【发布时间】:2014-04-30 21:55:13
【问题描述】:

我正在尝试创建一个PdfPTable,其中一个单元格中有一个图标(字形锁),另一个单元格中有文本。这个可以吗?

问题在于该图标是字体图标(引导字形图标的一部分),因此它不是实际的图像文件。我是否必须嵌入 glyphicon 字体文件并将十六进制代码用于我想要的“图像”?还有其他方法吗?

Phrase phrase = new Phrase(text, font);
cell = new PdfPCell( phrase );
cell.setColspan(this.colSpan);
cell.setBorder(border);
cell.setHorizontalAlignment(horizontalAlign);
cell.setVerticalAlignment(verticalAlign);

这是一个单元格的代码。我有另一个使用Image 创建一个新的Phrase

【问题讨论】:

  • 您可以像在 Web 上一样在 PDF 中执行此操作:引用字体并使用与您想要我们的字形相对应的字符。在 Web 上,您经常使用 CSS 和 content 作为字形,但真正重要的是字符,您可以在 HTML 中轻松做到这一点。因此,只需嵌入字体(您需要获得许可才能这样做)并使用与字形相对应的字符代码。 Helvetica 大写字母 A ASCII 65 和 glyphicon 笑脸 Unicode PUA e600 之间确实没有区别。字体就是字体,字符就是字符。

标签: itext glyphicons


【解决方案1】:

我不确定问题是什么,因为您可以创建一个 2 列的表。

PdfPTable mainTable = new PdfpTable(2);
mainTable.addCell(<phrase cell>);
mainTable.addCell(<image cell>);

如果这是问题所在,您还可以将嵌套表添加到主表中的单个单元格中。像这样(为了说明):

Phrase phrase = new Phrase(text, font);
cell1 = new PdfPCell( phrase );

Image img = ...
cell2 = new PdfPCell( img );

//Create nested table
PdfPTable dummyTable = new PdfPTable(2);
dummyTable.addCell(cell1);
dummyTable.addCell(cell2);

//Add nestedTable to cell of your main table
PdfPCell myCell = new PdfPCell(dummyTable)
mainTable.addCell(myCell)

【讨论】:

猜你喜欢
  • 2011-01-13
  • 1970-01-01
  • 2016-01-19
  • 2014-03-04
  • 1970-01-01
  • 1970-01-01
  • 2014-08-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多