Android Studio 对矢量图形支持的说明

128 阅读3分钟

对 PSD 文件的支持和限制

Vector Asset Studio 并非支持所有 PSD 文件功能。以下列表总结了支持和不支持的 PSD 特性以及一些转换详情。

文档

支持:

  • PSD 颜色模式:位图、灰度模式、索引、RGB、Lab 或 CMYK。
  • 色深:8 位、16 位或 32 位。

转换详情:

  • PSD 文档尺寸将成为矢量可绘制对象和视口尺寸。

不支持:

  • PSD 颜色模式:双色调或多通道。

形状

支持:

  • 剪切蒙版(如果剪切母版是其他形状)。
  • 形状运算,包括合并/加上、相交、减去和排除。

不支持:

  • Photoshop 形状使用的奇偶填充规则。在 Android 6.0(API 级别 23)及更低版本中,矢量可绘制对象仅支持非零填充规则。在自相交形状中,此限制可能会导致 PSD 和产生的矢量可绘制对象之间出现渲染差异。要解决此问题,请在矢量可绘制对象中的形状上添加 android:fillType="evenOdd"。例如:

    <vector xmlns:android="https://schemas.android.com/apk/res/android"
        android:viewportHeight="168"
        android:height="24dp"
        android:viewportWidth="209"
        android:width="24dp">
    
        <path
            android:fillAlpha="1.0"
            android:fillColor="#000000"
            android:fillType="evenOdd"
            android:pathData="M24,58 L24,167 L114,167 L114,66 M64,1 L64,96 L208,96 L208,8 M1,97 L146,139 L172,47"/>
    </vector>
    

描边和填充

支持:

  • 描边,包括颜色、不透明度、宽度、连接、端点、虚线和对齐。
  • 单色填充和描边。
  • 指定为 RGB、Lab 或 CMYK 的描边和填充颜色。

转换详情:

  • 如果描边为虚线、使用剪切母版进行剪切或使用居中对齐以外的对齐方式,Vector Asset Studio 会将其转换为矢量可绘制对象中的填充形状。

不支持:

  • 单色以外的颜色填充和描边,如渐变。

不透明度

支持:

  • 不透明度为 0 的形状图层。

转换详情:

  • Vector Asset Studio 将填充不透明度与图层不透明度相乘,计算出填充 Alpha 值。
  • 该工具将剪切母版(如果有剪切母版)的不透明度与填充 Alpha 值相乘,计算出最终的填充 Alpha 值。
  • 该工具将描边不透明度与图层不透明度相乘,计算出描边 Alpha 值。
  • 该工具将剪切母版(如果有剪切母版)的不透明度与描边 Alpha 值相乘,计算出最终的描边 Alpha 值。

图层

支持:

  • 任何可见的形状图层。**

转换详情:

  • Vector Asset Studio 会在矢量可绘制对象文件中保留图层名称。

不支持:

  • 图层效果。
  • 调整和文本图层。
  • 混合模式(忽略)。

对 SVG 文件的支持和限制

Vector Asset Studio 并非支持所有 SVG 文件功能。以下部分总结了该工具将 SVG 文件转换为 VectorDrawable 时支持和不支持的功能,以及其他转换详情。

支持的功能

VectorDrawable 支持 Tiny SVG 1.2 的所有功能,但文本除外。

形状

VectorDrawable 支持 SVG 路径

该工具可将基元形状(如圆形、正方形和多边形)转换为路径。

变换

该工具支持变换矩阵并直接将其应用于子路径。

该工具支持对组元素进行平移、缩放和旋转。组不支持不透明度属性。

该工具还会将任何组样式或不透明度应用于子路径。

填充和描边

可以使用单色或渐变(线性、径向或角度)对路径进行填充和描边。仅支持居中描边,不支持混合模式,也不支持虚线路径。

蒙版

该工具支持每组一个剪切蒙版。

SVG 导入程序不支持的功能

上面支持的功能部分中未列出的功能都不受支持。值得注意的不支持的功能包括:

  • 滤镜效果:不支持阴影、模糊和颜色矩阵等效果。
  • 文本:建议使用其他工具将文本转换为形状。
  • 图案填充