Skip to content

注释云朵边框样式

允许用户对矩形、圆形和多边形注释的边框样式设置为云状样式,边框样式也可以在实线、虚线或云朵样式之间进行更改。ComPDFKit 为注释云朵边框样式设置提供了方便的 API,同时还提供了demo演示。

以下是多边形注释添加云朵样式边框的示例代码:

java
// 插入页码。
int pageNumber = 0;
// 获取pdf的页面实例。
CPDFPage page = document.pageAtIndex(pageNumber);

// 在该页面上创建矩形释对象。
CPDFSquareAnnotation squareAnnotation = (CPDFSquareAnnotation) page.addAnnot(CPDFAnnotation.Type.SQUARE);
RectF pageSize = page.getSize();
RectF insertRect = new RectF(0,0,100,100);
// 坐标转换。
insertRect = page.convertRectToPage(false,pageSize.width(),pageSize.height(),insertRect);
squareAnnotation.setRect(insertRect);
// 设置注释属性。
squareAnnotation.setBorderColor(Color.YELLOW);
CPDFBorderStyle borderStyle = new CPDFBorderStyle(CPDFBorderStyle.Style.Border_Solid, 10, new float[]{8.0F, 0F});
squareAnnotation.setBorderStyle(borderStyle);
squareAnnotation.setBorderAlpha(255);
squareAnnotation.setFillColor(Color.RED);
squareAnnotation.setFillAlpha(255);

// 设置云朵边框样式
squareAnnotation.setBordEffectType(CPDFAnnotation.CPDFBorderEffectType.CPDFBorderEffectTypeCloudy);
squareAnnotation.setBordEffectIntensity(CPDFAnnotation.BorderEffectIntensity.INTENSITY_TWO);
// 将注释更新到文档上。
squareAnnotation.updateAp();
kotlin
// 插入页码。
val pageNumber = 0
// 获取pdf的页面实例。
val page = document.pageAtIndex(pageNumber)

// 在该页面上创建矩形释对象。
val squareAnnotation = page.addAnnot(CPDFAnnotation.Type.SQUARE) as CPDFSquareAnnotation
val pageSize = page.size
// 坐标转换。
squareAnnotation.rect = page.convertRectToPage(false, pageSize.width(), pageSize.height(), RectF(0F, 0F, 100F, 100F))

squareAnnotation.apply {
  // 设置注释属性。
  borderColor = Color.YELLOW
  borderStyle = CPDFBorderStyle(CPDFBorderStyle.Style.Border_Solid, 10F, floatArrayOf(8F, 0F))
  borderAlpha = 255
  fillColor = Color.RED
  fillAlpha = 255
  bordEffectType = CPDFAnnotation.CPDFBorderEffectType.CPDFBorderEffectTypeCloudy
  bordEffectIntensity = CPDFAnnotation.BorderEffectIntensity.INTENSITY_TWO
}
// 将注释更新到文档上。
squareAnnotation.updateAp()

云朵边框样式类型枚举

NameDescription
BorderEffectIntensity.INTENSITY_ZERO影响强度范围为0 ~ 2,当为0时为实线
BorderEffectIntensity.INTENSITY_ONE
BorderEffectIntensity.INTENSITY_TWO
NameDescription
CPDFBorderEffectTypeSolid边框样式样式为实线
CPDFBorderEffectTypeCloudy边框样式样式为云朵样式