Class: StampAnnotation

PSPDFKit.Annotations.StampAnnotation

PSPDFKit for Web supports stamp annotations and comes with some out-of-the-box stamp annotations available.

Constructor

new PSPDFKit.Annotations.StampAnnotation(args)

Display a stamp annotation, which represent a predefined or customized stamp in a PDF file.

Parameters:
Name Type Description
args object

An object of the members.

Example

Create a stamp annotation

var annotation = new PSPDFKit.Annotations.StampAnnotation({
  pageIndex: 0,
  stampType: 'Custom'
  title: 'Example Stamp',
  subtitle: 'Example Stamp Annotation',
  color: new Color({ r: 0, g: 51, b: 79 }),
  boundingBox: new PSPDFKit.Geometry.Rect({ left: 10, top: 20, width: 150, height: 40 }),
});

Extends

Members




Members

blendMode: PSPDFKit.BlendMode

The blend mode defines how the color of the annotation will be applied to its background.

Type:
Default Value:
  • "normal"

boundingBox: PSPDFKit.Geometry.Rect

Position of this annotation on the page. It's necessary that this spans all visible points of the annotation, otherwise hit testing and other features may not work.

Type:

(readonly) canSetGroup: boolean

This property defines whether the user has permission to edit the group of this annotation.

It is only available when collaboration permissions is enabled on Server-Backed deployments.

Type:
  • boolean

(nullable) color: PSPDFKit.Color

The color of a stamp annotation.

Type:

createdAt: Date

The date of the annotation creation.

Type:
  • Date

(nullable) creatorName: string

The name of the creator of the annotation. This is a general purpose string which can easily be spoofed and might not reflect the actual creator of the annotation.

Type:
  • string

(nullable) customData: object

Annotations can store additional user-specified data.

PSPDFKit will not use or evaluate customData in the UI directly. You have full control over this property. For new annotations, this defaults to null.

customData will be stored as JSON through JSON.serialize() and JSON.parse(), and so must be a plain JSON-serializable object.

Type:
  • object
Example

Adding a new PSPDFKit.Annotations.EllipseAnnotation with custom data attached:

const annotation = new PSPDFKit.Annotations.EllipseAnnotation({
  pageIndex: 0,
  boundingBox: new PSPDFKit.Geometry.Rect({
    top: 10,
    left: 10,
    width: 100,
    height: 100
  }),
  customData: {
    circleId: "my-circle"
  }
});

group: string

This property is used to define the permission scope for this annotation.

It is only available when collaboration permissions is enabled on Server-Backed deployments.

Type:
  • string

hidden: boolean

If set, do not display or print the annotation or allow it to interact with the user.

Type:
  • boolean
Default Value:
  • false

id: string

A unique identifier to describe the annotation. When an annotation is created in the UI, the viewer has to generate a unique ID.

When changes are saved to the underlying annotation provider, we call PSPDFKit.Instance#ensureAnnotationSaved to make sure the annotation has been persisted from the provider.

Type:
  • string

(readonly) isDeletable: boolean

This property defines whether this annotation can be deleted or not. The value of this field depends on the set of collaboration permissions defined in the JWT token.

It is only available when collaboration permissions is enabled on Server-Backed deployments.

Type:
  • boolean

(readonly) isEditable: boolean

This property defines whether this annotation can be edited or not. The value of this field depends on the set of collaboration permissions defined in the JWT token.

It is only available when collaboration permissions is enabled on Server-Backed deployments.

Type:
  • boolean

locked: boolean

The annotation flag that prevents the annotation from being modified.

Type:
  • boolean
Default Value:
  • false

lockedContents: boolean

The annotation flag that prevents the annotation content from being modified.

Type:
  • boolean
Default Value:
  • false

(nullable) name: string

An optional field that may be used to identify the annotation.

By default, we'll set that to the same value as the automatically generated PSPDFKit.Annotations.Annotation#id.

Type:
  • string

noPrint: boolean

The annotation flag that prevents the annotation from being printed.

Type:
  • boolean
Default Value:
  • false

noView: boolean

The annotation flag that prevents the annotation from being rendered in the UI.

The annotation may still be part of the printed page, depending of the value of the PSPDFKit.Annotations.Annotation#noPrint flag.

Type:
  • boolean
Default Value:
  • false

(nullable) note: string

An optional note that can be set on any annotation.

This value is displayed in the PSPDFKit for Web UI for all annotations except NoteAnnotation, TextAnnotation, WidgetAnnotation and CommentMarkerAnnotation.

Type:
  • string

opacity: number

A transparency value that is applied to the complete annotation. The value is capped between 0 and 1 inclusive.

Type:
  • number
Default Value:
  • 1

pageIndex: number

The page index on which the annotation is placed. It's important to notice that an annotation can only ever be on one page. If you create for example an ink annotation with lines on two pages, two annotation records will be created.

pageIndex is zero-based and has a maximum value of totalPageCount - 1.

Type:
  • number

(nullable) pdfObjectId: number

When the annotation is extracted directly from a PDF file, the pdfObjectId refers to the identifier that was used in the PDF document.

This ID is optional since newly created annotations using the SYNCProvider annotation provider won't have a pdfObjectId assigned.

Type:
  • number
Default Value:
  • null

readOnly: boolean

The annotation flag that makes the annotation read only.

Type:
  • boolean
Default Value:
  • false

rotation: number

The counter-clockwise rotation value in degrees relative to the rotated PDF page. Inserting an annotation with a rotation value of 0 will make it appear in the same direction as the UI appears, when no PSPDFKit.ViewState#pagesRotation is set.

Stamp annotations support free rotation using integers between 0° and 359°. Negative values or values above 359 are normalized to this interval. Attempting to use non-integer values will result in an error.

Type:
  • number
Default Value:
  • 0

stampType: string

One of the predefined stamp types. Can be any of:

  • Approved
  • NotApproved
  • Draft
  • Final
  • Completed
  • Confidential
  • ForPublicRelease
  • NotForPublicRelease
  • ForComment
  • Void
  • PreliminaryResults
  • InformationOnly
  • Rejected
  • Accepted
  • InitialHere
  • SignHere
  • Witness
  • AsIs
  • Departmental
  • Experimental
  • Expired
  • Sold
  • TopSecret
  • Revised
  • RejectedWithText
  • Custom
Type:
  • string
Default Value:
  • "Custom"

(nullable) subject: string

An optional annotation subject, representing a short description of the subject being addressed by the annotation. This property has no effect on the annotation rendering.

Type:
  • string

(nullable) subtitle: string

The sub text of a custom stamp annotation.

Type:
  • string

(nullable) title: string

The main text of a custom stamp annotation.

Type:
  • string

updatedAt: Date

The date of last annotation update.

Type:
  • Date

See also