参考Build text callout with PDF Clown - 是否有可能更改标注注释中文本的字体颜色?
我还没有找到合适的方法,有人可以给我一个提示吗?
答案 0 :(得分:1)
没有明确的PDF Clown方法来设置文本颜色。这可能与PDF注释字典中没有明确的条目有关。
但有两种选择:
通常,注释中的变量文本有一个默认外观( DA )条目。由于PDF Clown不隐藏通用对象方法,您可以扩展原始的标注样本,如下所示:
fileUploadService.uploadImage
你必须在那里使用普通的PDF指令, rg 设置由前三个值定义的RGB颜色, Tf 根据前面的设置字体和大小两个值。以上结果是:
如您所见,文字现在为紫色(红色100%,绿色0%,蓝色100%)。但副作用是,标注线和标注框周围的框架也是紫色。
或者,PDF可以带来一个自己的外观流,用于定义相关注释的整个外观。但这意味着你必须自己绘制所有内容,包括线条,框架,背景和文字。
PDF Clown允许您使用// Callout.
composer.showText("Callout note annotation:", new Point(35, 85));
new StaticNote(
page,
new Rectangle(250, 90, 150, 70),
"Text of the Callout note annotation"
).withLine(
new StaticNote.CalloutLine(
page,
new Point(250,125),
new Point(150,125),
new Point(100,100)
)
)
.withLineEndStyle(LineEndStyleEnum.OpenArrow)
.withBorder(new Border(1))
.withColor(DeviceRGBColor.get(Color.YELLOW))
.getBaseDataObject().put(PdfName.DA, new PdfString("1 0 1 rg /Ti 12 Tf"));
和setAppearance
方法设置注释的外观。