C# iTextSharp添加矩形注释而不是四边形注释

C# iTextSharp添加矩形注释而不是四边形注释,c#,.net,itextsharp,itextpdf,pdf-annotations,C#,.net,Itextsharp,Itextpdf,Pdf Annotations,我正在使用以下代码使用iTextSharp和C#向现有PDF添加注释。问题是注释高光的形状是四边形的,但我需要的是矩形注释。此外,是否有方法抑制将便笺添加到每个批注中 float[] quad = { rect.Rect.Left, rect.Rect.Bottom, rect.Rect.Right, rect.Rect.Bottom, rect.Rect.Left, rect.Rect.Top, rect.Rect.Right, rect.Rect.Top };

我正在使用以下代码使用iTextSharp和C#向现有PDF添加注释。问题是注释高光的形状是四边形的,但我需要的是矩形注释。此外,是否有方法抑制将便笺添加到每个批注中

float[] quad =
{
  rect.Rect.Left,
  rect.Rect.Bottom,
  rect.Rect.Right,
  rect.Rect.Bottom,
  rect.Rect.Left,
  rect.Rect.Top,
  rect.Rect.Right,
  rect.Rect.Top
};

PdfAnnotation highlight = PdfAnnotation.CreateMarkup(stamper.Writer, rect.Rect, 
Constants.vbNull.ToString(), PdfAnnotation.MARKUP_HIGHLIGHT, quad);

你试过逆时针给出四边形坐标吗?嗨@mkl,我试过按相反的顺序给出四边形,但它弄乱了注释的位置。浮点[]四元={rect.rect.Right,rect.rect.Bottom,rect.rect.Left,rect.rect.Bottom,rect.rect.Right,rect.rect.Top,rect.rect.Left,rect.rect.Top};原始顺序和其他顺序都不是逆时针顺序。但是规范要求逆时针顺序。嗨,mkl,你能发布一个订单示例吗。好的,我深入研究了这个,它看起来像(a)Adobe Reader不按照此处的规范工作,例如,但要求四点的顺序为TopLeft、TopRight、BottomLeft、BottomRight,以及(B)Adobe Reader默认情况下绘制其标记四点,左右两侧均为圆形…但规范要求“注释字典的AP条目(如果存在)将优先于四点”;因此,要真正获得矩形标记,您可以通过创建自己的外观流来获得成功。