介绍
yajietest-angular2-image-cropper 是一个基于 Angular 2 开发的图片裁剪组件。该组件提供了一个可定制化的 UI 界面,可以轻松地对图片进行裁剪操作,并返回裁剪后的图片数据。针对移动端的弱网速的情况做出编码优化,提高图片裁剪的速度和精度。
安装
通过 npm 安装 yajietest-angular2-image-cropper:
npm install --save yajietest-angular2-image-cropper
使用
在 Angular 2 项目中使用 yajietest-angular2-image-cropper 的步骤如下:
在对应的模块中引入 CropperModule:
-- -------------------- ---- ------- ------ - -------- - ---- ---------------- ------ - ------------- - ---- ----------------------------------- ----------- -------- - ------------- - -- ------ ----- --------- - -
在对应的组件中使用 Cropper 组件并传入图片数据:
<yajietest-cropper [imageData]="imageData" [settings]="cropperSettings" (onCrop)="cropImage($event)"> </yajietest-cropper>
其中,
imageData
是图片数据,类型为ImageBitmap
或者Image
,cropperSettings
是一个 CropperSettings 类型的对象,用于配置 Cropper 组件的 UI 界面,onCrop
事件用于监听裁剪后的图片数据。在组件中定义
imageData
和cropperSettings
对象,并提供cropImage
方法:-- -------------------- ---- ------- ------ - --------- - ---- ---------------- ------ - ---------------- --------- - ---- --------- ------------ --------- --------- ------------ ----------------------- ---------- ----------------------- -- ------ ----- ------------ - ------ ---------- ----------- - ------ ------ ---------------- ---------------- ------------- - -- --- --------------- -------------------- - --- ------------------ -------------------------- - ---- --------------------------- - ---- -- --- --------- ----- --- - --- -------- ---------- - -- -- - -------------- - ---- -- ------- - ---------------- - -------------------- ---- - -- ------------- ----------------------- - -
CropperSettings
CropperSettings 是用于配置 Cropper 组件的 UI 界面的类。它包含了以下属性:
width: number
指定裁剪框的宽度;height: number
指定裁剪框的高度;croppedWidth?: number
指定裁剪后图片的宽度,不指定时默认使用width
;croppedHeight?: number
指定裁剪后图片的高度,不指定时默认使用height
;canvasWidth?: number
指定作为裁剪用的画布的宽度,不指定时默认使用width
;canvasHeight?: number
指定作为裁剪用的画布的高度,不指定时默认使用height
;canvasFillColor?: string
作为裁剪用的画布的背景颜色,默认为'#fff'
;preserveSize?: boolean
是否保持裁剪后图片的尺寸大小,不进行等比例缩放,默认为false
;touchRadius?: number
触屏设备下响应的圆形半径,默认为20
;noFileInput?: boolean
是否禁止使用文件选择器,默认为false
;rounded?: boolean
是否使用圆形裁剪框,默认为false
;preserveAspectRatio?: boolean
是否保持宽高比例不变,默认为true
;aspectRatio?: number
指定宽高比例,若preserveAspectRatio=false
,此项设置无效。
示例代码
下面是一个简单的示例,通过 yajietest-angular2-image-cropper 对照片进行裁剪操作:
-- -------------------- ---- ------- ------- ------- ---------------- ------ ----------- ---------------- -------------------------------------- ---- ------------------ ------------------- ---------------------------- ------------------------------- -------------------- ------- ------------------------------------------
-- -------------------- ---- ------- ------ - ---------- ---------- ---------- - ---- ---------------- ------ - --------------- - ---- ----------------------------------- ------------ --------- --------- ------------ ----------------------- ---------- ----------------------- -- ------ ----- ------------ - -------------------- - ------- ---- -- ------- ----------- ------ ------ ---- ------ ------------- ---- ------ ---------------- ---------------- ------------- - -------------------- - --- ------------------ -------------------------- - ---- --------------------------- - ---- -------------------------------- - ---- --------------------------------- - ---- ----------------------------- - ---- ------------------------------ - ---- ---------------------------- - ----- ---------------------------------------------------- - -- ---------------------------------------------------- - ---------------------- -------------------------------------------------- - ------------------------ ---------- - --- -------- - ------ -------------------------- ---- - ----- ----- ---- - ----------------------- ----- --------- ---------- - --- ------------- ------------------ - ----------- ---- -- - -------------- - ------------------------ -- ----------------------------- - ------ ----------------- ---- - ----------------- - ----------- - ------ ------------------ - -- ------------------- - ----- ------- ----------------- - -------------------------- ----- ------- - ------------------------ ----- ----- - ------------------ ------------ - ------------ ------------- - ------------- ------------------------ -- --- ----- ----- ----------------- - ---------------------------- ------------- - ------------------- --------- - ------------------- ------------- - - -
结语
yajietest-angular2-image-cropper 是一个基于 Angular 2 开发的图片裁剪组件,它提供了一个易于定制化的 UI 界面和方便快捷的图片裁剪操作,帮助你更好地完成前端开发任务。希望以上介绍的内容对您有帮助,也欢迎大家提出宝贵的意见和建议。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60056cf481e8991b448e6a88