더 세밀한 색상 설정을 허용할 수 있을까요? 입력된 색상 코드를 바탕으로 미묘한 색조를 계산하는 과정이 많고, 모든 계산 결과가 모든 시나리오에서 잘 작동하지는 않습니다. 보통은 커스텀 CSS로 처리할 텐데, Horizon 테마를 설정했는데 CSS를 편집할 방법이 없습니다. 그래서 결국 이 문제는 색상 팔레트 설정에 속한다고 깨달았습니다.
사상 가장 좋은 방법은 여기에 커스텀 CSS 옵션을 추가하는 것(물론 색상만 다룰 수 있도록)이고, Horizon에서 색상 팔레트 CSS도 편집할 수 있게 하는 것입니다.
하지만 여기서 제가 말하고 싶었던 것은 좀 더 일반적인 문제였습니다(호라이즌에만 국한된 것이 아닙니다). 색상 팔레트 기능이 사용자가 원하는 대로 색상 스킴을 전환할 수 있도록 설계된 것이라면, 사용자 정의 CSS는 큰 도움이 되지 않을 것입니다. 아키텍처 관점에서 볼 때, 각 색상 팔레트에 사용자 정의 CSS를 할당해야 하기 때문입니다.
현재 제 문제는 **삼차색(tertiary)**과 관련이 있습니다. 예를 들어 제가 선택한 색상이 #f7b618이라고 가정해 보겠습니다. 이는 밝은 노란색이며, 이를 어딘가에 적용해 보고 싶습니다. 버튼 색상으로 사용하면 보기 좋지만 버튼 텍스트는 흰색입니다. 그런데 버튼 텍스트를 설정하면 다른 색상들이 변경됩니다. 아마도 문제는 버튼 텍스트가 밝게 보이도록 어두운 색상을 선택한다고 가정하고 있기 때문일 것입니다.
또한 모든 종류의 음영(shades)은 삼차색을 기준으로 계산됩니다. 예를 들어 사이드바 배경색(여전히 Horizon 테마에 대해 이야기하고 있습니다)도 그렇습니다. 하지만 저는 이를 위해 다른 색상(예를 들어 단순히 회색)을 선택하고 싶을 수 있습니다.
따라서 제가 색상에 대해 조금 까다롭고, 동시에 사용자가 색상 팔레트를 선택할 수 있도록 하고 싶다면(이것은 다소 모순될 수 있다고 동의합니다), 색상 팔레트를 기반으로 한 사용자 정의 CSS를 사용할 수 있습니다.
또 다른 옵션은 고급 모드를 제공하는 것입니다. 이 모드에서는 12개의 주요 변수뿐만 아니라 어떤 색상 변수든 할당할 수 있도록 허용할 수 있습니다. 그러면 계산이 중단되고, 저는 UI를 계속 사용하면서 모든 색상을 수동으로 조정할 수 있게 됩니다.
네, 하지만 가능하면 먼저 Reference for full color customization 를 사용해보는 것을 권합니다. 계산된 모든 변수에 접근할 수 있고, 원하는 값을 하드코딩하는 것만으로 충분할 수 있습니다. CSS가 전혀 필요 없을 수도 있습니다. 하지만 CSS가 필요하다면, Targetable Color Schemes가 분명히 좋은 방법입니다.