Jump to content


Photo

Как сделать свой шрифт: педантичный гайд


  • Please log in to reply
13 replies to this topic

#1 Wolfling

Wolfling

    Странник

  • Пользователи
  • Active Posts38
  • Откуда: Селифаис

Posted 28.05.2013 - 14:51

Теория
 

    [*]Файл, из которого берутся буквы, имеет формат .png, и находится в архиве текстурпака в папке fonts. Называется он default. Увеличенный файл с залитым чёрным фоном вот:
    Скрытый текст

    [*]Файл шрифта разделён на 256 ячеек, каждая из которых содержит рисунок буквы.
    [*]Фон файла должен быть прозрачным. Для удобства работы можно создать задний слой и залить его чёрным. Перед сохранением файла слой надо отключать или удалять (метод фотошопа).
    [*]Размер файла шрифта должен быть равносторонним, максимальный размер - 2048 пикселей на сторону.
    [*]Есть два блока русских букв. Первый блок используется для меню, второй - для книг. Таблицу с номерами букв и их расположением можно скачать по ссылке http://yadi.sk/d/Ziw6i8hl5Lo58.
    [*]В той же папке, что и файл шрифта, находится файл default.properties, хранящий список номеров с дробными числами. Это - номер буквы в файле, а через "=" указывается ширина буквы по этому номеру, считая от левого края ячейки буквы, записывается как width.Х=Y, где X - номер символа, а Y ширина символа.
    [*]Ширина, указанная в файле, указывается числом от нуля до восьми (по ширине ячейки дефолтного шрифта, лежащего в minecraft.jar/fonts). Возможно так же писать дробные значения.
    [/list]Практика
     
    На примере файла со стороной 1024 пикселя.

      [*]Берём дефолтный файл шрифта и увеличиваем его до требуемого размера.
      Скрытый текст

      Обратите внимание, что в нижнем списке выбран пункт "по соседним пикселям". Это сделано для того, что бы после увеличения изображение не было размытым.
      [*](для удобства работы, не обязательно) Создаём слой, убираем его вниз и заливаем чёрным
      Скрытый текст

      [*]Расставляем направляющие. Вместо этого можно нарисовать на отдельном слое сетку, кому как удобней. Или ещё как извратится [creeper]
      Скрытый текст

      [*]Далее начинается рутина. Надо в каждой ячейке стереть старую букву и на её место поставить новую. Для пущего удобства можно так же поставить направляющие для ватерлиний букв (это нижняя граница буквы без учёта нижней завитушки, простите за просторечный говор).
      В моём случае были заменены все русские буквы. В результате получилось вот так (видимость направляющих отключена):
      Скрытый текст

      Далее, если вы работаете в фотошопе, то надо растрировать слои с текстом (это делается через пкм по слою в списке слоёв) слить все слои с буквами в один. Дальше убираем фон и сохраняем в png. Кидаем с заменой в архив в папку fonts.
      [*]Ещё один рутинный пункт. Так как получившиеся буквы не подстроены под дефолтные размеры (моноширный шрифт), то надо указать в файле с настройками новые размеры. Открываем файл default.properties и смотрим, есть ли номер буквы и какой размер там указан. Если такого номера нет - считаем номер буквы в файле и добавляем соответствующую строчку. Если лень считать, то в разделе теории есть ссылка на скачивание таблицы со всем необходимым (для русского шрифта). Для шрифта, который делается по ходу этого урока, файл широт вот http://yadi.sk/d/Msv6D3k_5Los0.
      Число, которое необходимо вписать после равно, для каждой буквы считается отдельно: берётся инструмент прямоугольного выделения и выделяется буква от левого края ячейки до крайнего правого пикселя буквы. Смотрим ширину получившегося выделения и делим его на 8.
      Тут нужно заметить, что делитель разный для каждого размера файла. Он высчитывается так: ширина ячейки делённая на восемь. То есть для файла шрифта со стороной 512 пикселей делитель будет равен четырём, к примеру.
      Скрытый текст

      На скрине ширина выделения 22 пикселя, делим её на наш делитель и получаем 2.75. По арифметическим правилам сокращаем число до десятых, получаем 2.7, что и записываем в файл под номерами 135 и 199 (буква "з" в наборах для меню и для книг).
      [*]После того, как все координаты подстроены, и шрифт вас устраивает, можно уже использовать свой шрифт в деле. Открываем текстурпак, с которым мы играем, проверяем, правильно ли называются изменённые файлы (файл шрифта должен называться "default.png", а файл широт - "default.properties", считая расширение) и кидаем их с заменой в архив текстурпака в папку fonts. Запускаем игру...
      Скрытый текст

      Как можете заметить, на скринах под спойлером можно разглядеть одинокие белые точки - это моя недоработка, надо было следить, что бы буквы ен выходили ни одним пикселем за пределы своей ячейки. Наличие блудных пикселей можно посмотреть, выделив волшебной палкой (инструмент выделения в фотошопе) пространство между буквами и присмотревшись к границам выделения (граница будет обтекать пиксели), желательно перед действом выставить в ноль чувствительность выделения.
      [*]Jast Fun!
      [/list]Старая версия гайда под катом:
      Скрытый текст

Обыденным стал подарок с небес,
И ты снова куда-то с дуру полез.
Ища приключений, от быта сбежав,
Тянешься к солнцу, мечтать перестав.


#2 Обалдуй

Обалдуй

    Зачарователь

  • Пользователи
  • Active Posts1898
  • Ник в Minecraft:
    resursator
  • Откуда: Нижний Новгород

Posted 29.05.2013 - 00:59

Спасибо за сей труд. Надо будет раскурить на досуге. А то better fonts не идеален.

76561198029398229.pngAddFriend.png
Список модов на моей сборке.


