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

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

При запуске 1С:Предприятия на современных ноутбуках и мониторах с высоким разрешением (например, 3200х1800, QHD, 4K) пользователи нередко сталкиваются с искажением интерфейса. Названия реквизитов обрезаются, поля ввода наползают друг на друга, а некоторые кнопки и надписи пропадают вовсе. Разберем причины такого поведения платформы и подробно рассмотрим проверенные способы восстановления корректного отображения элементов.

Причины возникновения проблемы с отображением

Выясним причину, почему формы искажаются именно на экранах с высокой плотностью пикселей (HiDPI):

  1. Ограничения обычных (неуправляемых) форм: Конфигурации предыдущих поколений (такие как Управление торговлей 10.3, Бухгалтерия предприятия 2.0, Зарплата и управление персоналом 2.5) спроектированы на обычных формах. В них координаты, ширина и высота элементов жестко зафиксированы в пикселях исходя из стандартного системного разрешения 96 DPI (масштаб 100%). Когда операционная система применяет масштабирование (125%, 150%, 200%), увеличивается размер системного шрифта, однако сами контейнеры надписей и полей не пересчитываются платформой адаптивно. В результате текст не помещается в отведенные рамки.
  2. Отсутствие поддержки Per-Monitor DPI в старых платформах: Платформа 8.2 и ранние релизы платформы 8.3 (включая 8.3.6) не содержат механизмов автоматической адаптации толстого клиента обычного приложения под экраны высокой четкости.

Способ 1. Переопределение режима масштабирования DPI в свойствах исполняемого файла

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

Разберем по шагам порядок действий:

  1. Закроем все запущенные сеансы 1С:Предприятие.
  2. Перейдем в каталог установленной платформы через проводник (обычно это C:\Program Files (x86)\1cv8\<номер_версии>\bin\).
  3. Найдем исполняемый файл 1cv8.exe (а также 1cv8c.exe и 1cv8s.exe при необходимости) и нажмем на него правой кнопкой мыши.
  4. Выберем пункт «Свойства» и перейдем на вкладку «Совместимость».
  5. Нажмем кнопку «Изменить параметры высокого DPI» (в более ранних сборках Windows — установим флажок «Отключить масштабирование изображения при высоком разрешении экрана»).
  6. Установим флаг «Переопределите режим масштабирования высокого разрешения».
  7. В выпадающем списке «Масштабирование выполняется:» выберем значение «Система» (System) или «Система (расширенная)» (System Enhanced).
  8. Нажмем кнопку «ОК» для сохранения настроек и перезапустим базу данных.

После применения этих параметров шрифты могут выглядеть слегка сглаженными, однако все элементы интерфейса, кнопки и надписи встанут на свои места и перестанут обрезаться.

Способ 2. Корректировка системного масштаба и разрешения экрана

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

Выполним следующие системные настройки:

  1. Откроем Параметры Windows (сочетание клавиш Win + I) и перейдем в раздел «Система» → «Дисплей» (или «Панель управления\Оформление и персонализация\Экран»).
  2. Обратим внимание на установленный масштаб. Дробные значения (125%, 150%, 175%, 225%) приводят к наибольшим ошибкам округления координат элементов в 1С.
  3. Установим кратный целочисленный масштаб — строго 100% (96 DPI) либо 200%. Если на 100% элементы становятся слишком мелкими из-за разрешения 3200х1800, переключим разрешение экрана на 1920х1080 (Full HD) при масштабе 100%.
  4. Важный момент: После любого изменения масштабирования или разрешения экрана в обязательном порядке выполним выход из учетной записи Windows (Sign out) или перезагрузку компьютера. Без перезахода подсистема Windows GDI не пересчитывает метрики шрифтов для уже инициализированных процессов.

Способ 3. Использование внешнего манифеста приложения

Если операционная система игнорирует параметры совместимости из-за встроенного в платформу манифеста, включим принудительное чтение внешнего файла конфигурации через системный реестр.

Пошаговый порядок действий:

  1. Откроем редактор реестра (regedit) от имени администратора.
  2. Перейдем в раздел реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide.
  3. Создадим параметр типа DWORD (32 бита) с именем PreferExternalManifest и присвоим ему значение 1.
  4. Перейдем в папку bin установленной платформы 1С и создадим текстовый файл с именем 1cv8.exe.manifest.
  5. Убедимся, что внутри блока манифеста <asmv3:windowsSettings> параметр осведомленности о DPI отключен: <dpiAware>false</dpiAware>.

Способ 4. Работа через Remote Desktop (RDP / RemoteApp)

Рассмотрим альтернативный вариант работы, который часто применяется на практике для ноутбуков с экранами высокой четкости. При подключении к терминальному серверу под управлением Windows Server обработка интерфейса происходит на стороне сервера с фиксацией стандартного системного DPI (96 DPI / 100%).

Сервер транслирует клиенту готовое графическое изображение без искажения относительных размеров элементов. Это позволяет комфортно работать в обычных формах конфигураций Управление торговлей 10.3 или Бухгалтерия предприятия 2.0 без необходимости менять локальное разрешение экрана мобильного устройства.

Долгосрочное решение проблемы

Подведем итог: полное отсутствие проблем с адаптивным масштабированием на экранах HiDPI архитектурно заложено только в управляемом интерфейсе («Такси») платформы 1С:Предприятие 8.3. Для полного избавления от искажений без костылей совместимости рекомендуется планировать переход на современные редакции конфигураций на управляемых формах (например, 1С:Управление торговлей 11 или 1С:ERP).

← На главную