Google, duvar kağıdı tabanlı dinamik temayı daha fazla platforma getirmek amacıyla Material Color Utilities kitaplığını yayınladı.
Google, Material You'nun dinamik tema sistemi konusunda ciddidir. Şirketin istediği belli daha fazla Android OEM'i bir tema motoru sunacak (Monet veya benzeri bir şey) Açık Android 12 ancak bu, Google'ın duvar kağıdı tabanlı tema sistemi için planlarının kapsamı gibi görünmüyor. Şirket, yeni tema sistemini daha fazla platforma taşımak amacıyla artık Material Color Utilities kod kütüphanesini açık kaynaklı hale getirdi.
Yakın zamanda yayınlanan bir blog yazısında (üzerinden 9to5Google), Google'dan James O'Leary, Material Color Utilities'in renk için platformlar arası bir kod kitaplığı olduğunu ortaya koyuyor. geliştiricilerin Material You'nun dinamik tema sistemini çeşitli platformlara uygulamak için ihtiyaç duyacağı her şeyi içerir. Kitaplık şu anda Dart, Java ve Typescript'te mevcut ancak Google, onu SASS ve GLSL gölgelendiriciler aracılığıyla iOS, CSS'ye getirmeyi planlıyor. Açık kaynak olduğu için herkes kütüphaneye katkıda bulunabilir.
Ayrıca blog yazısı, dinamik tema sisteminin Android 12'de tam olarak nasıl çalıştığına da ışık tutuyor. Gönderide açıklandığı gibi, Android 12 cihazında duvar kağıtlarını her değiştirdiğinizde:
"Önce duvar kağıdı niceleniyor, içindeki binlerce renk, renk uzayında birleştirilerek daha küçük bir sayıya indiriliyor. Azaltılmış renk kümesi, istatistiksel algoritmaların verimli bir şekilde çalıştırılmasına yetecek kadar küçüktür. Bu algoritmalar renkleri puanlamak ve filtrelemek için kullanılır; Android 12, renklilik ve görüntünün ne kadarını temsil ettiği konusunda renk seçenekleri sunuyor ve monokroma yakın renkleri filtreliyor.
Algoritma tarafından varsayılan olarak en üst sıradaki renge ayarlanan veya kullanıcı tarafından duvar kağıdı seçicide seçilen bir renk, kaynak renk olur. Ton ve kroma, genel renk şemasını etkileyerek, kullanıcının renk seçimine bağlı olarak canlı bir mavi şemaya veya yumuşak bir yeşil şemaya olanak tanır.
Kaynak rengi kullanarak 5 tonlu paletlerden oluşan çekirdek paleti oluşturuyoruz. Ton paleti, renk tonu ve kroma ile tanımlanır; Paletteki renkler farklı tonlardan geliyor. Bu ton paletleri, bir tasarım sistemi oluştururken tasarımcıların bilişsel yükünü azaltır: her rol için renk ve renk belirlemek yerine bir ton paleti kullanılabilir.
Son olarak, her bir renk rolünün renk tonu ve tonunu tanımlayan tabloyu dolduruyoruz, ardından bu değerleri ve HCT'yi kullanarak temada kullanılan renkleri oluşturuyoruz."
Ayrıca blog gönderisinde Google'ın yeni bir HCT (hue, chroma, tone) rengini nasıl geliştirdiği vurgulanıyor Renklerle tasarım yapmak için mevcut HSL (hue, saturation, lightness) sisteminin yerini alacak sistem Daha kolay. Bu yeni renk sistemi hakkında daha fazla bilgiyi şuraya göz atarak edinebilirsiniz: orijinal blog yazısı.