Разберем ситуации, когда печатная форма при предпросмотре выходит за пределы видимости экрана, а вносить изменения в макет не хочется или на это нет времени. Уменьшить масштаб и подогнать документ под экран можно стандартными средствами платформы 1С.
Рассмотрим базовые быстрые способы настройки отображения в окне предпросмотра:
Ctrl + - (для уменьшения) или зажав клавишу Ctrl и вращая колесико мыши.Проанализируем программное решение задачи, если печатная форма формируется через подсистему БСП (Библиотека Стандартных Подсистем) или во внешней печатной форме. Чтобы пользователю не приходилось каждый раз вручную менять масштаб, настроим автоматическую подгонку по ширине на уровне кода.
Для объекта ТабличныйДокумент применим свойство АвтоМасштаб:
ТабличныйДокумент.АвтоМасштаб = Истина;
Критически важный момент: Устанавливать свойство АвтоМасштаб необходимо строго в самом конце процедуры формирования печатной формы — после того, как все области макета выведены вызовами Вывести() или Присоединить(). Если задать этот параметр в начале или середине процедуры, последующий вывод блоков сбросит значение масштабирования к настройкам по умолчанию.
Если при полном автомасштабировании мелкий текст становится трудночитаемым, зафиксируем явный процент масштаба печати с помощью свойства МасштабПечати:
ТабличныйДокумент.МасштабПечати = 85;
Выясним, как сделать так, чтобы платформа 1С запоминала выбранный масштаб и параметры страницы для конкретной печатной формы. Для этого объекту табличного документа задается уникальный идентификатор параметров печати:
ТабличныйДокумент.ИмяПараметровПечати = "ПРИНТ_ФОРМА_НАЗВАНИЕ_ИД";
После установки свойства ИмяПараметровПечати платформа автоматически сохраняет индивидуальные настройки пользователя (ориентацию, поля и масштаб) в системных настройках. При повторном открытии этой печатной формы платформа применит сохраненные параметры.
Посмотрим на альтернативные варианты коррекции отображения без редактирования макета. Зачастую табличный документ не помещается на экране из-за слишком больших полей или книжной ориентации.
Настроим ориентацию страницы и размеры отступов программно:
// Перевод страницы в альбомный режим
ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
// Уменьшение боковых полей для высвобождения пространства
ТабличныйДокумент.ПолеСлева = 5;
ТабличныйДокумент.ПолеСправа = 5;
Проанализируем дополнительный способ увеличения видимой области печатного документа. Для освобождения полезного места на экране отключим служебную сетку и заголовки строк и колонок:
ТабличныйДокумент.ОтображатьЗаголовки = Ложь;
ТабличныйДокумент.ОтображатьСетку = Ложь;
Таким образом, использование свойства АвтоМасштаб, корректная установка ИмяПараметровПечати и оптимизация полей позволяют обеспечить комфортное отображение печатных форм на любом мониторе без изменения структуры макета.