Skip to content
ComPDF
Guides

预定义注释

预定义注释允许您设置默认的注释属性,以便在创建新注释时自动应用这些属性。您可以通过 CPDFConfigurationCPDFReaderWidgetController 来设置预定义注释属性。

以下是如何设置预定义注释属性的示例:

通过 CPDFConfiguration 设置预定义注释属性

dart
CPDFReaderWidget(
  document: widget.documentPath,
  configuration: CPDFConfiguration(
    annotationsConfig: const CPDFAnnotationsConfig(
      initAttribute: CPDFAnnotAttribute(
        noteAttr: CPDFTextAttr(
          color: Colors.blue,
          alpha: 255
        ),
        highlightAttr: CPDFHighlightAttr(
          color: Colors.yellow,
          alpha: 200
        ),
        freeTextAttr: CPDFFreetextAttr(
          fontColor: Colors.black,
          fontSize: 18,
          fontColorAlpha: 255,
          alignment: CPDFAlignment.left,
          familyName: 'Helvetica',
          styleName: 'Regular',
        )
      )
    ))
);

更多注释可预定义的属性请参考 CPDFAnnotAttribute 类的定义。

通过 CPDFReaderWidgetController 设置预定义注释属性

dart
// 获取当前定义的注释默认属性
CPDFAnnotAttribute defaultStyle = await controller.fetchDefaultAnnotationStyle();

// 修改默认属性
// 修改便签注释属性
CPDFNoteAttr noteAttr = defaultStyle.noteAttr.copyWith(
  color: Colors.red,
  alpha: 128,
);
await controller.updateDefaultAnnotationStyle(noteAttr);

// 修改 Ink 注释属性
CPDFInkAttr inkAttr = defaultStyle.inkAttr.copyWith(
  color: Colors.blue,
  alpha: 200,
  borderWidth: 5
);
await controller.updateDefaultAnnotationStyle(inkAttr);

此外,还可以通过属性面板弹窗修改默认注释属性:

dart
await controller.showDefaultAnnotationPropertiesView(CPDFAnnotationType.highlight);