@wendyjs/watermarker
Version:
This is a framework-agnostic package that provides a Watermark class for managing watermarks on HTML elements. It includes features such as automatic re-rendering when mutations occur, customizable watermark styles
18 lines (17 loc) • 961 B
TypeScript
import { WatermarkConfigs, WatermarkInfo } from "./type";
export default class Watermark {
watermarkMap: Map<HTMLElement, HTMLDivElement>;
configs: WatermarkConfigs;
getClips: (content: NonNullable<WatermarkConfigs["content"]> | HTMLImageElement, rotate: number, ratio: number, width: number, height: number, font: Required<NonNullable<WatermarkConfigs["font"]>>, gapX: number, gapY: number) => [dataURL: string, finalWidth: number, finalHeight: number];
watermarkInfo: WatermarkInfo;
observer: MutationObserver;
container?: HTMLElement;
private static instance;
private debounced;
private constructor();
static create(configs: WatermarkConfigs, container?: HTMLElement): Watermark;
private onMutate;
renderWatermark(container?: HTMLElement): void;
appendWatermark(base64Url: string, markWidth: number, container: HTMLElement): HTMLDivElement | undefined;
removeWatermark(container: HTMLElement): void;
}