@mescius/dsimageviewer
Version:
Document Solutions Image Viewer
45 lines (44 loc) • 1.97 kB
TypeScript
/// <reference path="../../vendor/i18next.d.ts" />
//@ts-ignore
import { i18n } from "i18next";
import { ImageFormatCode } from "../../ImageViewer/Models";
import { IImageViewer } from "../../ImageViewer/Models/IImageViewer";
import { Size } from "../../ImageViewer/Models/SelectionBoxTypes";
export declare function mirrorImage(ctx: CanvasRenderingContext2D, image: HTMLImageElement, x?: number, y?: number, horizontal?: boolean, vertical?: boolean): void;
export declare type PageToolButtonKey = "rotate-image" | "flip-horizontal" | "flip-vertical" | "crop-image" | "resize-image" | "$split" | "edit-undo" | "edit-redo";
export declare type PageToolsPluginOptions = {
buttonPosition?: number | false;
toolbarLayout?: PageToolButtonKey[];
};
export declare class PageToolsPlugin {
readonly id: string;
options: PageToolsPluginOptions;
private _initialized;
private _totalRotation;
private _viewer;
constructor(options?: PageToolsPluginOptions);
get isReady(): boolean;
get instanceId(): string;
get maxImageSize(): Size;
get naturalSize(): {
width: number;
height: number;
};
get toolbarLayout(): PageToolButtonKey[];
get viewer(): IImageViewer;
initialize(viewer: any): void;
dispose(): void;
get in17n(): i18n;
get totalRotation(): number;
rotate(rotation: number): Promise<boolean>;
isImageFormatSupported(imageFormat: ImageFormatCode | string, allowUnknown?: boolean): boolean;
crop(x: number, y: number, width: number, height: number): Promise<boolean>;
resize(width: number, height: number, keepAspectRatio?: boolean): Promise<boolean>;
flip(horizontal?: boolean, vertical?: boolean): Promise<boolean>;
flipHorizontal(): Promise<boolean>;
flipVertical(): Promise<boolean>;
private _onBeforeOpen;
private _rotateImageData;
private _imageSizeAfterRotation;
private _ensureOptions;
}