Как убрать верхний отступ и смещение текста в шаблонах ценников после обновления 1С?

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей Торговля и дистрибуция
← На главную

Многие пользователи и администраторы сталкиваются с неприятной ситуацией: после обновления конфигурации (например, 1С:Управление торговлей до версий 11.5.17 и выше) в стандартных шаблонах этикеток и ценников «съезжают» надписи. Текст параметров (например, цены или номенклатуры) смещается вниз, визуально появляется непредусмотренный отступ сверху или увеличивается межстрочный интервал, из-за чего информация перестает помещаться в отведенные границы. Давайте подробно разберем причины такого поведения платформы и рассмотрим эффективные способы решения этой задачи.

Выясним причины проблемы

Прежде чем исправлять макеты, проанализируем, почему возникает этот визуальный дефект. Проблема носит комплексный характер и связана с изменениями в платформе «1С:Предприятие 8.3»:

  1. Изменения в механизме рендеринга шрифтов. В актуальных версиях платформы был переработан расчет метрик шрифтов (апрошей, ascent/descent и межстрочных интервалов) для их одинакового отображения на разных операционных системах. В результате некоторые популярные шрифты получили увеличенный внутренний верхний отступ, который «толкает» базовую линию текста вниз.
  2. Влияние масштабирования экрана (DPI). При работе в ОС Windows с включенным масштабированием (125%, 150% и более) табличный документ нелинейно пересчитывает физические размеры в пиксели экрана. Из-за независимого округления границ ячеек и символов возникает видимое смещение текста к нижней границе ячейки.
  3. Свойство ячейки размещения текста. Если в свойствах ячейки установлено значение Переносить, механизм расчета высоты строки сразу закладывает межстрочный интервал для возможного многострочного текста, что визуально опускает первую строку ниже положенного.

Рассмотрим способы исправления шаблонов

Разберем по шагам несколько вариантов решения проблемы: от быстрых пользовательских правок до более глубоких настроек табличного документа.

1. Уменьшение масштаба и центрирование (Быстрое решение)

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

  1. Откройте шаблон ценника в стандартном редакторе 1С.
  2. Выделите проблемную ячейку, в которой текст не помещается по высоте.
  3. В свойствах ячейки уменьшите размер шрифта или измените свойство «Масштаб» со стандартных 100% примерно до 90%.
  4. После уменьшения размера обязательно примените вертикальное выравнивание по центру (или по верху, в зависимости от дизайна).

Этот метод прост, но требует ручной корректировки каждой съехавшей ячейки.

2. Изменение режима размещения текста

Отключим резервирование места под многострочный текст, которое часто является главным виновником смещения. Посмотрим на свойства ячеек, содержащих цену (обычно цена выводится фиксированным числом символов и перенос для нее не требуется):

  1. Выделите ячейку с параметром цены в редакторе макета.
  2. Найдите свойство РазмещениеТекста (Размещение).
  3. Измените значение с Переносить на Обрезать или Авто.

Отключение многострочного режима уберет лишний межстрочный интервал сверху, и текст вернется на свое место.

3. Замена используемого шрифта

Шрифты семейств Calibri, Segoe UI и Roboto имеют конструктивно увеличенные межстрочные интервалы. Переведем шаблоны на более компактные аналоги:

  1. В редакторе шаблона выделите все ячейки.
  2. В свойствах шрифта замените текущий шрифт на классические системные варианты с компактными метриками, например, Arial или Tahoma.
  3. Проверьте отображение — во многих случаях замена шрифта полностью нивелирует смещение без изменения физических размеров ячеек.

4. Разделение данных по разным ячейкам

Если в одной ячейке выводится составной формат (например, рубли крупным шрифтом, а копейки и символ валюты — мелким), движок 1С может некорректно рассчитывать общие отступы, ориентируясь на больший кегль. Разделим эти данные:

  1. Разбейте область, где выводится цена, на две независимые колонки/ячейки.
  2. В первую ячейку поместите целую часть цены и задайте нужный крупный шрифт.
  3. Во вторую ячейку выведите дробную часть и валюту меньшим шрифтом.

Такой подход исключит наложение внутренних отступов разных шрифтов друг на друга.

5. Системные настройки и альтернативные подходы

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

Применяя данные методы в комплексе или по отдельности, вы сможете восстановить корректный внешний вид ценников и этикеток в 1С:Управление торговлей после обновления платформы.

← На главную