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 格式。您可以转换单个图像或图像文件夹。
要转换图像或图像文件夹,请按以下步骤操作:
- 右键单击图像文件或包含图像文件的文件夹,然后单击转换为 WebP。
将打开将图像转换为 WebP 对话框。默认设置取决于当前模块的
minSdkVersion
设置。
-
选择有损编码或无损编码。
只有当您的minSdkVersion
设置为 18 或更高版本时,才可以使用无损编码。如果选择有损编码,请设置编码质量并选择是否在保存之前预览每个转换后的图像。
您还可以选择跳过编码版本大于原始版本的文件或任何具有透明度或 alpha 通道的文件的转换。由于 Android Studio 只有在您的
minSdkVersion
设置为 18 或更高版本时才能创建透明 WebP 图像,因此如果您的minSdkVersion
低于 18,则会自动选中跳过具有透明度/alpha 通道的图像复选框。注意: 无法将 9-patch 文件转换为 WebP 图像。转换工具始终自动跳过 9-patch 图像。
-
单击确定开始转换。
如果您正在转换多个图像,则转换是一个单一步骤,可以撤消以一次性还原所有转换的图像。
如果您选择了无损转换,则转换会立即发生。您的图像将在其原始位置转换。如果您选择了有损转换,请继续执行下一步。
-
如果您选择了有损转换并选择在保存之前预览每个转换后的图像,则 Android Studio 会在转换过程中向您显示每个图像,以便您可以检查转换结果。在预览步骤中,您可以分别调整每个图像的质量设置,如图 2 所示。
如果您没有选择预览转换后的图像,Android Studio 将跳过此步骤并立即转换您的图像。
图 2 在左侧显示原始 JPG 图像,在右侧显示有损编码的 WebP 图像。对话框显示原始图像和转换后图像的文件大小。您可以向左或向右拖动滑块以更改质量设置,并立即查看对编码图像和文件大小的影响。
中间区域显示原始图像和编码图像之间不同的像素。在图 2 中,将质量设置为 75% 时,两幅图像之间几乎没有区别。图 3 显示了将质量设置为 0% 的相同图像。
注意: 如果您将质量设置为 100% 并且
minSdkVersion
设置为 18 或更高版本,则 Android Studio 会自动切换到无损编码。为每个您查看的图像选择质量设置。如果您正在转换多个图像,请单击下一步以前进到下一个图像。
- 单击完成。您的图像将在其原始位置转换。
将 WebP 图像转换为 PNG
如果您想将项目中的 WebP 图像用于其他用途(例如,在需要在不支持 WebP 的浏览器中正确显示图像的网页中),您可以使用 Android Studio 将 WebP 图像转换为 PNG 格式。
要将 WebP 图像转换为 PNG,请按以下步骤操作:
- 在 Android Studio 中右键单击 WebP 图像,然后单击转换为 PNG。
将出现一个对话框,询问您是否要在转换后删除原始 WebP 文件,或者保留原始 WebP 文件以及新的 PNG 文件。
单击是删除原始 WebP 文件,或单击否保留 WebP 文件以及 PNG 文件。您的图像将立即转换。