Шрифт в 1С: где и чем его менять в строке, ячейке и форме

· 9 мин

Содержание

Шрифт в 1С меняют в четырёх местах, и у каждого свой инструмент. Размер всего интерфейса задаёт масштаб в параметрах программы. Шрифт в ячейках печатной формы или отчёта правят через Формат ячеек. Шрифт конкретного поля или строки списка настраивают условным оформлением или свойствами элемента формы. Из кода шрифт меняют через объект Шрифт.

Какой способ нужен, зависит от задачи. Если мелко всё сразу, лезть в конфигуратор не надо. Если нужно выделить жирным просроченные счета в списке, хватит условного оформления. Если печатная форма «поехала», разбирайтесь с самим табличным документом.

Ниже способы идут от самого простого, доступного любому пользователю, к тем, что требуют прав разработчика. Речь про платформу 8.3 с интерфейсом «Такси».

Размер шрифта всего интерфейса: масштаб в параметрах

Отдельной настройки «шрифт интерфейса» у пользователя нет. Вместо неё работает масштаб: он увеличивает и текст, и поля, и отступы пропорционально.

  1. Откройте главное меню (кнопка со стрелкой в левом верхнем углу окна).
  2. Выберите Настройки → Параметры.
  3. Найдите на форме параметров поле масштаба интерфейса и выберите значение побольше.
  4. Закройте окно и перезапустите клиент, если программа об этом попросит.

Масштаб хранится в настройках пользователя. Сменили компьютер или пересоздали пользователя в базе — настройку придётся задать заново.

Если после увеличения масштаба форма перестала помещаться на экран, вернитесь к меньшему значению и увеличьте только шрифт в нужной таблице способами из следующих разделов.

Отдельно стоит упомянуть масштабирование самой Windows. Клиент 1С его учитывает, но на мониторах с высоким разрешением текст иногда получается размытым. Тогда в свойствах ярлыка 1cv8.exe на вкладке совместимости попробуйте изменить поведение масштабирования высокого DPI. Это настройка операционной системы, а не 1С, и действует она на весь клиент целиком.

Что масштаб не меняет

  • шрифт в печатных формах: при печати размер определяется самим макетом;
  • шрифты, заданные в самой форме жёстко: у них свой размер, который масштаб лишь пропорционально увеличивает;
  • текст в окне конфигуратора: там свои параметры, о них ниже.

Изменение шрифта в табличном документе и отчёте

Табличный документ — это основа печатных форм и отчётов. Шрифт в нём меняют так же, как в обычной электронной таблице.

Шаги для ячеек и диапазонов

  1. Выделите ячейки, строки или столбцы. Выделить весь документ можно сочетанием Ctrl+A.
  2. Нажмите Ctrl+1 или выберите в контекстном меню Формат ячеек. В отчётах вместо этого иногда достаточно кнопок на панели форматирования.
  3. На вкладке Шрифт задайте начертание, размер и при необходимости цвет текста.
  4. Подтвердите изменения кнопкой ОК.

Если отчёт построен по схеме компоновки данных, изменения, сделанные прямо в результате, пропадут после следующего формирования. Это нормальное поведение: результат пересобирается из настроек. Чтобы шрифт сохранялся, оформление нужно задавать в настройках отчёта, как описано ниже.

Шрифт в печатной форме

Для печатных форм картина другая. Если вы правите макет, шрифт задаётся в самом макете, и менять его нужно там. Что именно доступно — зависит от конфигурации.

  • В типовых конфигурациях печатные формы лежат в макетах объектов. Править их напрямую в рабочей базе нежелательно: при обновлении типовой конфигурации правки будут конфликтовать с новой версией.
  • Если в вашей версии есть механизм «Печатные формы и макеты» с пользовательскими макетами, шрифт меняйте в копии макета, а не в оригинале.
  • Если нужно поправить только внешний вид одной напечатанной формы, откройте предварительный просмотр, измените шрифт в ячейках через Ctrl+1 и распечатайте. Сохраняться эти правки не будут.

Правка типового макета в рабочей базе делает конфигурацию изменённой. Перед этим сделайте резервную копию и подумайте, нет ли пути через пользовательский макет или расширение конфигурации.

