蘋果發表會上一句話帶過的更新,背後的設計與技術可不簡單
蘋果發表會上一句話帶過的更新,背後的設計與技術可不簡單
2018.10.19 | 蘋果

前不久推出正式版的macOS 10.14(Mojave),應該可以稱為四年前的Yosemite以來,macOS在使用者介面上變化最大的一次更新。千呼萬喚始出來的原生「黑暗模式」讓人耳目一新,也引發了協力廠商應用的適配熱潮。

相比之下,另一項使用者介面的新功能——動態桌布(dynamic desktop)受到的關注則少得多。這是一項默認關閉的功能,啟用方法是打開「系統偏好設置-桌布與螢幕保護程式」,從「動態桌布」中選擇系統自帶的兩套背景之一。

macOS 動態桌布1.png
新增的兩套動態背景
圖/ 少數派

很顯然地,如此低調的功能很難引起用戶的注意,大多數的評測文章都選擇將其一筆帶過。蘋果自己的態度似乎也是一樣:在六月的WWDC Keynote演示中,Craig Federighi留給動態桌布的台詞只有一句話

Your desktop actually subtly changes throughout the day from morning, to afternoon, to evening.
你的桌布「背景」將隨著一天從早上、到下午、再到晚上的推移而微妙地改變。

乍聽起來,這確實並不稀奇,也沒有任何技術門檻。隨時間變化以切換背景,是很多桌布美化軟體的基礎功能,更別提十多年前的Windows Vista就已經原生支援影片背景了。

但問題實際上並不只是 「按時間切換圖片」 這麼簡單。因為,晨昏變化的節奏並非一成不變,而是隨著四季變換各有不同。除非生活在赤道或者極地,從夏到冬一定是晝漸短、夜漸長的。如果全年都按照一個節拍切換背景,其效果在絕大多數日子裡都將跟真實景象不同步。

隨著季節推移變化的不只是晝夜長度,還有太陽高度。顯然,夏天的太陽比冬天的同一時間要「高」。太陽高度還與緯度有關。假如你生活在北京,而系統在中午時分給你換上了一張「陽光從頭頂直射」的背景,你其實應該有一種違和感才對,因為北京根本不會有90度的日照。地處北緯40度的北京,太陽最高也只能達到73.5度,並且一年只有一次,時間是在夏至那天的正午。

macOS 動態桌布2.png
北京在春分日和夏至日的太陽高度變化
圖/ 少數派

可見,要真正讓桌布和窗外的光照 同步 變化,機械地踩著時間點換圖片是遠遠不夠的。理想情況下,同一組圖片的切換節奏應當呼應太陽運動、在四季各不相同,並且根據使用者的地理位置和日期,有選擇地「跳過」一些不符合實際情況的照片。

動態桌布的實現機制

macOS Mojave的動態桌布充分考慮了上述問題。在蘋果的實現方案中,背景的切換不是以時間為標準,而是以 太陽方位 為標準。具體而言:

  1. 每套背景包含16張靜態圖片(實驗證明似乎可以更少,但不能更多)。

  2. 每張靜態圖片都被標記了對應的太陽方位。定位的方式是所謂的「地平坐標系」,即用高度角(Altitude,定義為太陽和地平線的夾角)和方位角(Azimuth,定義為太陽按順時針方向偏離正北的角度)兩個值確定太陽在天球中的位置。

  3. 啟用後,系統將會根據使用者的位置和時間,計算太陽的即時方位,並與每張背景所記載的資訊進行比對,將其中與此時此地太陽位置最近似的那一張,作為桌布背景。

macOS 動態桌布3.png
地平面坐標系圖示(來自timeanddate)
圖/ 少數派

實際例子可能更有助於理解動態桌布的機制。我目前的所在地處於北緯40度,與北京基本相同。10月5日的早上6:30尚未日出,此時的太陽高度為-6.75度,方位為90.6度。啟用「沙丘」動態背景後,桌布顯示為該系列中的第三張。根據背景的元資訊(後文將說明方法),這張照片是在太陽高度-4.25度,方位86.34度的場景下拍攝的,與現實環境非常接近。如果將系統日期撥回三個月前的7月5日,會發現背景變成了系列中的第五張(太陽高度為7度)。的確,夏天的這一時刻,太陽應該已經升起了。