#3 Wolfling

Wolfling

    Странник

  • Пользователи
  • Active Posts38
  • Откуда: Селифаис

Posted 31.05.2013 - 07:01

Спасибо за сей труд. Надо будет раскурить на досуге. А то better fonts не идеален.

Спасибо =) Ничто не идеально, кроме переделанного под себя=)

Обыденным стал подарок с небес,
И ты снова куда-то с дуру полез.
Ища приключений, от быта сбежав,
Тянешься к солнцу, мечтать перестав.


#4 Setap

Setap

    Добытчик алмазов

  • Пользователи
  • Active Posts643
  • Откуда: Страна под названием Эквестрия, населённой разумными пони.

Posted 31.05.2013 - 08:05

Хороший гайд, уже нарисовал себе шрифт из скайрима, таблички с ним шикарны!

#5 Wolfling

Wolfling

    Странник

  • Пользователи
  • Active Posts38
  • Откуда: Селифаис

Posted 31.05.2013 - 09:06

Хороший гайд, уже нарисовал себе шрифт из скайрима, таблички с ним шикарны!

Молодец! =) Обновил головной пост, надеюсь, так стало лучше =)

Обыденным стал подарок с небес,
И ты снова куда-то с дуру полез.
Ища приключений, от быта сбежав,
Тянешься к солнцу, мечтать перестав.


#6 Minik

Minik

    Опечаленный гастами

  • Пользователи
  • Active Posts2908
  • Откуда: Rivendell

Posted 31.05.2013 - 09:09

Лучше, картинки только не открываются =/

#7 Wolfling

Wolfling

    Странник

  • Пользователи
  • Active Posts38
  • Откуда: Селифаис

Posted 31.05.2013 - 09:15

Лучше, картинки только не открываются =/

Так я и думал =/ Подскажите хостинг картинок с бессрочным хранением, потом перезалью.

Обыденным стал подарок с небес,
И ты снова куда-то с дуру полез.
Ища приключений, от быта сбежав,
Тянешься к солнцу, мечтать перестав.


#8 Minik

Minik

    Опечаленный гастами

  • Пользователи
  • Active Posts2908
  • Откуда: Rivendell

Posted 31.05.2013 - 09:37

imgur.com

#9 Wolfling

Wolfling

    Странник

  • Пользователи
  • Active Posts38
  • Откуда: Селифаис

Posted 31.05.2013 - 09:48

imgur.com

Спасибо, в течении двух суток перезалью =)

Обыденным стал подарок с небес,
И ты снова куда-то с дуру полез.
Ища приключений, от быта сбежав,
Тянешься к солнцу, мечтать перестав.


#10 Wolfling

Wolfling

    Странник

  • Пользователи
  • Active Posts38
  • Откуда: Селифаис

Posted 31.05.2013 - 10:54

Скрины и картинки перезалиты. Пишите, если они не будут видны. P.S. Рад, что уже кому-то гайд пригодился =) Значит не зря просиживал пятую точку хДP.P.S. Исправил грамматические ошибки и недочёты. Если заметите ещё - пишите, исправлю.

Обыденным стал подарок с небес,
И ты снова куда-то с дуру полез.
Ища приключений, от быта сбежав,
Тянешься к солнцу, мечтать перестав.


#11 Обалдуй

Обалдуй

    Зачарователь

  • Пользователи
  • Active Posts1898
  • Ник в Minecraft:
    resursator
  • Откуда: Нижний Новгород

Posted 04.06.2013 - 00:43

Хороший гайд, уже нарисовал себе шрифт из скайрима, таблички с ним шикарны!

Не поделишься?) Не нашел default.properties. Где его брать/как создать?

76561198029398229.pngAddFriend.png
Список модов на моей сборке.


#12 Wolfling

Wolfling

    Странник

  • Пользователи
  • Active Posts38
  • Откуда: Селифаис

Posted 04.06.2013 - 01:25

Хороший гайд, уже нарисовал себе шрифт из скайрима, таблички с ним шикарны!

Не поделишься?) Не нашел default.properties. Где его брать/как создать?

Во-первых, можешь скачать по ссылке в гайде. Во-вторых, можно скачать HD-текстурпак, открыть его и найдя в нём папку fonts открыть её, файл может быть там, если текстурпак кроме собсно текстур добавляет HD-шрифт. Если её нет, то можно создать где-нить папку с таки именем, кинуть в неё сделанные по гайду файлы со шрифтом и широтами, и кинуть в архив текстурника. В-третьих можно включить в свойствах папки (в панели управления винды) видимость расширений файлов, и создать файл с таким именем. Открывать и редактировать простым блокнотом, хотя подойдёт любой текстовый редактор наподобие блокнота, типа Notepad C++. А сам файл состоит из однотипных строчек вида width.Х=Y (только что исправил на правильный, а то перепутал местами номер и параметр), где X - номер символа, а Y ширина символа. P.S. Кстати, полезная деталь... Обновил оп-пост.

Обыденным стал подарок с небес,
И ты снова куда-то с дуру полез.
Ища приключений, от быта сбежав,
Тянешься к солнцу, мечтать перестав.


#13 Wolfling

Wolfling

    Странник

  • Пользователи
  • Active Posts38
  • Откуда: Селифаис

Posted 13.08.2013 - 14:25

Если есть вопросы или вы нашли ошибку - пишите, тема периодически проверяется, постараюсь помочь по мере своих сил.

Обыденным стал подарок с небес,
И ты снова куда-то с дуру полез.
Ища приключений, от быта сбежав,
Тянешься к солнцу, мечтать перестав.


#14 Dead_King

Dead_King

    Странник

  • Пользователи
  • Active Posts2

Posted 21.08.2013 - 17:20

Оу, великолепно же! Большущее спасибо!


1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users