建立 WebP 圖片

WebP 是 Google 發行的一種圖片檔案格式,能同時提供如同 JPEG 的破壞性資料壓縮 (有損壓縮) 及比照 PNG 的透明度,且相比上述兩者還有更好的壓縮效果。Android 4.0 (API 層級 14) 以上版本可支援有損 WebP 圖片檔;Android 4.3 (API 層級 18) 以上版本可支援無損和透明的 WebP 圖片檔。本頁將說明將圖片轉換為 WebP 格式、WebP 圖片轉換為 PNG 格式的方法。

注意:只有 Android 4.3 以上版本會支援無損、透明的 WebP 圖片檔。換句話說,您的專案必須至少是 API 18 以上的 minSdkVersion 才能建立透過 Android Studio 建立無損或透明的 WebP 圖片。

想進一步瞭解 WebP 圖片格式,請參考 WebP 網站。而想進一步瞭解如何選取正確的圖片格式來提高下載速度,請參考縮減下載圖片的大小一節。

將圖片轉換為 WebP

Android Studio 可將 PNG、JPG、BMP 或靜態 GIF 圖片轉換成 WebP 格式。可以轉換個別圖片或圖片資料夾。如要轉換圖片或圖片資料夾,請按照下列步驟操作:

  1. 對圖片檔或含有圖片檔的資料夾按一下滑鼠右鍵,然後按一下左鍵選擇「轉換為 WebP」
  2. 系統會隨即開啟「將圖片轉換為 WebP」對話框。預設狀態是取決於當下模組的 minSdkVersion 設定。

    圖 1.「將圖片轉換為 WebP」對話框

  3. 選取有損或無損編碼。只有在 minSdkVersion 設為 API 18 以上時,才能使用無損編碼。如果您選取有損編碼,請接著設定編碼品質,並選擇是否在儲存前先檢視每張轉換後圖片的預覽畫面。

    您也可以選擇略過轉換檔案的過程,但這樣編碼版本的檔案將會大於原始檔,及其他有透明度或支援 Alpha 通道的任何檔案。由於僅有 minSdkVersion 設在 API 18 以上的版本能透過 Android Studio 建立透明的 WebP 圖片,在 minSdkVersion 低於 API 18的狀況下系統會自動勾選「略過圖片透明化/Alpha 通道」

    注意:9-patch 檔案無法轉換成 WebP 圖片檔。轉換工具會自動略過 9-patch 圖片檔。

  4. 按一下「確定」即可開始轉換。轉換是單一步驟,因此在轉換多個圖片時,您可以選擇一次復原已轉換的所有圖片。

    如果您選取了無損轉換,系統會立即進行轉換。圖片將會在原始位置轉換。如果您選取的是有損轉換,請繼續進行下一個步驟。

  5. 如果您選取了有損轉換,並選擇在儲存前瀏覽轉換過的圖片,Android Studio 就會在轉換期間顯示每張圖片,方便您查看結果。(如果您選擇跳過預覽畫面,Android Studio 將會略過這個步驟,並立即轉換圖片)。您可以在預覽步驟中調整各圖片的畫質設定,同下方說明。

    圖 2.將 JPG 格式轉換為 75% 畫質的 WebP 格式

    圖 2 左側為原始 JPG 圖片;右側是經過有損編碼的 WebP 圖片。對話框中有顯示原始圖片和轉換後圖片的檔案大小。將滑桿向左右拖曳即可變更畫質設定,並且即時查看相對應的圖片樣貌與大小。

    中間部分表現的是原始圖片和轉換後圖片之間的畫質差異。圖 2 中,當畫質設定為 75%,這兩張圖片幾乎沒有差異。圖 3 顯示同一張圖片畫質設定為 0% 的狀況。

    圖 3.從 JPG 格式轉換成 0% 畫質的 WebP 格式

    注意:如果將畫質設為 100%,且 minSdkVersion 設為 API 18 以上版本,Android Studio 就會自動將模式切換為無損編碼。

    選定每一張圖片的目標畫質。如要轉換多張圖片,請按一下「下一步」來進到下一張。

  6. 按一下「完成」。您的圖片將會在原始位置轉換。

將 WebP 圖片轉成 PNG 檔

如果想將專案中的 WebP 圖片用於其他地方 (例如需要在不支援 WebP 的網頁中還能正確顯示圖片),您可以使用 Android Studio 將圖片從 WebP 轉換成 PNG 格式。想將 WebP 圖片轉為 PNG 格式,請按下列步驟操作:

  1. 在 Android Studio 中的 WebP 圖片上按一下滑鼠右鍵,然後按一下左鍵選擇「轉換為 PNG」
  2. 畫面上會出現一對話框,詢問是否要將圖片轉換為 PNG 檔、刪除原始 WebP 檔案,或同時保留原始 WebP 檔案及新的 PNG 檔案。按一下「是」以刪除原始 WebP 檔案;或按一下「否」來同時保留 WebP 及 PNG 檔案。您的圖片將會立即轉換。