再將日期調回10月5日。這一天,太陽在下午12:48時達到最高位置。但如果試著慢慢將時鐘調過這一時刻,會發現背景並沒有切換為系列中最明亮的第八張,而是直接從第七張跳到了第九張。原因在於,秋天的太陽即使在正午也只能達到45度左右,而第八張背景是在太陽處於53度時拍攝的,因此不會被顯示。相反,在Mojave剛剛開始公測的七月時,這張背景會從上午10:40左右開始持續顯示約五個小時。

macOS 動態桌布4.png
動態桌布在不同日期的差異
圖/ 少數派

更有趣的是,在另一套動態背景Solar Gradients中,一張圖片對應的太陽高度為88.4度。如上所述,由於北緯40度的太陽,全年最高也只能達到73.5度,我將始終不會看到這張最亮的背景被用作桌布——它實際上成了熱帶地區使用者的「會員特權」。

Craig Federighi的那句 「subtly(微妙)」 畢竟並不是隨口說說而已。

背景資源、技術細節與自製方法

遺憾的是,即使Mojave的動態桌布在設計上如此講究,蘋果卻並沒有給予這個功能太多關注。系統自帶的動態背景只有兩張,並且沒有提供讓使用者自行製作的選項。

但這並不意味著自己動手的大門就被關閉了。自從Mojave測試版發佈以來,動態桌布引起了不少開發者的興趣和關注。在他們的努力下,這一功能的實現細節已經十分清晰了,自己製作起來也並不麻煩。

下面列出的是一些現有的動態背景資源,可以直接下載並設置為桌布。有興趣的讀者,可以繼續閱讀下文的技術細節與自製方法。

macOS 動態桌布5.gif
圖/ 少數派
macOS 動態桌布6.png
圖/ 少數派
macOS 動態桌布7.gif
圖/ 少數派

與以往的普通背景相同,新的動態背景也都儲存在「/Library/Desktop Pictures」路徑下,檔案名分別是「Mojave.heic」和「Solar Gradients.heic」。

「.heic」是什麼格式?喜歡用iPhone拍照的用戶,基本上對它不陌生。自iOS 11以下,大多數iPhone都已經默認改用HEIF(High Efficiency Image File Format,高效率影像檔格式)儲存照片。這裡的「.heic」,就是HEIF格式的可選副檔名之一。與傳統的JPEG相比,這種新格式在縮減空間佔用和減少畫質損耗上,有著更好的表現。

不僅如此,HEIF還是一種「容器」(container)格式——它不僅能儲存單張靜態照片,而且能儲存 一組 連續照片、以至影片;這就為將動態背景打包在一個檔裡提供了可能。實際上,這兩個檔可以直接用系統內建的預覽app打開,並從側邊欄中看出兩套背景的構成——都包括16張構圖相同而光線各異的靜態圖片。

但這並沒有回答我們最關心的問題:背景的自動切換是靠什麼控制的?試著用16進制編輯器打開一張動態背景,從頭略微往下翻閱,就能在第一張圖片的EXIF資訊中看到玄機:一個自訂的「apple_desktop」命名空間和其項下的「solar」屬性。

macOS 動態桌布8.png
隱藏在 EXIF 資訊中的參數
圖/ 少數派

下面的「破解」過程需要一點淺顯的macOS經驗。「solar」屬性值末尾的等號是base64編碼的明顯特徵。用「base64 -D」命令解碼,發現輸出以「bplist」開頭,這是二進位屬性工作表檔的魔數。為此,再用「plutil」命令將其轉換為可讀的XML格式。

macOS 動態桌布9.png
將動態背景的配置資訊轉為可讀模式
圖/ 少數派

這樣,蘋果在Mojave的動態背景中設置的機關就展現出全貌了。可以看到,在 「si」根鍵下,每張靜態圖片被都標記了「i」、「a」、「z」三個鍵值,分別對應照片的序號、拍攝時的太陽高度角和方位角。

此外,沙丘背景還有一個「ap」根鍵,其下的「l」和「d」兩個值,分別指定了在設置中啟用亮暗兩種「靜態」選項時,要顯示的圖片序號。(太陽漸變背景沒有「ap」根鍵,因此在設置中沒有「靜態」選項。)

至此,原理上的鋪墊就全部完成了,最後要解決的就是如何據此自行製作動態背景。顯然,這涉及到格式轉換、資訊編碼等操作,全部手工完成會非常繁瑣。好在,已經有開發者製作出了命令列工具,可以使用Homebrew安裝:

