@fallen-zero/use
Version:
74 lines (73 loc) • 2.14 kB
TypeScript
interface ImageCompressionOptions {
/** 图片文件 */
file: File;
/** 清晰度 */
quality?: number;
/** 成功回调 */
success?: (url: string) => void;
/** 失败回调 */
fail?: () => void;
/** 执行完毕回调 */
complete?: () => void;
}
/** 图片压缩
* @param {ImageCompressionOptions} options 配置
* @param {File} options.file 图片文件
* @param {number} [options.quality] 清晰度
* @param {() => void} options.success 成功回调
* @param {() => void} options.fail 失败回调
* @param {() => void} options.complete 执行完毕回调
*/
export declare class ImageCompression {
private options;
constructor(options: ImageCompressionOptions);
/** 压缩图片 */
private compress;
/** 读取图片 */
private readImage;
}
/** base64转blob对象
* @param {string} base64 base64字符串
* @param {string} type 文件类型
* @returns blob
*/
export declare function base64ToBlob(base64: string, type: string): Blob;
/** base64转文件对象
* @param {string} base64 base64字符串
* @param {string} fileName 文件名
* @param {string} type 文件类型
* @returns 文件
*/
export declare function base64ToFile(base64: string, fileName: string, type: string): File;
/** 文件转二进制
* @param {File} file 文件
* @returns 二进制
*/
export declare function fileToBinary(file: File): Promise<Uint8Array>;
/**
* 获取后缀名
* @param {string} filename 文件名或文件路径
* @returns 后缀名
* @example
* getFileExt('file.pdf')
* =>
* pdf
*/
export declare function getFileExt(filename: string): string;
/** 获取文件大小
* @param {File} file 文件
* @return {string} 文件大小
*/
export declare function getFileSize(file: File): string;
/** 获取文件名称
* @param {string} file 文件
* @return {string} 文件名称
*/
export declare function getFileName(file: string): string;
/**
* 修改文件路径
* @param {string} FILE_URL 文件路径
* @return 修改后的路径
*/
export declare function useFullUrl(FILE_URL?: string): (path: string, isBase64?: boolean) => string;
export {};