Условное оформление: выделять шрифтом строки списка

Когда нужно, чтобы шрифт строки менялся по условию (просрочено — красным и жирным, не проведено — курсивом), используют условное оформление. Это штатный механизм управляемых форм, и править код для него не нужно.

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

Принцип такой:

  1. Добавьте новый элемент оформления.
  2. Задайте отбор: поле, условие, значение. Например, Дата оплаты меньше текущей даты.
  3. В списке параметров оформления включите Шрифт и выберите начертание.
  4. Укажите, к каким полям применять оформление. Если не указать, оно применится ко всей строке.

Для отчётов на схеме компоновки то же делается на вкладке Условное оформление настроек отчёта. Правило описывается один раз и работает при каждом формировании.

Разница между способами

СпособГде применяетсяСохраняется после обновления данныхНужны права
Масштаб в параметрахВесь интерфейсДа, хранится у пользователяОбычный пользователь
Формат ячеекВыделенные ячейки таблицыНет, если отчёт переформируетсяОбычный пользователь
Условное оформлениеСтроки и поля списка или отчётаДа, это часть настроекОбычный пользователь или администратор
Свойство элемента формыКонкретное поле формыДа, это часть конфигурацииРазработчик
Код Новый ШрифтЛюбой элемент по условиюДа, это часть модуляРазработчик

Шрифт в конфигураторе и в редакторе кода

У разработчика своя настройка, не связанная с масштабом пользовательского интерфейса.

Шрифт текстового редактора модулей

  1. В конфигураторе откройте Сервис → Параметры.
  2. Перейдите на вкладку Шрифты.
  3. Выберите нужный элемент: текстовый редактор, табличный документ, редактор форм и другие.
  4. Нажмите кнопку выбора шрифта и задайте гарнитуру и размер.

Для модулей удобнее моноширинный шрифт. В нём одинаково занимают место любые символы, и отступы в коде выглядят ровно.

Шрифт элемента формы

Для управляемой формы шрифт поля или таблицы задаётся в свойствах элемента в конфигураторе. Откройте форму, выделите элемент и найдите в палитре свойств пункт Шрифт. Можно выбрать готовый элемент стиля или задать собственный шрифт.

Лучше использовать элементы стиля, а не жёстко заданный шрифт. Тогда при смене стиля оформления всё будет выглядеть согласованно, а не как лоскутное одеяло.

Шрифт в обычных формах

В старых обычных формах свойство тоже называется Шрифт, но интерфейс там устроен иначе: шрифт можно задавать и для элемента, и для всей формы. Если в вашей конфигурации обычных форм нет, этот абзац можно пропустить.

Программное управление шрифтом

Из кода шрифт задают через объект Шрифт. Конструктор принимает базовый шрифт, имя, размер и признаки начертания. Самый частый случай: взять текущий шрифт элемента и изменить только то, что нужно.

Пример для управляемой формы, где поле нужно сделать жирным и крупнее:

&НаКлиенте
Процедура ВыделитьПоле()
	ТекущийШрифт = Элементы.Комментарий.Шрифт;
	Элементы.Комментарий.Шрифт = Новый Шрифт(ТекущийШрифт, , 14, Истина);
КонецПроцедуры

Здесь второй параметр пропущен, имя гарнитуры остаётся прежним. Третий задаёт размер в пунктах, четвёртый включает жирное начертание.

В табличном документе то же делается для области:

Область = ТабДок.Область("R2C1:R2C5");
Область.Шрифт = Новый Шрифт("Arial", 12, Истина);

Тут шрифт создаётся с нуля: имя, размер, жирность.

Если нужно отдельное оформление для строк списка по условию, не пишите код, а используйте условное оформление. Код оправдан, когда условие сложно выразить отбором.

Элементы стиля

Конфигурация может содержать общие шрифты в виде элементов стиля. Обращаются к ним через глобальную коллекцию ШрифтыСтиля. Это удобно, если нужно, чтобы шрифт следовал оформлению конфигурации, а не был задан числом. Какие именно элементы существуют, зависит от конфигурации, поэтому посмотрите их в дереве объектов в ветке стилей.

