使用 CGWindowListCreateImage 捕獲螢屏外視窗的影像似乎給出了錯誤的背景顏色,當將其放置在螢屏上時,它比實際視窗略白。
我正在嘗試將它用于 CAAnimation,但不正確的顏色會導致影片結束時出現閃光,從而破壞效果。
當我走另一條路時,這不會發生,捕獲已經可見的螢屏視窗以將其設定為影片。然后 CGWindowListCreateImage 創建一個具有正確灰色背景顏色的視窗影像。
起初我認為這是因為“螢屏外”被認為具有與“螢屏上”不同的色彩空間。但是我將影像轉換為螢屏色彩空間的嘗試都沒有任何效果,并且查看這些值,似乎文本和其他所有內容在兩個影像之間具有相同的顏色,只有背景顏色不同。它似乎也與視窗是否具有焦點無關。
有誰知道為什么會發生這種情況以及可以采取什么措施?
編輯:我為此問題創建了一個
uj5u.com熱心網友回復:
在 Interface Builder 中將視窗外觀設定為紋理修復了這個問題。當然,這也會改變視窗的顏色,但在這種特殊情況下這是可以接受的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/369231.html
上一篇:捆綁關聯的Firebase源后,是否應該從html<script>標記中洗掉“type="module"”宣告?
