編輯 Ultra HDR 圖片

Ultra HDR 圖片格式會編碼亮度資訊,讓裝置顯示色彩更明亮、色彩更強烈的圖片。應用程式編輯 Ultra HDR 圖片時,建議您保留亮度資訊。即便使用者的裝置不支援完整顯示 Ultra HDR 圖片,這項功能也相當重要。畢竟,使用者可能會使用支援 Ultra HDR 的裝置將圖片分享給別人,或是儲存該圖片,並在之後使用新裝置再次查看。

更棒的是,編輯點陣圖的大多數 Android 方法都支援 Ultra HDR 圖片格式。如果您是對圖片進行基本編輯 (例如裁剪或旋轉),標準 Android 方法會執行工作,最後就會產生帶有新尺寸或方向的超 HDR 圖片。

如果是修改圖片內容,工作會比較困難。在這種情況下,標準編輯方法會保留「舊」圖像的亮度資訊,這可能不是您想要的結果。在這些情況下,您可能需要編輯或移除取得地圖 (編碼圖像的亮度資訊),才能取得正確的結果。

Ultra HDR 格式總覽

如要進一步瞭解 Ultra HDR 圖片格式,請參閱「Ultra HDR 圖片規格」。最重要的是,Ultra HDR 圖片同時包含主要圖像和「輪廓地圖」

  • 主要圖片包含每個圖片像素的顏色資訊。
  • 「進階地圖」是標準的 JPEG 圖片,比例與主要圖片的比例相同,但像素尺寸不一定相同。增益圖的每個像素都會指定主要圖像中對應部分的亮度。

增益圖可以是灰階或色彩。如果增益圖為顏色,增益圖上的每個顏色管道都會指定主要圖片對應部分中的色色亮度。如果比例圖是灰階,則取得圖的每個像素都會指定主要圖片該部分三個色彩管道的亮度。

增益圖的比例必須與主要圖片的比例相同,但像素尺寸不一定要相同。事實上,當 Android 平台建立 Ultra HDR 圖片時,會建立寬度和高度小於主要圖片的增益圖。這會讓檔案大小大幅小,但仍能對足夠的資訊進行編碼,以獲得良好結果。這表示,增益圖中的每個像素都可以儲存主要圖片中數個像素的亮度資訊。

基本 Ultra HDR 編輯

如果您使用 Android Bitmap API 對 Ultra HDR 圖片進行基本轉換作業,這些方法會對取得圖進行適當變更。系統支援下列 Bitmap 作業:

  • 旋轉:如果旋轉 Ultra HDR 圖片,這個方法也會同時旋轉增益圖。
  • 裁剪:如果裁剪 Ultra HDR 圖片,這個方法會適當裁剪增益圖。
  • Scale:如果您縮放 Ultra HDR 圖片,這個方法會縮放比例圖,使其寬度和調整大小後的主要圖片保持一半寬度和一半。

在每個案例中,亮度資訊都會保留。

進階 Ultra HDR 編輯

如果您對 Ultra HDR 圖片進行更精細的編輯,增益圖會保持不變,因此可能無法產生您想要的結果。

發生這種情況的常見編輯項目包括:

  • 新增貼圖或表情符號:新增的貼圖,其亮度和色彩鮮明度值與貼上貼圖的區域相同。
  • 疊加第二張圖片:新圖片會使用其所重疊內容的亮度和色彩鮮明度資訊。
  • 新增篩選條件:舊版取得圖的資訊可能不適合用於修改後的主要映像檔。

系統會在各種情況下保留舊的亮度和色彩鮮明度資訊,但可能不適合用於修改後的圖片。

如果原始增益圖適合該編輯的圖片,則無須執行任何操作。如果您「有」要修改增益圖,一般工作流程如下:

  1. 呼叫 Bitmap.getGainmap() 並快取,擷取圖片目前的增益圖
  2. 視需要修改主要映像檔。
  3. 對快取增益圖進行相應的編輯。舉例來說,假設您在主要圖片上貼上表情符號,則可將取得圖的對應部分設為中立值,例如 Color.GRAY

  4. 呼叫 Bitmap.setGainmap()將修改後的增益對應加回圖片

其他資源

如要進一步瞭解 Ultra HDR 圖片,請參閱下列其他資源: