当前位置:操作系统 > 安卓/Android >>

Android ApiDemos示例解析(78):Graphics->ScaleToFit

在例子Android ApiDemos示例解析(74):Graphics->PolyToPoly 介绍在已知变换前后的坐标然后根据Matrix.setPolyToPoly 得到对于的变换矩阵。

此外Matrix也支持提供变换前后的两个矩形,通过setRectToRect 取得对应的变换矩阵。来看看setRectToRect 的定义:

public boolean setRectToRect(RectF src, RectF dst, Matrix.ScaleToFit stf)

src 坐标变换前的矩形
dst 坐标变换后的矩形
stf 矩形缩放选项
由于提供坐标变换前后的参数可为任意矩形,这样的话,变换前后矩形的长宽比不一定一样,提供指定Matrix.ScaleToFit选项来确定缩放选项。Matrix.ScaleToFit定义了四种选项:

CENTER: 保持坐标变换前矩形的长宽比,并最大限度的填充变换后的矩形。至少有一边和目标矩形重叠。
END:保持坐标变换前矩形的长宽比,并最大限度的填充变换后的矩形。至少有一边和目标矩形重叠。END提供右下对齐。
FILL: 可能会变换矩形的长宽比,保证变换和目标矩阵长宽一致。
START:保持坐标变换前矩形的长宽比,并最大限度的填充变换后的矩形。至少有一边和目标矩形重叠。START提供左上对齐。
ScaleToFit 绘制两个椭圆(一横一纵),两个圆 使用四种不同ScaleToFit选项的变换结果:

 \
作者:mapdigit
 

 


补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,