Matrix.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选项的变换结果:

转载:http://blog.csdn.net/mapdigit/article/details/7782906

原文地址:https://www.cnblogs.com/could-deng/p/5043891.html