Курсор Windows (.cur)

Microsoft Стандарт

Windows Cursor Resource (CUR) - это родной формат указателя мыши Microsoft Windows, идентичный по архитектуре контейнера ICO, но определяющий точные смещения координат активной точки (хотспота).

Анализ и метаданные

Операционные системы и анализаторы файлов идентифицируют файлы CUR по начальной двоичной последовательности байтов:

Выберите или перетащите файлы сюда

100% конфиденциальное преобразование в браузере - файлы никогда не покидают ваше устройство

или вставьте Ctrl+V
Гарантия конфиденциальности без передачи по сети: 0 байт загружено на внешние серверы. Вся обработка выполняется локально в песочнице вашего браузера.

Сигнатура заголовка на уровне байтов (Magic Bytes)

Операционные системы и анализаторы файлов идентифицируют файлы CUR по начальной двоичной последовательности байтов:

HEX-СИГНАТУРА (СМЕЩЕНИЕ 0):

00 00 02 00

ПРЕДСТАВЛЕНИЕ ASCII: ....

Стандартизация: Microsoft Windows Resource Specification

Технические спецификации

Архитектура контейнераЗаголовок ICONDIR с типом ресурса 2 (Курсор), за которым следует массив ICONDIRENTRY и данные DIB
СжатиеНесжатые потоки DIB или сжатые с помощью PNG (Windows Vista+)
Порядок байтов (Endianness)Обратный порядок байтов (Intel x86)
Цветовые пространстваDevice RGB
Каналы и структура1-битная монохромная маска, 4-битная, 8-битная или 32-битная BGRA с альфа-каналом
Макс. габаритыОбычно 32 x 32, 48 x 48 или 64 x 64 (поддерживается до 256 x 256 в современных ОС Windows)
ПрозрачностьДвоичная маска XOR/AND или 8-битный плавный альфа-канал
Потоковая передача и прогрессивная загрузкаНепотоковый каталог значков и курсоров рабочего стола

Техническая матрица сравнения: CUR против конкурентов

Технический атрибутCUR (Текущий)ICOPNGSVG
Определение активной точкиВстроенные координаты пикселей X/YОтсутствует (по умолчанию центр/верхний левый угол)Определяется в CSSОпределяется в области просмотра SVG
Идентификатор типа ресурса0x0002 (Курсор)0x0001 (Значок)Стандартное изображениеВекторный XML
Операционная системаРодная подсистема мыши WindowsОболочка Windows / Фавикон браузераУниверсальный веб и приложенияУниверсальный вектор
МасштабируемостьФиксированные мипмапы с разрешением для разных масштабовФиксированные мипмапы с разрешением для разных масштабовРастровый фиксированный размерБесконечное векторное масштабирование

Типичные режимы повреждения и руководство по восстановлению в HEX

Щелчок мыши регистрируется на расстоянии нескольких пикселей от кончика стрелки курсора.

Первопричина: Поврежденные или отсутствующие координаты X/Y активной точки в таблице ICONDIRENTRY.

Восстановление: Пересоздайте курсор в конвертере курсоров File2File для визуальной калибровки координат активной точки.

Анализ безопасности и векторы атак на парсер

Ошибки синтаксического анализа CUR в интерфейсе графических устройств Windows (GDI) исторически позволяли выполнять произвольный код с помощью специально созданных размеров заголовка.

Известные векторы атак

  • Переполнение целых чисел при выделении цветовых масок DIB в старых декодерах курсоров.
  • Поврежденные смещения активной точки, вызывающие чтение указателей за пределами допустимого диапазона при отрисовке курсора.
  • Повреждение динамической памяти (кучи) при синтаксическом анализе внедренных потоков PNG в современных файлах CUR.

Защитные лучшие практики: Убедитесь, что координаты активной точки строго находятся в пределах размеров кадра (0 <= X < Ширина, 0 <= Y < Высота).

Исторические истоки и вехи

2006Windows Vista представляет курсоры высокого разрешения 256x256 с полезной нагрузкой, сжатой алгоритмом PNG, внутри CUR.
2001Windows XP добавляет поддержку 32-битных плавных теней с альфа-каналами в файлы курсоров.
1990Windows 3.0 стандартизирует CUR в качестве родного формата аппаратных и программных курсоров.

Ключевые преимущества и плюсы

  • Определяет точные координаты пикселей активной точки (X, Y), где физически регистрируются щелчки мыши на экране.
  • Обеспечивает определение многоразрешенных курсоров для четкого отображения на стандартных мониторах и мониторах высокой плотности пикселей (4K).
  • Прямая встроенная поддержка операционной системой Windows без сторонних драйверов указателя.

Технические ограничения и минусы

  • Формат с ориентацией на Windows со слабой встроенной поддержкой отображения на мобильных устройствах и в браузерах без поддержки Windows.
  • Только статический указатель; анимированные курсоры требуют многокадровый контейнер .ANI.
  • Устаревшие 1-битные маски XOR вызывают резкие артефакты инверсии на современных цветных интерфейсах.

Интересные технические факты

  • Единственное структурное различие между файлом ICO и файлом CUR заключается в байте 3 заголовка: 1 для значка, 2 для курсора.
  • В файле ICO байты 4 и 6 каждой записи представляют цветовую плоскость и биты на пиксель; в файле CUR эти же байты представляют координаты X и Y активной точки.
  • CSS поддерживает пользовательские веб-курсоры напрямую с помощью URL-адресов, указывающих на файлы .cur.

Часто задаваемые технические вопросы

Что такое активная точка курсора?

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

Можно ли конвертировать изображение (PNG/JPG) в файл CUR?

Да. File2File.app позволяет конвертировать стандартные файлы PNG или JPG в файлы курсоров Windows .CUR с возможностью настройки положения активной точки.

Как использовать файл .cur на своем веб-сайте?

Вы можете применять пользовательские курсоры в CSS, используя: cursor: url('my-cursor.cur'), auto;