Автор Тема: [DC] Поиск значений расстояния между буквами шрифта (можно закрывать)  (Прочитано 364 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Damin72

  • Пользователь
  • Сообщений: 50
    • Просмотр профиля
Закройте, пожалуйста.
« Последнее редактирование: 27 Декабрь 2022, 18:20:20 от Damin72 »

Оффлайн Марат

  • Пользователь
  • Сообщений: 556
  • Пол: Мужской
    • Просмотр профиля
Думаю вам надо искать таблицу ширин.
Надо измерить ширину нескольких букв идущих подряд в оригинальном шрифте.
К примеру. A,B,C,D,E,F,G,H,I,J,K могут составлять такую последовательность 8,8,8,8,8,8,8,8,4,6,8 Соответственно надо искать такую таблицу. Также надо иметь в виду, что размеру шрифта может быть ещё добавлено 1,2 пикселя для расстояния между буквами в строкее.

Оффлайн Damin72

  • Пользователь
  • Сообщений: 50
    • Просмотр профиля
Думаю вам надо искать таблицу ширин.
Надо измерить ширину нескольких букв идущих подряд в оригинальном шрифте.
К примеру. A,B,C,D,E,F,G,H,I,J,K могут составлять такую последовательность 8,8,8,8,8,8,8,8,4,6,8 Соответственно надо искать такую таблицу. Также надо иметь в виду, что размеру шрифта может быть ещё добавлено 1,2 пикселя для расстояния между буквами в строкее.
Этим я и занимался. Поиск не дал результатов. =/

Оффлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2349
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Использовал поиск через байт (или через 2, кто знает как там в игре это хранится...)?

Оффлайн Damin72

  • Пользователь
  • Сообщений: 50
    • Просмотр профиля
Использовал поиск через байт (2,3,4...)?
Искал и отдельно байты, и подряд, и с нулём между ними.
У M,N,O высчитывал границы (23/24/23 пикселя выводится, 1/2/1 нет). Или я дурак, или лыжи не едут.

Оффлайн Марат

  • Пользователь
  • Сообщений: 556
  • Пол: Мужской
    • Просмотр профиля
А зачем расстояния между буквами искать? Только ширины букв искать надо.

Оффлайн Damin72

  • Пользователь
  • Сообщений: 50
    • Просмотр профиля
А зачем расстояния между буквами искать? Только ширины букв искать надо.
Потому что очевидно, что в плане ширины буквы выводятся полностью.

Оффлайн Марат

  • Пользователь
  • Сообщений: 556
  • Пол: Мужской
    • Просмотр профиля
Вообще надпись похожа на спрайтовую. А у спрайтов координаты.

Оффлайн Damin72

  • Пользователь
  • Сообщений: 50
    • Просмотр профиля
Расстояния между символами могут храниться в исполняемом файле.
Там тоже искал.

Оффлайн ViToTiV

  • Пользователь
  • Сообщений: 170
    • Просмотр профиля
Damin72, ищи не только по ширинам, но и по координатам. ширин может и не быть вообще, только X/Y верхнего левого угла и правого нижнего.
Координата Х есть в 90% случаях, ищи по ней, как писали выше бери Х букв, которые идут в шрифте подряд, но они могут идти через определённое кол-во байт (8 и более, если используется 4 байта на координату)

Оффлайн Damin72

  • Пользователь
  • Сообщений: 50
    • Просмотр профиля
Damin72, ищи не только по ширинам, но и по координатам. ширин может и не быть вообще, только X/Y верхнего левого угла и правого нижнего.
Координата Х есть в 90% случаях, ищи по ней, как писали выше бери Х букв, которые идут в шрифте подряд, но они могут идти через определённое кол-во байт (8 и более, если используется 4 байта на координату)
Дебаг тут нормальный нужен.
Например, буква "g".
Я пробовал искать самые разные её координаты. И 00 01 0C 18 (Верхний левый угол - Х 0 Y 1, нижний правый угол - Х 12 Y 24).
И просто вбивать 01/18. И другие варианты. Должен быть ряд значений, который не превышает по hex 18, ибо сами буквы в шрифте делятся на ячейки 24*24.

Добавлено позже:
Тему можно закрывать. Там оказалось всё прозаичней.
« Последнее редактирование: 27 Декабрь 2022, 18:19:49 от Damin72 »