Получить шрифт заголовка окна

7 views
Skip to first unread message

Валерий Будько

unread,
Aug 26, 2022, 2:16:28 AM8/26/22
to cla...@googlegroups.com

Привет коллеги!

Может у кого есть наработки по сабжу?

Или хотя бы куда копать?

 

С уважением

   Валерий Будько

  mailto:w_b...@tut.by

 


 width=Никаких вирусов.www.avast.com

Igor Smirnov

unread,
Aug 26, 2022, 4:24:52 AM8/26/22
to Валерий Будько

Здравствуйте, Валерий.


В реестре: 

Раздел: HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics

Параметр: IconFont

Формат значения: REG_BINARY

Название шрифта начинается после перыых 28 байт

4-хбайтовый "заголовок" - параметры шрифта

Самый первый (нулевой) байт - это размер шрифта (F4 - размер 9, F3 - 10, F1 - 11, F0 - 12 и т.д.)

Остальные три байта заголовка определяют (предположительно) жирность, курсивность и что-то еще - надо проверять экспериментально.

 


-- 
С уважением,
 Igor                          mailto:imsm...@gmail.com

 

 

 

Вы писали 26 августа 2022 г., 9:16:22:


--
Вы получили это сообщение, поскольку подписаны на группу "ClaList".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес clalist+u...@googlegroups.com.
Чтобы посмотреть обсуждение на веб-странице, перейдите по ссылке https://groups.google.com/d/msgid/clalist/000201d8b913%245e77b410%241b671c30%24%40gmail.com.



wbu...@gmail.com

unread,
Aug 27, 2022, 2:44:49 AM8/27/22
to Валерий Будько
Там ещё есть CaptionFont,почему именно IconFont?

--
Отправлено из мобильной Яндекс Почты

26.08.2022, 11:24, "Igor Smirnov" <imsm...@gmail.com>:
Чтобы посмотреть обсуждение на веб-странице, перейдите по ссылке https://groups.google.com/d/msgid/clalist/204927365.20220826112401%40gmail.com.

wbu...@gmail.com

unread,
Aug 27, 2022, 4:14:17 AM8/27/22
to Валерий Будько
Там хранится структура

typedef struct tagLOGFONT { 
  LONG lfHeight; 
  LONG lfWidth; 
  LONG lfEscapement; 
  LONG lfOrientation; 
  LONG lfWeight; 
  BYTE lfItalic; 
  BYTE lfUnderline; 
  BYTE lfStrikeOut; 
  BYTE lfCharSet; 
  BYTE lfOutPrecision; 
  BYTE lfClipPrecision; 
  BYTE lfQuality; 
  BYTE lfPitchAndFamily; 
  TCHAR lfFaceName[LF_FACESIZE]; 
} LOGFONT, *PLOGFONT; 

--
Отправлено из мобильной Яндекс Почты

27.08.2022, 09:44, "wbu...@gmail.com" <wbu...@gmail.com>:
Чтобы посмотреть обсуждение на веб-странице, перейдите по ссылке https://groups.google.com/d/msgid/clalist/4215001661582518%40vla5-344e18ef0bef.qloud-c.yandex.net.

Валерий Будько

unread,
Aug 27, 2022, 8:04:05 AM8/27/22
to cla...@googlegroups.com

Получилось!

.

.

.

!LF_FACESIZE         EQUATE(32)

!LOGFONT            GROUP,TYPE

!lfHeight                LONG

!lfWidth                 LONG

!lfEscapement            LONG

!lfOrientation           LONG

!lfWeight                LONG

!lfItalic                BYTE

!lfUnderline             BYTE

!lfStrikeOut             BYTE

!lfCharSet               BYTE

!lfOutPrecision          BYTE

!lfClipPrecision         BYTE

!lfQuality               BYTE

!lfPitchAndFamily        BYTE

!lfFaceName              STRING(LF_FACESIZE)

!                    END

LF  GROUP(LOGFONT).

  CODE

  LF=GETREG(REG_CURRENT_USER,'Control Panel\Desktop\WindowMetrics','CaptionFont',REG_BINARY)

 

Только имя шрифта в Unicode, но это не проблема!

 

Спасибо!

С уважением

   Валерий Будько

  mailto:w_b...@tut.by

 

Чтобы посмотреть обсуждение на веб-странице, перейдите по ссылке https://groups.google.com/d/msgid/clalist/6544231661588047%40vla3-de9b73712c73.qloud-c.yandex.net.

Валерий Будько

unread,
Aug 27, 2022, 8:29:12 AM8/27/22
to cla...@googlegroups.com


Размер в пикселях-это значение размера в первом байте

6px

7px

8px

9px

10px

11px

12px

13px

14px

15px

16px

17px

18px

19px

20px

21px

22px

23px

24px

f8

f7

f5

f4

f3

f1

f0

ef

ed

ec

eb

e9

e8

e7

e5

e4

e3

e1

e0

 

 

С уважением

   Валерий Будько

  mailto:w_b...@tut.by

 

Чтобы посмотреть обсуждение на веб-странице, перейдите по ссылке https://groups.google.com/d/msgid/clalist/000201d8ba0d%24180595b0%244810c110%24%40gmail.com.

Reply all
Reply to author
Forward
0 new messages