Files
kompas3d-mcp/docs/Kompas3D_SDK/guides/hot.md
T
mikhail e1337e4016 feat(sdk-docs): MD-база знаний SDK — в репозиторий; генератор и зеркало убраны
docs/Kompas3D_SDK/ становится каноническим источником справки КОМПАС SDK
и включается в репозиторий (2491 файл, ~14 МБ). HTML-зеркало
docs/KOMPAS_SDK_ru-RU/ (~1.4 ГБ, © АСКОН) и генератор
tools/build_kompas3d_sdk.py больше не нужны — регенерация не предполагается.

- .gitignore: MD-база разблокирована; зеркало остаётся проигнорированным
  (safety-net на случай повторной локальной выгрузки).
- CLAUDE.md / SKILL.md: убраны упоминания регенерации и зеркала.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-26 20:00:05 +03:00

54 lines
1.7 KiB
Markdown

---
title: "Пример инсталляции шрифта хот-точек в Компас"
type: guide
api: [api7]
tags: [guide, api7, hot]
sources:
- hot_points_example.html
---
class FontInstaller
{
HANDLE m_hFont = {};
public:
FontInstaller( HINSTANCE module, LPWSTR lpName );
~FontInstaller();
};
//------------------------------------------------------------------------------
///
// ---
FontInstaller::FontInstaller( HINSTANCE module, LPWSTR lpName )
{
PRECONDITION( module );
HRSRC hrc = ::FindResource( module, lpName, RT_RCDATA );
PRECONDITION( hrc );
DWORD dwrclen = ::SizeofResource( module, hrc );
PRECONDITION( dwrclen );
HGLOBAL hrcglobal = ::LoadResource( module, hrc );
PRECONDITION( hrcglobal );
void * pvrc = ::LockResource( hrcglobal );
PRECONDITION( pvrc );
DWORD fontsCount = 0;
m_hFont = ::AddFontMemResourceEx( pvrc, dwrclen, 0, &fontsCount );
PRECONDITION( m_hFont && fontsCount == 1 );
}
//------------------------------------------------------------------------------
///
// ---
FontInstaller::~FontInstaller()
{
::RemoveFontMemResourceEx( m_hFont );
}
////////////////////////////////////////////////////////////////////////////////
//
// Класс устанавливает хот-точечный шрифт.
//
////////////////////////////////////////////////////////////////////////////////
class HotPointsFontInstaller : public FontInstaller
{
public:
HotPointsFontInstaller()
: FontInstaller( module, MAKEINTRESOURCE( HOT_POINTS_FONT ) ){};
};
Библиотека по первому требованию должна зарегистрировать шрифт и разрегистрировать его при отключении библиотеки.