Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Принцип действия переноса и выключкиСодержание книги
Поиск на нашем сайте
Процесс переноса и выключки можно рассматривать как диалог внутри компьютера, который происходит, пока вы набираете текст. Диалог начинается, когда нужно принимать решение об оформлении конца строки (end-of-line decision). До этого момента, в случае простейшего сценария, программа просто считает ширины знаков и складывает их, а сумму вычитает из ширины полосы набора. И наступает момент, когда вы набираете слово, которое не умещается в оставшейся части строки. Пришло время решать. Когда текущая строка набирается с рваным краем (т.е. тексту разрешается не заполнять строку полностью), этот диалог у края строки может быть простым и коротким. Для текста, показанного на рис. 6.2, он звучит следующим образом: - Слово constitutes очень длинное и не умещается в строке полностью. Перенос возможен? - Нет. - Возможно ли изменение ширин знаков? - Нет. - Возможно ли сжатие межсловных и/или межбуквенных пробелов? - Да. - Насколько можно сжимать межсловные пробелы? - На 10%. - Насколько можно сжимать межбуквенные пробелы? - На 3%. - Оставаясь в этих пределах, может ли слово constitutes уместиться на строке? - Нет. - Сохраняя пробелы неизменными, закончить строку после слова which и перейти на новую строку.
РИС. 6.2. Функция переносов и выключки в действии. Здесь слово constitutes не умещается в отведенное место на строке. Какое принимается решение о разрыве строки, зависит от параметров переносов и выключки
В наборе с выключкой по формату (или по ширине) диалог становится более сложным. Для примера, изображенного на рис. 6.2, диалог может протекать примерно так: - Слово constitutes очень длинное и не умещается в строке. Перенос возможен? - Да. - Перенос выполнять по словарю или по алгоритму? - Разрешается перенос по словарю, перенос по алгоритму нет. - Можно разбивать слово constitutes? - Да: con-sti-tutes. - Сколько слогов плюс дефис поместить в оставшемся пространстве? - Один слог плюс дефис уместится без сжатия межсловных и/или межбуквенных пробелов. - Разрешается ли сжатие пробелов? - Да. - Насколько можно сжимать межсловные пробелы? - На 10%. - Насколько можно сжимать межбуквенные пробелы? - На 3%. - Сохраняя эти ограничения, сколько слогов плюс дефис может уместиться на строке? - Только один слог плюс дефис, даже после изменения межсловных и межбуквенных пробелов. - Оставить один слог с обычным пробелом и прибавить дефис. Сколько пустого пространства осталось в строке? - 2,115 пункта. - Каков порядок распределения оставшегося пространства? Сначала в межсловные пробелы? Сначала в межбуквенные пробелы? Распределять равномерно между теми и другими? - Сначала распределять между словами. - Насколько можно увеличить межсловные пробелы? - На 15%. - Можно ли оставшийся пробел распределить среди слов без превышения установленных пределов? - Да. - Разбить оставшееся пустое пространство на пять равных частей и распределить их между словами. Начать новую строку. И это всего лишь упрощенная последовательность решений, но она иллюстрирует некоторые ситуации, которые могут возникнуть во время работы программы, включая определение диапазона изменения пробелов между словами и буквами и перенос слов. Познаковые расчеты Процесс может показаться сложным, но этот короткий сценарий только иллюстрирует, как принимается решение об оформлении конца строки. До того, как вы введете первый знак, функция переносов и выключки уже вооружена массой информации, большей частью которой вы можете управлять. Например, значение трекинга (tracking) будет влиять на пробелы между всеми знаками строки. Для каждого вводимого знака функция переносов и выключки использует значение трекинга для перерасчета ширин знаков, которые программа извлечет из шрифтового файла. Это, в свою очередь, определяет общий объем пространства, которое знаки занимают в строке (рис. 6.3). Трекинг не влияет на форму символов, а только на объем пространства, которое они занимают.
РИС. 6.3. Если представить знаки в их кегельных площадках, становится понятно, как трекинг влияет на верстку. Положительный трекинг добавляет пробелы между кегельными площадками, которые при обычном наборе просто примыкают друг к другу. Дополнительные пробелы измеряются в долях кегельной (em). Отрицательный трекинг заставляет кегельные площадки накладываться друг на друга, и знаки располагаются ближе друг к другу
Кроме того, каждый раз, когда вы вводите знак, функция переноса и выключки старается обнаружить сочетание этого знака плюс предшествующего в таблице кернинга шрифтового файла. Если такая пара обнаруживается, то программа извлекает относительные значения (выраженные в долях кегельной), рассчитывает их абсолютные значения, исходя из величины кегля, и добавляет это значение кернинга к общей ширине знака. Когда строка заполняется текстом, который она в состоянии вместить, последующий текст выталкивается (wraps) на следующую строку. Этот процесс продолжается непрерывно и динамично, поэтому, когда вы редактируете страницу текста и добавляете или удаляете фрагмент текста, достаточный, чтобы сдвинуть строки, то программа может реагировать на это с запозданием. Ведь каждая строка абзаца (нескольких абзацев) должна снова переверстаться с учетом переносов и выключки.
|
||||
|
Последнее изменение этой страницы: 2021-12-15; просмотров: 81; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.119 (0.007 с.) |