Динамический масштаб табличного документа

Приведенный ниже код уменьшает масштаб табличного документа так, чтобы он поместился на 1 лист, либо увеличивает масштаб для полного заполнения листа.
Для корректной работы необходимо чтобы по умолчанию был установлен текущий (рабочий) принтер.
МинимальныйПроцентМасштаба          = 60;     
ИсходныйМасштаб                                 = 100;
ТабличныйДокумент.МасштабПечати = 100;       
ИсходноеКоличествоСтраниц               = ТабличныйДокумент.КоличествоСтраниц();
ТабличныйДокумент.МасштабПечати = МинимальныйПроцентМасштаба;
 
Если ТабличныйДокумент.КоличествоСтраниц() < ИсходноеКоличествоСтраниц  Тогда
        КоличествоОптимизированныхСтраниц       = ТабличныйДокумент.КоличествоСтраниц();
        ТекущийПроцентМасштаба                          = МинимальныйПроцентМасштаба;
        Пока КоличествоОптимизированныхСтраниц = ТабличныйДокумент.КоличествоСтраниц() Цикл       
                ТекущийПроцентМасштаба                  = ТекущийПроцентМасштаба + 1;
                ТабличныйДокумент.МасштабПечати = ТекущийПроцентМасштаба;
        КонецЦикла;
        ТабличныйДокумент.МасштабПечати    = ТабличныйДокумент.МасштабПечати - 1;
Иначе
        ТабличныйДокумент.МасштабПечати    = ИсходныйМасштаб;
        ТекущийПроцентМасштаба                          = ИсходныйМасштаб;
        Пока ИсходноеКоличествоСтраниц             = ТабличныйДокумент.КоличествоСтраниц() Цикл
                ТекущийПроцентМасштаба                  = ТекущийПроцентМасштаба + 1;
                ТабличныйДокумент.МасштабПечати = ТекущийПроцентМасштаба;
        КонецЦикла;
        ТабличныйДокумент.МасштабПечати    = ТабличныйДокумент.МасштабПечати - 1;
КонецЕсли;
 
ЭлементыФормы.ПолеТабличногоДокумента.МасштабПечати = ТабличныйДокумент.МасштабПечати;
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии