Мелкий или кривой шрифт в 1С на терминальном сервере: что крутить и где

· 9 мин

Содержание

Шрифт в 1С 8.3 меняют не в консоли сервера и не в 1cestart.cfg, а там, где интерфейс рисуется: в Windows (масштаб экрана и DPI сеанса), в клиенте удалённого рабочего стола и в стиле самой конфигурации. Для всех пользователей терминального сервера проще всего задать масштаб через ключ реестра LogPixels групповой политикой. Сервер 1С (ragent, rmngr, rphost) интерфейс не рисует, но шрифты ему нужны для печатных форм и PDF.

Отсюда простое правило. Если «мелко» или «размыто» — настраиваем отображение у клиента или в RDP-сеансе. Если «поехали печатные формы» или «квадраты вместо букв в PDF» — ставим шрифты на сам сервер 1С.

Откуда 1С берёт шрифт: клиент, конфигурация и сервер

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

На размер и вид текста влияют четыре слоя:

  • 🖥️ Операционная система клиента. Масштаб экрана (DPI), сглаживание ClearType, набор установленных шрифтов.
  • 🔌 Сеанс удалённого рабочего стола. Если 1С запущена на терминальном сервере, то «клиентом» для Windows является RDP-сеанс со своим DPI.
  • 🎨 Стиль конфигурации. В управляемых формах шрифты заданы элементами стиля. Разработчик меняет их в Конфигураторе, и это действует для всех пользователей базы.
  • 📄 Макеты табличных документов. Печатные формы и отчёты используют шрифты, прописанные в ячейках макета (обычно Arial).

Сервер 1С участвует только в последнем слое. Когда отчёт или печатная форма формируются на сервере, платформа рассчитывает высоту строк и переносы по шрифтам, которые установлены на этом сервере. Нет шрифта — расчёт идёт по замене, и форма «плывёт».

Что видит пользовательГде причинаГде исправлять
Всё мелкое на 4K-монитореDPI клиентаМасштаб Windows на рабочем месте
Мелко только в RDPDPI сеансаКлиент RDP, LogPixels на сервере
Размытые формыРежим DPI у приложенияСвойства ярлыка, «Совместимость»
Нужен другой шрифт в формахСтиль конфигурацииКонфигуратор
Печатная форма разъехаласьШрифты на сервере 1СУстановка шрифтов на сервер

Миф про 1cestart.cfg и консоль кластера

Многие ищут настройку шрифта в файле 1cestart.cfg. Его там нет. Этот файл управляет стартером: какие версии платформы установлены, какую запускать по умолчанию, где лежат шаблоны конфигураций и какие общие списки баз подключать.

Типичное содержимое выглядит так:

DefaultVersion=8.3.25
InstalledLocation=C:\Program Files\1cv8
ConfigurationTemplatesLocation=C:\Users\user\AppData\Roaming\1C\1cv8\tmplts
CommonInfoBases=\\fileserver\1c\ibases.v8i

Через 1cestart.cfg можно сделать полезное косвенно. Например, на терминальном сервере закрепить одну версию платформы для всех. Это важно, потому что разные релизы по-разному работают с высоким DPI. Но строки «шрифт» или «масштаб» в этот файл добавлять бесполезно: стартер их проигнорирует.

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

Если в инструкции из интернета вам советуют вписать размер шрифта в 1cestart.cfg, conf.cfg или в параметры запуска 1cv8.exe — это не работает. Задокументированных ключей командной строки для шрифта у платформы нет.

Изменить шрифт 1С на сервере терминалов для всех пользователей

Самая частая ситуация «на сервере»: 1С установлена на сервер удалённых рабочих столов, а пользователи подключаются по RDP с ноутбуков и мониторов с разным разрешением. Шрифт в 1С у одних крошечный, у других огромный.

Шаг 1. Проверьте клиент удалённого рабочего стола