$ brew tap mczachurski/wallpapper && brew install wallpapper

這裡簡單介紹一下該工具的使用方法。首先,將想要製作成動態背景的圖片檔按序號依次命名。然後在 同一目錄 下創建一個JSON檔(如「config.json」),在其中逐行指定照片的參數:

[
{"fileName":"1.png","isPrimary":false,"isForLight":false,"isForDark":false,"altitude":-0.34275283875350282,"azimuth":270.9334057827345},

{"fileName":"16.png","isPrimary":false,"isForLight":false,"isForDark":false,"altitude":-38.04743388682423,"azimuth":53.509085812513092}
]

其中,「fileName」為檔案名,「isPrimary」表示是否將圖片用作記錄整套背景元資訊的「首要圖片」,「isForLight」和「isForDark」分別指是否用作開啟亮/暗兩種「靜態」選項時使用的圖片,「altitude」和「azimuth」則是照片對應的高度角和方位角。

準備完畢後,在終端執行「wallpapper -i config.json」即可獲得打包好的HEIC格式動態背景。

如果你想要查詢照片拍攝時的太陽位置,或者瞭解所在地的太陽軌跡,可以使用SunCalc等線上工具,iOS上的Sky Guide等天文類 app 也可以提供幫助。想要省事的讀者,也可以使用我製作的範本設定檔,其內容原樣複製了系統自帶的沙丘背景中圖片的參數,只需找16張光線情況與該套背景類似的圖片,依次命名為「1.png」到「16.png」,並用上述工具製作即可。

macOS 動態桌布10.jpeg
用Sky Guide應用查詢太陽方位
圖/ 少數派

結語

動態桌布是一個很有蘋果風格的設計。就像OS X視窗最小化時的「果凍」特效、iOS 6中隨螢幕傾斜變換光澤的音量滑塊一樣,你可以完全不意識到它的存在,也可以追根究柢,然後驚異於其考慮之深。

當然,對於這類設計,歷來不乏「不務正業」的批評。特別是在macOS軟體品質整體不如以往的大前提下,將本就有限的開發資源,分散給這樣一些對性能和穩定沒有實質説明的功能,似乎顯得有些奢侈。

儘管如此,我仍然歡迎這樣的設計。畢竟,軟體設計並不只是關乎功能。設計中的人文色彩及其對用戶感受的間接影響,也是細微但重要的部分,說它是一種特殊的「功能」也不為過。每天傍晚,當我看到背景隨著窗外的日落準時切換成另一種色澤時,很難不產生一點「虛擬與現實無縫銜接」的愉悅。

幾個月前,英文蘋果社區中曾經有過一次小規模討論:一些核心用戶遺憾地表示,已經很久沒有看到像早期iMac那樣頗有些異想天開(whimsical)的設計了。糖果配色螢幕轉軸這些「無用」但有趣的設計,在近年來讓位於實用主義的、參數導向的考量。這結論或許對硬體產品線是成立的;但蘋果用動態桌布、Animoji,和Siri的玩笑告訴我們,它的whimsy畢竟還在軟體的很多角落裡閃現。

本文授權轉載自:少數派

關鍵字: #Apple #Mac
往下滑看下一篇文章
健細胞科技攜手中興大學,推出「Cancell Insight」醫療AI 輔助決策平台,消弭醫療數位鴻溝
健細胞科技攜手中興大學,推出「Cancell Insight」醫療AI 輔助決策平台,消弭醫療數位鴻溝

