Как система понимает какие глифы шрифта нужно вывести на экран для представления двоичного числа?

Допустим, что в памяти хранится двоичное число 10111111100 (1532 в десятичной системе счисления). Но это число нужно вывести на экран, используя глифы (какого-либо шрифта), соответствующие цифрам 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. То есть каждый из этих глифов имеет определенный код символа, но как все-таки компьютерная система понимает, что нужно выбрать именно глифы 1, 5, 3 и 2? Это является загадкой для меня.
  • Вопрос задан
  • 252 просмотра
Пригласить эксперта
Ответы на вопрос 3
mayton2019
@mayton2019
Bigdata Engineer
Непонятно зачем автор обсуждает глифы и шрифты? Данная задача состоит из двух частей.
1) Преобразование двоичного числа (например int) в строковое представление двоичного числа.
2) Печать этой строки на экране используя (или не используя) явное указание шрифтов и прочее.

И мне кажется что автор не решил пункт (1) этой задачи. Этот пункт является обязательным на первых уроках информатики. Он называется "Системы счисления". Позиционные. Непозиционные. Перевод из одних систем в другие и прочее. Вот с этого надо начать обсуждение.
Ответ написан
Комментировать
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
В шрифте хранится таблица символов с указателями на стартовый сектор чтения конкретного символа.
Ответ написан
Комментировать
2ord
@2ord
Каждый глиф имеет определенный код (code point/position) - номер ASCII (упрощенно), по которому можно получить его графическое представление в шрифте. Когда какой-то программе нужно отобразить текст на экране (text rendering), представляющий из себя последовательность из кодов глифов, она обращается к шрифту и просит у него выдать по очереди графическое представление каждого из них (превращение векторных контуров в растр). Затем выполняется отрисовка на некоторой области экрана системными средствам (glyph rendering API).

Wikipedia:
ASCII, Unicode, Font rasterization, FreeType

Добавлено в комментариях.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы