Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 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,409
По умолчанию

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,707
По умолчанию

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

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

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


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


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