在矢量图中,viewportWidth和viewportHeight的单位是什么?

5

我尝试了解在VectorDrawable中viewportWidth和viewportHeight的单位(dp、sp、px),但是我没有找到任何关于viewportWidth和viewportHeight单位的信息。以下是我从Android文档中得到的内容。

https://developer.android.com/reference/android/graphics/drawable/VectorDrawable.html

  • android:width 用于定义可绘制对象的固有宽度。支持所有尺寸单位,通常使用 dp。
  • android:height 用于定义可绘制对象的固有高度。支持所有尺寸单位,通常使用 dp。
  • android:viewportWidth 用于定义视口空间的宽度。视口基本上是路径绘制的虚拟画布。
  • android:viewportHeight 用于定义视口空间的高度。视口基本上是路径绘制的虚拟画布。

请问有人可以帮我吗?

1个回答

8
viewportWidthviewportHeight没有与其关联的物理单位。这是因为它们没有有意义的单位可以关联,矢量图形将始终缩放到物理大小。矢量可绘制对象在SVG中的单位是“用户坐标系”,这意味着可绘制对象的单位是用于设置可绘制对象实际大小的任何单位。 widthheight定义了矢量可绘制对象的默认大小。这些具有有意义的单位,因为如果您没有指定大小,那么可绘制对象将显示为该大小。
例如,如果您有一个大小为50x50dp的矢量可绘制对象,并且视口大小为50x50,则视口大小的“单位”可以解释为dp,因为每个可绘制对象的“单位”映射到单个dp。
同样,如果该可绘制对象的大小为50x50px,则视口的“单位”有效地为px-每个可绘制对象的“单位”将是一个像素。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接