Современные версии mstsc передают серверу масштаб экрана клиента. Если на ноутбуке стоит 150%, сеанс тоже откроется со 150%. Проверьте:

  1. На рабочем месте откройте Параметры → Система → Дисплей и посмотрите «Масштаб».
  2. В mstsc на вкладке «Экран» выберите разрешение «Во весь экран ».
  3. На вкладке «Взаимодействие» включите «Сглаживание шрифтов». Без него текст в 1С выглядит рваным.
  4. Переподключитесь: масштаб применяется при входе в сеанс.

Шаг 2. Задайте масштаб в самом сеансе

Если клиент масштаб не передаёт (старый RDP-клиент, тонкий клиент-терминал, Linux-клиент), пользователь может выставить его сам. В сеансе на сервере: Параметры → Система → Дисплей → Масштаб. Windows попросит выйти из системы, чтобы применить изменение.

Шаг 3. Раздайте масштаб всем через реестр

Масштаб пользователя хранится в ветке HKEY_CURRENT_USER\Control Panel\Desktop. Нужны два параметра:

  • Win8DpiScaling (DWORD) = 1 — разрешает пользовательский масштаб;
  • LogPixels (DWORD) — сам масштаб в точках на дюйм.
МасштабLogPixels (десятичное)LogPixels (hex)
100%9660
125%12078
150%14490
175%168A8
200%192C0

Файл для ручного импорта под конкретным пользователем (125%):

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Desktop]
"Win8DpiScaling"=dword:00000001
"LogPixels"=dword:00000078

Для всех пользователей терминального сервера удобнее групповая политика. В редакторе GPO для подразделения с серверами откройте Конфигурация пользователя → Настройка → Конфигурация Windows → Реестр и создайте два элемента реестра с теми же значениями. Включите замыкание (loopback), если политика привязана к компьютерам, а не к пользователям.

Масштаб применяется только при новом входе. Пользователям придётся выйти из сеанса, а не просто закрыть окно RDP. Предупредите их заранее, чтобы никто не потерял несохранённый документ в 1С.

Шаг 4. Проверьте результат на одном пользователе

Не раскатывайте политику сразу на всех. Возьмите тестовую учётную запись, примените масштаб и откройте в 1С три типичных экрана: список документов, форму документа с табличной частью и печатную форму. Обратите внимание на обрезанные подписи полей и кнопки, ушедшие за край окна.

Для большинства мониторов Full HD хватает 100–125%. Значения выше 150% на терминальном сервере имеют смысл только для 4K-экранов: иначе в форму документа помещается слишком мало строк.

Шрифты в стиле конфигурации: правка через Конфигуратор

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

Где смотреть:

  1. Откройте базу в Конфигураторе.
  2. В дереве метаданных разверните Общие → Элементы стиля. Элементы с типом «Шрифт» задают шрифт для групп элементов форм.
  3. Там же, в Общие → Стили, лежат стили конфигурации. Основной стиль указан в свойствах корня конфигурации.
  4. Шрифт отдельного поля задают в свойствах элемента формы, обычно ссылкой на элемент стиля, а не явным значением.

После правки выполните «Обновить конфигурацию базы данных» (F7). Изменение увидят все пользователи при следующем запуске клиента.

Правка стиля типовой конфигурации снимает её с полной поддержки. Каждое обновление релиза придётся проводить через сравнение и объединение. Для бухгалтерии на типовой БП или ЗУП масштаб Windows почти всегда лучший выбор, чем доработка стиля.

Задавайте шрифты ссылками на элементы стиля, а не числами в каждой форме. Тогда кегль меняется в одном месте, а не в сотне форм.

Обычные формы и режим совместимости: как убрать размытость

Старые конфигурации на обычных формах (толстый клиент, обычное приложение) плохо дружат с масштабом больше 100%. Формы в них нарисованы в пикселях. Windows растягивает такое окно как картинку, и шрифт становится мыльным.

Помогает переопределение режима DPI для исполняемого файла:

  1. Найдите ярлык или сам файл 1cv8.exe в каталоге нужной версии платформы, например C:\Program Files\1cv8\8.3.25.xxxx\bin\.
  2. Откройте его свойства, вкладку «Совместимость».
  3. Нажмите «Изменить параметры высокого DPI».
  4. Отметьте «Переопределите режим масштабирования высокого разрешения» и выберите, кто выполняет масштабирование.
