创建 WebP 图片

WebP 是一种来自 Google 的图像文件格式,它提供有损压缩(如 JPEG)以及透明度(如 PNG),但可以提供比 JPEG 或 PNG 更好的压缩效果。Android 4.0(API 级别 14)及更高版本支持有损 WebP 图像,Android 4.3(API 级别 18)及更高版本支持无损和透明 WebP 图像。此页面展示了如何将图像转换为 WebP 格式以及如何将 WebP 图像转换为 PNG 格式。

有关选择正确的图像格式以提高下载速度的更多信息,请参阅减少图像下载大小

将图像转换为 WebP

Android Studio 可以将 PNG、JPG、BMP 或静态 GIF 图像转换为 WebP 格式。您可以转换单个图像或图像文件夹。

要转换图像或图像文件夹,请按以下步骤操作

  1. 右键单击图像文件或包含图像文件的文件夹,然后单击转换为 WebP
  2. 将打开正在将图像转换为 WebP 对话框。默认设置取决于当前模块的minSdkVersion设置。


    The Converting Images to WebP dialog
    图 1. 将图像转换为 WebP 对话框。
  3. 选择有损编码或无损编码。

    仅当您的minSdkVersion设置为 18 或更高时,才可以使用无损编码。

    如果选择有损编码,请设置编码质量并选择在保存之前是否预览每个转换后的图像。

    您还可以选择跳过编码版本大于原始版本或任何具有透明度或 Alpha 通道的文件的转换。由于 Android Studio 仅允许您在minSdkVersion设置为 18 或更高时创建透明 WebP 图像,因此如果您的minSdkVersion低于 18,则会自动选中跳过具有透明度/Alpha 通道的图像复选框。

    注意:无法将 9 切片文件转换为 WebP 图像。转换工具始终自动跳过 9 切片图像。

  4. 单击确定开始转换。

    如果您要转换多个图像,则转换是一个步骤,并且可以撤消以一次性恢复所有转换的图像。

    如果您选择了无损转换,则转换会立即发生。您的图像将在其原始位置转换。如果您选择了有损转换,请继续执行下一步。

  5. 如果您选择了有损转换并且选择了在保存之前预览每个转换后的图像,则 Android Studio 会在转换期间向您显示每个图像,以便您可以检查转换结果。在预览步骤中,您可以分别调整每个图像的质量设置,如图 2 所示。

    如果您没有选择预览转换后的图像,Android Studio 将跳过此步骤并立即转换您的图像。

    Converting a JPG to WebP format at 75% quality
    图 2. 以 75% 质量预览将 JPG 图像转换为 WebP 格式。

    图 2 在左侧显示原始 JPG 图像,在右侧显示有损编码的 WebP 图像。对话框显示原始图像和转换后图像的文件大小。您可以向左或向右拖动滑块以更改质量设置,并立即查看对编码图像和文件大小的影响。

    中间区域显示原始图像和编码图像之间不同的像素。在图 2 中,将质量设置为 75% 时,两个图像之间几乎没有差异。图 3 显示了以质量设置为 0% 编码的相同图像。

    Converting a JPG to WebP format at 0% quality
    图 3. 以 0% 质量预览将 JPG 图像转换为 WebP 格式。

    注意:如果将质量设置为 100% 且minSdkVersion设置为 18 或更高,则 Android Studio 会自动切换到无损编码。

    为每个您查看的图像选择质量设置。如果您要转换多个图像,请单击下一步以转到下一张图像。

  6. 单击完成。您的图像将在其原始位置转换。

将 WebP 图像转换为 PNG

如果您想将项目中的 WebP 图像用于其他目的(例如,在需要在没有 WebP 支持的浏览器中正确显示图像的网页中),您可以使用 Android Studio 将 WebP 图像转换为 PNG 格式。

要将 WebP 图像转换为 PNG,请按以下步骤操作

  1. 在 Android Studio 中右键单击 WebP 图像,然后单击转换为 PNG
  2. 将出现一个对话框,询问您是否希望在转换后删除原始 WebP 文件,或者保留原始 WebP 文件以及新的 PNG 文件。

    单击删除原始 WebP 文件,或单击保留 WebP 文件以及 PNG 文件。您的图像将立即转换。