Свежие записи

Трюки с формой 2.2.2: Тёмная тема Windows в Delphi XE7

Тёмная тема Windows доступна и в XE 7. Но, так как эта версия Delphi создавалась во времена Windows 7, то ни о каком High-DPI, ни о каких тёмных темах, тогда ещё речи не было. Между тем, всё возможно.

Трюки с формой 2.2.1: Тёмная тема Windows в Delphi 12

С возникновением тёмной темы Windows, появились вопросы, почему Delphi её не поддерживает. Вне зависимости от текущей темы, окошки серые, заголовки белые. Давайте попробуем разобраться, что такое тёмное тема в понимании Windows, и как её реализовать в Delphi малыми усилиями.

Трюки с формой 2.1: Edit в заголовке окна

Не являюсь поклонником запихнуть что-нибудь в заголовок, но аргумент «жаль столько места пропадает» принимаю и поддерживаю. Поэтому продолжим размещать элементы редактирования в заголовке. Сейчас будем размещать Edit и ему подобных. Легально, без фокусов.

Контур образа: Алгоритм поиска

Проблема найти контур образа рано или поздно возникает почти у каждого. Когда возникла у меня, этот алгоритм, за неимением лучшего, пришлось придумать. Думаю, есть масса аналогов. Проблема алгоритма поиска контура образа в том, что никто не спешит им делиться.

Алгоритм Рамера–Дугласа–Пойкера

Отличная штука при векторизации растра. Мы нашли контур ромба, но он содержит тысячу точек. Хотя там должно быть всего четыре точки. Четыре, Карл! Вот для того, чтобы точек стало четыре, и может пригодиться алгоритм Рамера–Дугласа–Пойкера.

TBitmap.PixelFormat

PixelFormat

Формат пикселя (TBitmap.PixelFormat) влияет на способ хранения информации о цвете. Подразумевалась небольшая справочная статья, но материала оказалось неожиданно много, что незаметная статья из глубин сайта выросла до целой записи на главную страницу.

Kd-Tree. Быстрый поиск в K-мерном пространстве

Rd-Tree

Если есть гигантский массив данных, то неизбежно встаёт вопрос о быстром поиске данных в нём. Очевидно, что надо строить дерево поиска. Существует множество разновидностей подобных деревьев. Для K-мерных величин, например, 2D или 3D координат, неплохим решением является Kd-Tree.

Контур текста в GDI с антиалиасом

GDI Text Contour

Контур текста довольно полезная штука. Не только в праздничном оформлении, но и во вполне деловой практике. Оконтуренный текст достаточно просто получить в GDI+ и, прямо скажем, совсем не просто в D2D. Однако, как быть в старом добром GDI?

Пользовательский стиль пера. Часть II: Бегущие муравьи

Это продолжение разговора, начатого в первой части, про эффект рамки «бегущие муравьи». Было также сказано, что лучше этого не делать в GDI. Поэтому сейчас сделаем бегущих муравьёв в GDI и GDI+, и сравним.

Пользовательский стиль пера. Часть I: GDI

В прошлой статье я наотрез отказался рассматривать два последних параметра в функции ExtCreatePen, отвечающих за пользовательский стиль пера. Хотя упоминал про ГОСТы и прочую формальность. Давайте теперь рассмотрим их.