如何在iText中创建一个带有感叹号的圆圈?

时间:2013-01-25 13:56:05

标签: java itext

作为警告符号的一种形式,我想在填充的圆圈中添加感叹号作为pdf的图形,尽管我还没有成功。非常感谢帮助!

作为后续问题:我如何在PdfPTable单元格的右下角放置这样的符号?

1 个答案:

答案 0 :(得分:2)

听起来你真的希望将这个符号作为某种字体的字符,以便能够像任何其他字符一样处理它。

如果这是正确的,您可能需要创建具有该字符的Type 3字体。你可以用iText做到这一点,参见第11.3.2节iText in Action — 2nd Edition类型3字体,尤其是样本Type3Example.java,其中两个符号(Delta和Sigma)被创建为Type 3字体中的字符,然后用了。

角色的创造必不可少的部分是:

Type3Font t3 = new Type3Font(writer, true);
// Delta
PdfContentByte d = t3.defineGlyph('D', 600, 0, 0, 600, 700);
d.setColorStroke(new BaseColor(0xFF, 0x00, 0x00));
d.setColorFill(new GrayColor(0.7f));
d.setLineWidth(100);
d.moveTo(5, 5);
d.lineTo(300, 695);
d.lineTo(595, 5);
d.closePathFillStroke();
//Sigma
PdfContentByte s = t3.defineGlyph('S', 600, 0, 0, 600, 700);
s.setColorStroke(new BaseColor(0x00, 0x80, 0x80));
s.setLineWidth(100);
s.moveTo(595,5);
s.lineTo(5, 5);
s.lineTo(300, 350);
s.lineTo(5, 695);
s.lineTo(595, 695);
s.stroke();

// Use as regular font at size 12
Font f = new Font(t3, 12);

您所要做的就是使用直线,曲线,圆圈等创建符号......