insight-ngx-image-editor
Version:
Angular 5 Image Editor
62 lines (61 loc) • 1.83 kB
TypeScript
import { AfterViewInit, EventEmitter, OnDestroy, OnInit } from '@angular/core';
export declare class NgxImageEditorComponent implements AfterViewInit, OnInit, OnDestroy {
state: EditorOptions;
cropper: any;
croppedImage: string;
imageWidth: number;
imageHeight: number;
canvasWidth: number;
canvasHeight: number;
cropBoxWidth: number;
cropBoxHeight: number;
canvasFillColor: string;
blob: Blob;
loading: boolean;
private zoomIn;
sliderValue: number;
ratios: NgxAspectRatio[];
previewImageURL: any;
previewImage: any;
croppedImg: any;
config: EditorOptions;
file: EventEmitter<File>;
constructor();
ngOnInit(): void;
ngOnDestroy(): void;
ngAfterViewInit(): void;
private handleStateConfig();
private convertFileToBase64(file);
private addRatios(ratios);
handleCrop(): void;
undoCrop(): void;
saveImage(): void;
private initializeCropper();
setRatio(value: any): void;
zoomChange(input: any, zoom?: string): void;
setImageWidth(canvasWidth: number): void;
setImageHeight(canvasHeight: number): void;
setCropBoxWidth(cropBoxWidth: number): void;
setCropBoxHeight(cropBoxHeight: number): void;
centerCanvas(): void;
}
export interface IEditorOptions {
ImageName: string;
ImageUrl?: string;
ImageType?: string;
File?: File;
AspectRatios?: Array<RatioType>;
}
export declare type RatioType = "16:9" | '4:3' | '1:1' | '2:3' | 'Default';
export declare class EditorOptions implements IEditorOptions {
ImageName: string;
ImageUrl?: string;
ImageType?: string;
File?: File;
AspectRatios?: Array<RatioType>;
}
export interface NgxAspectRatio {
value: number;
text: RatioType;
}
export declare const NGX_DEFAULT_RATIOS: Array<NgxAspectRatio>;