1# 图像变换 2 3图片处理指对PixelMap进行相关的操作,如获取图片信息、裁剪、缩放、偏移、旋转、翻转、设置透明度、读写像素数据等。图片处理主要包括图像变换、[位图操作](image-pixelmap-operation.md),本文介绍图像变换。 4 5## 开发步骤 6 7图像变换相关API的详细介绍请参见[API参考](../reference/apis/js-apis-image.md#pixelmap7)。 8 91. 完成[图片解码](image-decoding.md#开发步骤),获取Pixelmap对象。 10 112. 获取图片信息。 12 13 ``` 14 // 获取图片大小 15 pixelMap.getImageInfo().then( info => { 16 console.info('info.width = ' + info.size.width); 17 console.info('info.height = ' + info.size.height); 18 }).catch((err) => { 19 console.error("Failed to obtain the image pixel map information.And the error is: " + err); 20 }); 21 ``` 22 233. 进行图像变换操作。 24 25 原图: 26 27 ![Original drawing](figures/original-drawing.jpeg) 28 - 裁剪 29 30 ``` 31 // x:裁剪起始点横坐标0 32 // y:裁剪起始点纵坐标0 33 // height:裁剪高度400,方向为从上往下(裁剪后的图片高度为400) 34 // width:裁剪宽度400,方向为从左到右(裁剪后的图片宽度为400) 35 pixelMap.crop({x: 0, y: 0, size: { height: 400, width: 400 } }); 36 ``` 37 38 ![cropping](figures/cropping.jpeg) 39 40 - 缩放 41 42 ``` 43 // 宽为原来的0.5 44 // 高为原来的0.5 45 pixelMap.scale(0.5, 0.5); 46 ``` 47 48 ![zoom](figures/zoom.jpeg) 49 50 - 偏移 51 52 ``` 53 // 向下偏移100 54 // 向右偏移100 55 pixelMap.translate(100, 100); 56 ``` 57 58 ![offsets](figures/offsets.jpeg) 59 60 - 旋转 61 62 ``` 63 // 顺时针旋转90° 64 pixelMap.rotate(90); 65 ``` 66 67 ![rotate](figures/rotate.jpeg) 68 69 - 翻转 70 71 ``` 72 // 垂直翻转 73 pixelMap.flip(false, true); 74 ``` 75 76 ![Vertical Flip](figures/vertical-flip.jpeg) 77 78 79 ``` 80 // 水平翻转 81 pixelMap.flip(true, false); 82 ``` 83 84 ![Horizontal Flip](figures/horizontal-flip.jpeg) 85 86 - 透明度 87 88 ``` 89 // 透明度0.5 90 pixelMap.opacity(0.5); 91 ``` 92 93 ![Transparency](figures/transparency.png) 94