iText是否尊重颜色透明度?

iText是否尊重颜色透明度?,itext,Itext,我使用的是iText 5.2.1,我尝试将基色构造函数用于alpha通道,也就是 public BaseColor(final int red, final int green, final int blue, final int alpha) 但当我实际绘制文本或形状时,似乎没有考虑alpha通道。 例如,如果我尝试这个 Font f = ....; f.setColor(new BaseColor(130, 130, 130, 50); PdfContentByte cb =

我使用的是iText 5.2.1,我尝试将基色构造函数用于alpha通道,也就是

public BaseColor(final int red, final int green, final int blue, final int alpha)
但当我实际绘制文本或形状时,似乎没有考虑alpha通道。 例如,如果我尝试这个

  Font f = ....;
  f.setColor(new BaseColor(130, 130, 130, 50);
  PdfContentByte cb = writer.getDirectContent();
  ColumnText.showTextAligned(cb, Element.ALIGN_LEFT, new Phrase("my text", f),
      refPointX, refPointY, 0);
文本使用指定的颜色写入,但不包含alpha信息,即使用100%不透明度的颜色。 如果我尝试绘制一些形状,并指定具有透明度的填充颜色,也会发生同样的情况

在《iText In Action第二版》一书中,没有任何关于颜色透明度的内容


我错了吗?

我在itext邮件列表中找到了一些东西,我试着。。。作品 这是一个未记录的功能。无论如何,以下代码满足我的需要:

PdfContentByte cb = writer.getDirectContent();
PdfGState gState = new PdfGState();
gState.setFillOpacity(0.1f);
cb.setGState(gState);

如果绘制文本或形状,它们的不透明度为10%。通过
gState.setStrokeOpacity
我还可以设置笔划的不透明度。

您使用的是Adobe Reader还是其他PDF查看器?一些非Adobe PDF查看器处理透明内容的方式与Adobe不同,iText开发者只使用Adobe Reader作为参考。我只使用Adobe Reader。你有一些使用颜色不透明度的代码吗?不幸的是没有,我只是想放弃一个查看器问题。如果你没有得到这样的答案,你可能想尝试将问题提交到ITEXT。如果你发现完全解决了你的问题,考虑接受你自己的答案:如果你在画一条线,那么如果你使用GSTATE.StStukKop不克(0.1F),那么上面的作品;这个代码是做什么的?使整个文档透明?是否仅影响以下绘制命令?