什么是CENTER_INSIDE和FIT_CENTER规模类型之间的区别?(What's t

2019-06-26 02:36发布

我不能告诉之间的区别ImageView.ScaleType.CENTER_INSIDEImageView.ScaleType.FIT_CENTER

CENTER_INSIDE

缩放图像均匀(保持图像的纵横比),以使图像的两个尺寸(宽度和高度)会比图(减去填充)的对应尺寸等于或更少。

FIT_CENTER

计算规模,将保持原来的SRC的纵横比,但也将确保完全的src适合内部DST。 至少一个轴(X或Y)将精确地装配。 结果被内DST居中。

有人可以照亮两者之间的区别?

Answer 1:

FIT_CENTER是要确保在源完全在容器内部装配,并且水平或垂直轴将是精确的。

CENTER_INSIDE是要居中图像在容器内,而不是使边缘严丝合缝。

因此,如果你有一个方形框,为10" ×10" ,并且是8‘×8’的图像时,将CENTER_INSIDE直接在箱的源和目标容器之间的中间带2" 是。

与FIT_CENTER,从上面的例子中相同的图像,将适合整个容器,因为侧面是相等的,并有一个轴将要匹配的目的地。 随着FIT_CENTER,如果你有一个盒子,这是5" ×10" ,那就是5" ×7" 时,图像会被按比例缩放图像,轴的将适合的这么一个,但仍中心内部的图像目的地。

它们是相似的,但一个由以便源将尽可能填写目的地,而另一只是中心目标内的图像。

希望澄清一点



Answer 2:

这里的之间的差异的图示CENTER_INSIDEFIT_CENTER


图像使用(100×100):


小图像视图(75×50):

CENTER_INSIDE:

FIT_CENTER:

无论CENTER_INSIDEFIT_CENTER缩小图像。


大的图像的视图(300×200):

CENTER_INSIDE:

FIT_CENTER:

CENTER_INSIDE不放大图像, FIT_CENTER一样。


Android机器人被再现或从创建和谷歌共享并根据知识共享3.0署名许可描述的术语所使用的工作修改。



Answer 3:

他们是相同的,如果图像比容器大。 如果图像较小,则容器CENTER_INSIDE将不会缩放图像了,而FIT_CENTER会。



文章来源: What's the difference between CENTER_INSIDE and FIT_CENTER scale types?