zoukankan      html  css  js  c++  java
  • CALayer的contentsRect

    contentsRect

      想像下contentsRect作为层内容的可视区域。内容的矩形区域(xywidthheight)也是绑定到层的框架上的。contentRect是一个比例值,而不是屏幕上真实的像素点。默认的是0.0,0.0,1.0,1.0.当你改变x时,例如,在0和1之间你设定为0.25,那么内容的观察窗口就展示在400像素中的100像素的位置(400 x 0.25),也就是一个层原始宽度的25%。如果你设定了width属性为0.25,那么观察窗口的宽度就是100,也就是一个层原始宽度的25%2-12-2演示了contentsRect如何展示原始的图像层的区域。

    你可能想只显示你的图层的某一部分,例如图2-1所示的投射区域,那么很显然它的CGRect是(100.0,64.0,200.0,128.0),换成contentRect就是分别除以原图层的宽和高。当然还有一种情况,你不但需要整个图层,还希望有点边框,假设你要在四周加十分之一的边框,那么很显然对于width和height我们可以设置为1.2.但是x,y显然跑到第三象限去了~~~此时的contentRect是CGRectMake(-0.1,-0.1,1.2,1.2),此时如果放入一个特定大小的图层,我们得到的图像相对于放入原图层的情况,看起来会缩小。

    当然这在iOS和Mac OS X上有所不同,因为iOS上,CALayer的contents的坐标原点在左上角,使用contentRect截取的内容有所不同。

                                                                         图2-1

                                                                                 图2-2

    转载自:http://blog.csdn.net/mamong/article/details/8534999

  • 相关阅读:
    Delphi公用函数单元
    Delphi XE5 for Android (十一)
    Delphi XE5 for Android (十)
    Delphi XE5 for Android (九)
    Delphi XE5 for Android (八)
    Delphi XE5 for Android (七)
    Delphi XE5 for Android (五)
    Delphi XE5 for Android (四)
    Delphi XE5 for Android (三)
    Delphi XE5 for Android (二)
  • 原文地址:https://www.cnblogs.com/benbenzhu/p/3596379.html
Copyright © 2011-2022 走看看