ВариантЧто получитсяКогда выбирать
ПриложениеПлатформа масштабирует сама, текст чёткийУправляемые формы, свежая платформа
СистемаОкно растянуто, текст размыт, но ничего не обрезаноОбычные формы, которые «ломаются» при масштабе
Система (расширенная)Windows перерисовывает текст чёткоПробуйте для обычных форм, если «Система» слишком мыльная

На терминальном сервере этот флажок можно выставить для всех пользователей, если открыть свойства от имени администратора и нажать «Изменить параметры для всех пользователей».

Режим совместимости конфигурации (свойство «Режим совместимости» в Конфигураторе) на шрифты напрямую не влияет. Он определяет, какое поведение платформы доступно конфигурации. Не меняйте его ради отображения: это затрагивает работу кода.

Есть и мягкий вариант без настроек. Табличные документы (отчёты, печатные формы на экране) масштабируются Ctrl + колёсико мыши. Это удобно, когда мелко только в отчётах, а формы устраивают.

Шрифты на сервере 1С под Linux: печатные формы и PDF

Здесь «шрифт 1С на сервере» в буквальном смысле. Сервер 1С на Linux формирует табличные документы, сохраняет их в PDF, считает высоту строк. Для этого ему нужны те же шрифты, что заложены в макетах. В типовых конфигурациях это в основном Arial, иногда Times New Roman и Courier New.

На чистом Linux этих шрифтов нет. Результат:

  • 📏 строки в печатной форме выше или ниже, таблица переносится на лишнюю страницу;
  • ✂️ текст в ячейках обрезается;
  • 🔲 в PDF вместо букв квадраты или другой шрифт.

Как исправить на Ubuntu или Debian:

sudo apt install ttf-mscorefonts-installer fontconfig
sudo fc-cache -fv
fc-list | grep -i arial

Последняя команда должна вывести файлы Arial. После этого перезапустите службу сервера 1С, чтобы рабочие процессы перечитали шрифты. Имя службы зависит от версии и способа установки: посмотрите его командой systemctl list-units | grep -i 1c.

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

На сервере 1С под Windows шрифты обычно уже есть. Если макет использует нестандартный шрифт (например, для штрихкода), установите его на сервер «для всех пользователей» и тоже перезапустите службу в нерабочее время.

Квадраты, кракозябры и другие сбои отображения

Когда шрифт не просто мелкий, а «сломанный», причину ищите по симптому.

Диагностика: выберите симптом

После смены языка системы для программ без Юникода Windows требует перезагрузку. На терминальном сервере это значит перерыв для всех пользователей, планируйте заранее.

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

Частые вопросы

Можно ли увеличить шрифт только в 1С, не трогая остальные программы?
Масштаб Windows действует на все программы сеанса. Для отдельного приложения можно выбрать режим высокого DPI в свойствах 1cv8.exe. Изменить кегль только в 1С можно через стиль конфигурации, но это доработка базы.
Влияет ли размер шрифта на скорость работы 1С?
Нет. Масштаб и шрифт меняют только отрисовку на клиенте. На скорость запросов и проведения документов они не влияют.
Почему у пользователя в веб-клиенте шрифт другой, чем в тонком клиенте?
Веб-клиент рисует интерфейс средствами браузера. Масштаб там меняется сочетанием Ctrl и плюс или минус, как на любом сайте.
Нужно ли ставить шрифты на сервер 1С под Windows?
Стандартные Arial и Times New Roman в Windows уже есть. Ставить нужно только нестандартные шрифты из ваших макетов, например шрифты штрихкодов.
Сохранится ли масштаб после обновления платформы?
Да. Масштаб хранится в настройках Windows пользователя, а не в каталоге платформы. Флажок режима DPI в свойствах exe-файла придётся выставить заново для новой версии, потому что меняется путь к файлу.