Renderowanie czcionki zegara z tray'a

0

Witam

Próbuję wyrenderować za pomocą klasy Bitmap czcionkę domyślnego zegara z tray'a w Windows 7.
Niestety efekt marny. Na razie najbliżej pożądanego efektu jest czcionka Seugo UI w rozmiarze 8, jednak nie jest to ta sama czcionka.

Ktoś ma pomysł jak osiągnąć identyczną czcionkę?

0

Wrzuciłem explorer.exe w dezasembler i metoda CClockCtl::_DrawText wywołuje DrawThemeText bądź ExtTextOut.

Wywoływane jest również OpenThemeData z "Clock" w CClockCtl::v_WndProc oraz SystemParametersInfo w CClockCtl::_EnsureFontsInitialized i tworzy z pobranej wartości fonta.

0

Tak na chłopski rozum, w Windows XP domyślnym fontem jest Tahoma 8, a w Vista/7/8 jest Segoe UI 9.
Co nie musi oznaczać że zegar jest rysowany domyślnym fontem…

Z OpenThemeData/GetThemeFont byłbym ostrożny, bo choć jest tam dużo fajnych rzeczy i są one udokumentowane, to działania tej funkcji można być pewnym dopiero w Windows 8.
W starszych Windowsach może być aktywna klasyczna skórka z Windows 9x, a wtedy kupa niestety, OpenThemeData zwraca NULL.

0

Dzięki za sugestie :) Już widzę, że nie będzie to banalnie proste, bo jak widzę, nie tylko czcionka jest ważna ale też sposób jej renderowania (anty-aliasingi itp), a jeszcze dochodzi do tego jak tu się wstrzelić w kod zegara systemowego i go zmienić :)

Ogólna koncepcja jest taka: znudziło mi się życie w rytm 24 godzinny i stąd wpadłem na pomysł, że podmienię sobie zegar z tray'a na zegar słoneczny, co odlicza mi czas do wschodu i zachodu słońca. Obecnie żyję sobie 'bez czasu' od paru tygodni i przyznam, że bardzo mi się to spodobało. Jakby ktoś chciał to zgłębić to polecam: http://www.amazon.com/Practical-Astronomy-your-Calculator-Spreadsheet/dp/0521146542/ref=dp_ob_title_bk ;)

0

<url>http://stackoverflow.com/questions/12029043/what-is-the-best-way-to-get-tray-area-clock-visual-theme<url>

Tu masz coś, co można też potraktować jako podpowiedź jak podmienić zegar.

i stąd wpadłem na pomysł, że podmienię sobie zegar z tray'a na zegar słoneczny, co odlicza mi czas do wschodu i zachodu słońca

Proponuję podział dnia (od wschodu do zachodu) na 12 równych „godzin” o zmiennej długości w różnych porach roku.
Tak ludzie żyli zanim wymyślili ułomne zegarki.

1 użytkowników online, w tym zalogowanych: 0, gości: 1