@compdfkit_pdf_sdk/react_native
Version:
ComPDFKit for React Native is a comprehensive SDK that allows you to quickly add PDF functionality to Android, iOS, and React Native applications.
102 lines • 3.48 kB
JavaScript
/**
* Copyright © 2014-2026 PDF Technologies, Inc. All Rights Reserved.
*
* THIS SOURCE CODE AND ANY ACCOMPANYING DOCUMENTATION ARE PROTECTED BY INTERNATIONAL COPYRIGHT LAW
* AND MAY NOT BE RESOLD OR REDISTRIBUTED. USAGE IS BOUND TO THE ComPDFKit LICENSE AGREEMENT.
* UNAUTHORIZED REPRODUCTION OR DISTRIBUTION IS SUBJECT TO CIVIL AND CRIMINAL PENALTIES.
* This notice may not be removed from this file.
*/
import { CPDFAnnotation } from "./CPDFAnnotation";
import { CPDFImageData } from "../util/CPDFImageData";
/**
* @class CPDFImageAnnotation
* @group Annotations
* @property { string } [image] - Legacy Base64 encoded image string representing the image annotation.
* @property { CPDFImageData } [imageData] - Preferred image source descriptor.
*/
export class CPDFImageAnnotation extends CPDFAnnotation {
/**
* Legacy Base64 encoded image string representing the image annotation.
*
* example: "iVBORw0KGgoAAAANSUhEUgAA..."
*/
image;
/**
* Preferred image source descriptor.
*/
imageData;
constructor(params) {
super(params);
this.type = 'pictures';
this.image = typeof params.image === 'string' ? params.image : undefined;
this.imageData = params.imageData instanceof CPDFImageData
? params.imageData
: params.imageData != null
? CPDFImageData.fromJson(params.imageData)
: undefined;
}
static fromBase64(params) {
return new CPDFImageAnnotation({
title: params.title,
content: params.content,
createDate: params.createDate,
page: params.page,
uuid: params.uuid,
rect: params.rect,
imageData: CPDFImageData.fromBase64(params.base64),
});
}
static fromDataUri(params) {
return new CPDFImageAnnotation({
title: params.title,
content: params.content,
createDate: params.createDate,
page: params.page,
uuid: params.uuid,
rect: params.rect,
imageData: CPDFImageData.fromDataUri(params.dataUri),
});
}
static fromPath(params) {
return new CPDFImageAnnotation({
title: params.title,
content: params.content,
createDate: params.createDate,
page: params.page,
uuid: params.uuid,
rect: params.rect,
imageData: CPDFImageData.fromPath(params.filePath),
});
}
static fromAsset(params) {
return new CPDFImageAnnotation({
title: params.title,
content: params.content,
createDate: params.createDate,
page: params.page,
uuid: params.uuid,
rect: params.rect,
imageData: CPDFImageData.fromAsset(params.assetPath),
});
}
static fromUri(params) {
return new CPDFImageAnnotation({
title: params.title,
content: params.content,
createDate: params.createDate,
page: params.page,
uuid: params.uuid,
rect: params.rect,
imageData: CPDFImageData.fromUri(params.uri),
});
}
toJSON() {
return {
...super.toJSON(),
image: this.image,
imageData: this.imageData?.toJson(),
stampType: 'image'
};
}
}
//# sourceMappingURL=CPDFImageAnnotation.js.map