Часто возникает ситуация, когда аналитик или технический специалист пытается изменить шрифт в печатной форме документа (например, в «Приказе»), но внесенные в макет правки не отображаются при печати. Это может быть связано с тем, что система использует другой макет, или шрифт переопределяется программно в момент формирования документа. Разберем пошагово, как найти нужный макет и гарантированно изменить оформление текста.
Прежде всего проанализируем стандартный механизм изменения оформления. Если вы открыли макет в конфигураторе и нашли ячейку с параметром Преамбула, выполните следующие действия:
<[Преамбула]>.Важный нюанс: если шрифт меняется только для параметра, но само значение в печатной форме остается прежним, это может означать, что вы редактируете не тот макет, который используется системой в данный момент.
Если в документе в конфигураторе макет один, а при нажатии кнопки «Печать» предлагается несколько вариантов или изменения не применяются, нужно выяснить, откуда система берет форму. Рассмотрим основные места поиска:
.epf.Если визуальная правка макета не помогает, проанализируем ситуацию, при которой шрифт задается кодом. Для этого необходимо заглянуть в МодульМенеджера документа. Выясним причину, выполнив глобальный поиск (Ctrl+Shift+F) по слову Преамбула.
Посмотрим на пример кода, который может переопределять оформление:
ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
ОбластьМакета.Параметры.Преамбула = ТекстПреамбулы;
// Программное переопределение шрифта:
ОбластьМакета.Область().Шрифт = Новый Шрифт("Times New Roman", 12, Истина);
ТабДок.Вывести(ОбластьМакета);
В данном примере, какой бы шрифт вы ни поставили в визуальном редакторе макета, код принудительно заменит его на Times New Roman 12-го размера при каждом формировании печати. В таком случае изменения нужно вносить непосредственно в программный код.
Разберем ситуацию, когда текст преамбулы хранится в справочнике «Виды приказов». Если поле, где вводится этот текст, имеет тип ФорматированнаяСтрока, то текст уже содержит в себе настройки оформления (жирность, курсив, шрифт). При выводе в ТабличныйДокумент такое значение сохраняет свое исходное форматирование, игнорируя настройки ячейки макета.
Чтобы это проверить, проанализируем, как заполняется параметр. Если в коде используется конструкция:
ОбластьМакета.Параметры.Заполнить(ДанныеПечати);
// или
ОбластьМакета.Параметры.Преамбула = Справочники.ВидыПриказов.НайтиПоНаименованию("...").ТекстПреамбулы;
И при этом тип значения — ФорматированнаяСтрока, вам необходимо менять шрифт непосредственно в источнике — в самом справочнике «Виды приказов», используя встроенный редактор текста 1С.
В современных конфигурациях (ERP, ЗУП 3.1) приказы часто формируются на базе шаблонов .docx. Если при печати открывается окно Word, макет в конфигураторе будет храниться в разделе Двоичные данные.
Пошаговый алгоритм изменения шрифта в Word-макете:
{Преамбула}) и установите для него нужный шрифт и размер.Проанализируем еще два важных фактора, которые могут повлиять на результат:
Arial или MS Sans Serif.РазмещениеТекста. Если установлено значение Авто, система может пытаться «втиснуть» длинную преамбулу в границы ячейки, визуально уменьшая шрифт. Для корректного отображения рекомендуется использовать значение Переносить.Таким образом, решение задачи по смене шрифта требует комплексного подхода: от проверки пользовательских макетов в интерфейсе до анализа программного кода и типов данных в справочниках-источниках.