Почему при печати из 1С на терминальном сервере файлы получаются аномально большого размера и как это исправить?

Системный администратор 1С v8.3 (Обычные формы) IT и автоматизация бизнеса
← На главную

Многие системные администраторы и специалисты 1С сталкиваются с ситуацией, когда при печати из терминальной сессии документ «раздувается» до невероятных размеров. Небольшая печатная форма в несколько килобайт может превратиться в файл очереди печати (spool-файл) размером в 500 МБ или даже 1 ГБ. Это приводит к тому, что принтер начинает печатать с огромными задержками или вовсе «зависает», блокируя работу пользователя. Особенно остро эта проблема проявляется на серверах под управлением Windows Server 2008 R2 при использовании технологии Easy Print.

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

Разберем причину: почему файл становится «тяжелым»?

Прежде чем переходить к настройкам, давайте выясним причину возникновения аномального размера. Технология Remote Desktop Easy Print основана на формате XPS (XML Paper Specification). Когда вы нажимаете кнопку «Печать» в 1С, происходит следующее:

  1. Платформа 1С формирует графический образ документа.
  2. Сервер переводит этот образ в формат XPS.
  3. XPS-пакет передается по RDP-каналу на локальный компьютер пользователя.
  4. Локальная служба печати конвертирует XPS в формат, понятный конкретному принтеру (например, PCL или PostScript).

Проблема кроется в том, что 1С часто генерирует сложные таблицы. Если в печатной форме используются нестандартные шрифты, логотипы или специфическое масштабирование, движок печати 1С может отказаться от использования векторных шрифтов и передать документ как единое растровое изображение (bitmap). В результате каждый пиксель страницы описывается отдельно, что и приводит к взрывному росту размера файла.

Шаг 1: Настройка групповых политик на терминальном сервере

Проанализируем конфигурацию сервера. Для стабильной работы печати в среде Windows Server 2008 R2 необходимо правильно настроить политики проброса принтеров. Рассмотрим необходимые параметры в редакторе локальной групповой политики (gpedit.msc):

Перейдем в раздел: Конфигурация компьютера — Административные шаблоны — Компоненты Windows — Службы удаленных рабочих столов — Узел сеансов удаленных рабочих столов — Перенаправление принтеров.

  1. Использовать в первую очередь драйвер принтера Easy Print удаленного рабочего стола: установим значение «Включено». Это базовое условие для работы универсального драйвера.
  2. Перенаправлять только используемый по умолчанию принтер клиента: установим значение «Включено». Это существенно снижает нагрузку на службу печати (spooler), так как серверу не приходится инициализировать десятки ненужных принтеров пользователя.

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

Шаг 2: Проверка настроек масштабирования в 1С

Выясним, как настройки самой 1С влияют на размер задания. Очень часто пользователи устанавливают в параметрах страницы опцию «По ширине страницы». Рассмотрим, почему это критично:

Когда включено автоматическое масштабирование, 1С пытается подогнать документ под область печати драйвера. В терминальном режиме Easy Print это часто заставляет систему рендерить страницу как картинку, чтобы гарантировать точность отображения.

Рекомендация:

Попробуйте установить в параметрах страницы масштаб 100%. Если документ не помещается, лучше отредактировать макет (уменьшить ширину колонок), чем использовать автоматическое масштабирование. Проверьте, изменится ли после этого размер spool-файла в очереди печати.

Шаг 3: Обновление .NET Framework

Поскольку Easy Print напрямую зависит от графических библиотек .NET, критически важно обеспечить актуальность версий этой платформы. Для Windows Server 2008 R2 и клиентских машин (особенно если это Windows 7 или XP) необходимо выполнить следующие действия:

Шаг 4: Работа с драйверами на стороне клиента

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

  1. Отключение дополнительных возможностей печати: В свойствах принтера на локальном ПК (вкладка «Дополнительно») снимите галочку «Включить дополнительные возможности печати» (Enable Advanced Printing Features). Это заставит принтер использовать стандартные обработчики, что часто решает проблему с объемом данных.
  2. Смена типа драйвера: Если используется драйвер PCL6, попробуйте заменить его на PCL5e или PostScript (PS). Драйверы PCL6 более современны, но именно они чаще всего конфликтуют с механизмом рендеринга RDP, создавая огромные задания.
  3. Универсальные драйверы: Используйте Universal Print Driver (UPD) от производителя принтера (HP, Canon, Xerox). Они лучше оптимизированы для работы в терминальных средах.

Шаг 5: Оптимизация печатной формы в 1С

Посмотрим на ситуацию со стороны разработчика 1С. Если в печатной форме используется тяжелый логотип компании, это может стать причиной тормозов.

Шаг 6: Использование сторонних решений (альтернативный путь)

Если штатные средства Windows и настройки 1С не помогают (что нередко случается на устаревших ОС вроде 2008 R2), стоит рассмотреть специализированное ПО для терминальной печати. Такие продукты, как ScrewDrivers или TSPrint, заменяют стандартный механизм Easy Print.

Преимущества сторонних решений:

Подведем итоги

Для решения проблемы аномального размера файлов при печати из 1С мы рекомендуем придерживаться следующей последовательности действий: сначала настроим групповые политики и проверим масштаб в 1С, затем обновим .NET Framework и оптимизируем локальный драйвер пользователя (отключив расширенные функции). В большинстве случаев сочетание правильного масштаба (100%) и отключение расширенных функций печати на клиенте позволяет сократить размер задания в десятки раз и вернуть скорость печати к нормальным значениям.

← На главную