為打破醫療 AI 高昂的算力與人力門檻,健細胞科技與國立中興大學資管系蔡孟勳教授團隊產學合作,正式推出「Cancell Insight 醫療 AI 模型平台」(https://insight.cancell.ai)。該平台以 SaaS(軟體即服務)模式提供一站式託管,讓先進的醫療 AI 資源不再侷限於大型醫學中心,有效消弭基層與城鄉間的醫療數位鴻溝。

軟體硬實力:打通 AI 落地最後一哩路

過去,許多由學術或生技單位開發的優秀模型因缺乏部署工具,往往淪為「實驗室孤兒」;而中小型醫院也常因 IT 建置成本對 AI 望之卻步。

健細胞科技創辦人周子堯Victor憑藉其UIUX規劃、程式開發技術背景,親自領軍AI 模型研發團隊,建構 Cancell Insight 平台。他強調,智慧醫療落地必須具備「無感化部署」、「持續性反覆運算」與「大眾化使用」三大要素。Cancell Insight 包辦了從數據清潔、標註到模型訓練與部署的底層工程,醫療機構僅需提供去識別化數據,繁瑣技術難題全由平台解決,讓 AI 真正回歸醫療「輔助」本質。

專為高壓臨床環境設計,七大核心優勢重新定義臨床運作效率

健細胞科技
Cancell Insight提供涵蓋數據清洗、精準標註、模型訓練至部署託管的一站式解決方案
圖/ 健細胞科技

【行動化與 LINE 整合】 支援 LINE 一鍵登入,醫師可直接透過官方帳號上傳檔案呼叫模型並查閱紀錄,實現真正的醫療行動化。

【隨選模型與高相容性】 提供多元 AI 模型庫供彈性訂閱。每組模型具備獨立 API Key,可無縫串接醫院現有 HIS 系統或 APP。

【團隊協作共享】 首創以「團隊」為服務單位,跨科別成員可同步共享模型權限、數據分析與歷史紀錄,提升研究協調效率。

【自動化數據處理】 支援模板批次上傳,內建自動校準系統,若格式不符將自動轉檔、去識別化與重構,大幅解放 IT 人力。

【雙模態 AI 解析】 深度整合 Dr.Cell AI (Gemini) 多模態能力,不僅輸出預測結果,更提供進階臨床解說與治療準則問答,提升決策參考價值。

堅守醫療嚴謹性,推動醫療平權與永續商業價值

在追求科技創新的同時,Cancell Insight 嚴格把關醫療安全性。平台所有 AI 模型輸出結果均定位為「臨床決策輔助」與「研究檢測輔助」,透過「非直面病患」的機制,確保所有 AI 建議皆由專業醫療人員進行最終判讀。

透過 SaaS 專案訂閱模式,Cancell Insight 成功以合理經費取代了傳統的高額硬體採購,讓中小型醫院與偏鄉診所也能具備同等的診斷實力,落實真正的醫療平權。對研發端而言,平台不僅是加速醫療科技商用化、縮短變現週期的推進器,其高度結合日常工作流的特性,更有效減少了醫護的行政負荷,緩解當前醫療量能短缺的危機。

【進階部署】啟動臨床試驗,Docker 地端部署確保資安與時效

為進一步驗證臨床效益並符合醫療機構對資訊安全的高標準,Cancell Insight 即將與各大醫療機構攜手展開「臨床研究計畫」。針對有高度資安控管需求的醫院,平台提供彈性的 Docker 地端模型部署(On-premise Deployment) 方案。第一線的醫師與護理師可直接在院內本機端快速啟動 AI 模型,安全地注入病患臨床數據後,即可「零時差」取得預測結果。此舉不僅確保了敏感醫療數據「不出院」,完美符合嚴格的醫療法規與病患隱私要求,更能實際驗證 Cancell Insight 在真實高壓的臨床場域中,能即時、有效地提供精準的決策輔助。

健細胞科技
部署輕量化模型於地端,支援離線模式使用模型,完善保護企業敏感資料
圖/ 健細胞科技

展望未來,擴大智慧醫療生態圈

透過 SaaS 模式取代高額硬體採購,Cancell Insight 致力落實醫療平權。未來,健細胞科技將以此平台為樞紐,尋求跨界深度合作:

醫療機構: 提供各級別醫院隨選即用的 AI 助理及地端部署選項。
學術/生技: 協助實驗室模型落地,並優化新藥研發與臨床試驗的數據處理效率。
商業保險: 整合 AI 評估工具,提供更精準的健康管理與風險控管服務。

登入數位時代會員

開啟專屬自己的主題內容,

每日推播重點文章

閱讀會員專屬文章

請先登入數位時代會員

看更多獨享內容

請先登入數位時代會員

開啟收藏文章功能,

請先登入數位時代會員

開啟訂閱文章分類功能,

請先登入數位時代會員

我還不是會員, 註冊去!
追蹤我們
AI全球100+台灣20
© 2026 Business Next Media Corp. All Rights Reserved. 本網站內容未經允許,不得轉載。
106 台北市大安區光復南路102號9樓