Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 08.11.2019, 21:03   #1
doriran
Новичок
Джуниор
 
Регистрация: 08.11.2019
Сообщений: 3
Восклицание Кто - код текстового редактора или функция операционной системы - интерпретирует управляющие символы 0x00-0x1f (например, LineFeed 0x0a)?

Здравствуйте,
кто разбирается в устройстве текстовых редакторов, подскажите, пжста.

1) Кто - код текстового редактора или функция операционной системы - интерпретирует управляющие символы 0x00-0x1f (например, LineFeed 0x0a)? Если эти символы имеют глифы в .ttf-файлах, и мы хотим видеть эти глифы в текстовом редакторе, изменения должны быть внесены в текстовый редактор или системную функцию?

2) Тот же вопрос по управляющим символам 0x80-0x9f.

3) Обратный вопрос: кто интерпретирует код 0x20 (Space) как знак переноса текста на новую строку? Чтобы изменить код Space'а на другой (например, на 0x49), где должны быть внесены изменения?

4) Чтобы проинтерпретировать старый печатный символ (например, 0x48) как управляющий (например, как LineFeed), где должны быть внесены изменения?

5) Для символов 0x00-0x7f, какие есть способы использовать 7-битную кодировку с классическим .ttf-файлом без конвертирования текста в 8-битную кодировку?

P.S.
Причины вопросов:
https://www.youtube.com/watch?v=uu8W0uobvQs

(печатные символы 0x00-0x46, управляющие 0x47 till 0x7f)
https://sun9-70.userapi.com/c855016/...2yzXkm-EvQ.jpg
doriran вне форума Ответить с цитированием
Старый 08.11.2019, 21:59   #2
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,162
По умолчанию

1) Управляющие коды были нужны для оконечных устройств именуемых терминалами. Сюда же можно отнести и старые принтеры. Эдок 60-70 годов прошлого века.

В современных реалиях управляющими символами почти не пользуются. Но ничто не забыто никто не забыт.
Есть эмулятор терминала особенно в том же линуксе где его консоль интерпертирует управляющие коды.

Что касается текстового редактора он распознает разбиение на строки и всё. #$0D#$0A и горизонтальный таб #$09. Есть продвинутые текстовые редакторы которые умеют ещё распознавать по мимо этих управляющих кодов ещё парочку других.


Цитата:
Сообщение от doriran Посмотреть сообщение
Тот же вопрос по управляющим символам 0x80-0x9f.
Насколько помню таких управляющих кодов не существует.

Цитата:
Сообщение от doriran Посмотреть сообщение
3) Обратный вопрос: кто интерпретирует код 0x20 (Space) как знак переноса текста на новую строку? Чтобы изменить код Space'а на другой (например, на 0x49), где должны быть внесены изменения?
Это зависит от редактора, но как правило этим занимается ОС.

Цитата:
Сообщение от doriran Посмотреть сообщение
4) Чтобы проинтерпретировать старый печатный символ (например, 0x48) как управляющий (например, как LineFeed), где должны быть внесены изменения?
В вашей программе.


Цитата:
Сообщение от doriran Посмотреть сообщение
5) Для символов 0x00-0x7f, какие есть способы использовать 7-битную кодировку с классическим .ttf-файлом без конвертирования текста в 8-битную кодировку?
А какой смыл? У вас что есть компьютер у которого 7 бит в байте? Такие ещё в 70-тых годах списали.
Распечатать tff на листочке бумаги в клеточку и прошить микросхему для шрифтов, к вашему 7 битному компьютеру.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 09.11.2019, 17:41   #3
doriran
Новичок
Джуниор
 
Регистрация: 08.11.2019
Сообщений: 3
По умолчанию

6) Растеризатор .ttf-данных (в т.ч. подпрограмма субпиксельной графики) - это часть ОС, верно?

Редактор вызывает растеризатор для каждого символа по-отдельности?
И делает это в графическом (а не текстовом) режиме?
doriran вне форума Ответить с цитированием
Старый 09.11.2019, 17:42   #4
doriran
Новичок
Джуниор
 
Регистрация: 08.11.2019
Сообщений: 3
По умолчанию

пояснение к вопросу 5): Используем только первые 128 символов некоторой кодировки (8859, юникод, и т.д.)
7битная - 7 бит на символ: в 7байтной (56битной) строке находится 8 символов.
doriran вне форума Ответить с цитированием
Старый 09.11.2019, 18:52   #5
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,103
По умолчанию

Цитата:
Сообщение от doriran Посмотреть сообщение
6) Растеризатор .ttf-данных (в т.ч. подпрограмма субпиксельной графики) - это часть ОС, верно?
Нет. https://www.freetype.org/ прекрасно работает.

Цитата:
Сообщение от doriran Посмотреть сообщение
Редактор вызывает растеризатор для каждого символа по-отдельности?
Как захочет.

Цитата:
Сообщение от doriran Посмотреть сообщение
И делает это в графическом (а не текстовом) режиме?
В любом.
p51x вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создания своей кнопки (например ТАБЛИЦА) в главном меню текстового редактора VOVA-74 C++ Builder 7 22.02.2013 11:30
Управляющие программные системы для сайтов и технологии их работы vovey Помощь студентам 0 10.05.2011 05:04
Линейка текстового редактора ProgDel Общие вопросы Delphi 4 25.10.2010 15:29
Что случилось с сайтом? Где смайлы и управляющие символы grenles Свободное общение 8 06.09.2010 19:23
код для текстового редактора Михаил Юрьевич Общие вопросы Delphi 9 08.03.2008 20:11


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840