Что проверить в коде

  • Для клиентских процедур шрифт задавайте на клиенте: объект формы и её элементы доступны там.
  • Не создавайте новый шрифт в цикле для каждой строки. Создайте один раз и используйте повторно.
  • Размер задаётся числом. Не склеивайте его со строкой.

Как шрифт ведёт себя в разных версиях платформы

Самые заметные перемены связаны с интерфейсом. В «Такси» все формы управляемые и масштабируются единообразно, а обычные формы остались для совместимости. Поэтому один и тот же приём может выглядеть по-разному в старых и новых базах.

  • Способ с масштабом интерфейса работает только в клиенте с «Такси». Если в вашей базе другой режим интерфейса, пункта может не быть.
  • Условное оформление и код Новый Шрифт одинаково работают на всех поддерживаемых релизах 8.3.
  • Если платформа очень старая, часть параметров конструктора шрифта может отличаться. Проверяйте справку к своей версии платформы в конфигураторе.

Номер платформы смотрите в окне О программе. Сравнивайте его однозначно: «не ниже такого-то номера», а не «новее» или «старше».

Какой способ выбрать

Прежде чем править что-то, ответьте на два вопроса: на что должна влиять настройка и должна ли она пережить обновление данных.

Что именно вы хотите изменить?

Практическое правило: чем ближе настройка к данным, тем меньше сюрпризов. Масштаб безопасен всегда. Ручной формат ячеек живёт до следующего формирования. Условное оформление и код живут столько же, сколько сама форма или отчёт.

Какой шрифт выбирать для работы

Для таблиц с цифрами подойдёт любой гротеск без засечек: колонки с суммами читаются лучше. Для печатных форм, которые уйдут контрагентам, используйте то, что есть на любом компьютере. Размер для печати обычно держат в пределах 9-11 пунктов, меньше уже тяжело читать на бумаге, больше раздувает страницу и ломает разбиение на листы.

Если в списке нужно выделить сразу несколько признаков, не смешивайте больше двух приёмов. Жирное начертание плюс цвет читаются отлично. Курсив, подчёркивание, зачёркивание и разный размер в одной строке превращают список в кашу.

Типичные проблемы со шрифтом

Шрифт слишком мелкий на большом мониторе

Сначала проверьте масштаб в параметрах, затем масштабирование Windows. Двойное увеличение (и в системе, и в 1С) даёт чрезмерный размер, а при несовпадении настроек может ломать расположение элементов.

После формирования отчёта оформление пропало

Это ожидаемо для отчётов на компоновке данных. Результат пересобирается, ручные правки в нём не хранятся. Переносите оформление в настройки отчёта или в условное оформление.

Шрифт в печатной форме отличается от экрана

В печати действует шрифт макета, а не настройки интерфейса. Меняйте шрифт в макете или в пользовательском варианте макета.

На другом компьютере шрифт выглядит иначе

Если в макете или форме указана гарнитура, которой нет в системе, Windows подставит другую. Выбирайте распространённые шрифты или проверяйте их наличие на рабочих местах. Для печати на разных компьютерах безопаснее стандартные гарнитуры.

Кириллица отображается странно

Это бывает у декоративных шрифтов без нормальной кириллицы. Возьмите шрифт, в котором точно есть кириллические символы.

Частые вопросы

Можно ли поменять шрифт во всех формах сразу?
Для интерфейса используйте масштаб в параметрах. Сменить гарнитуру для всех форм из пользовательского режима нельзя: её определяет стиль конфигурации.
Почему изменённый шрифт в отчёте не сохраняется?
Отчёт формируется заново из настроек, и ручные правки результата теряются. Задайте оформление в настройках отчёта или в условном оформлении.
Как сделать жирным только одну строку списка?
Через условное оформление: задайте отбор по строке и включите параметр Шрифт с жирным начертанием.
Где менять шрифт в редакторе модулей?
В конфигураторе: Сервис → Параметры → вкладка Шрифты, элемент «Текстовый редактор».
Нужно ли перезапускать 1С после смены масштаба?
Иногда программа просит перезапуск. Если запрос появился, согласитесь, иначе часть окон останется со старым размером.