Установка стороннего шрифта для 1С: Windows, Linux, формы и печать

· 9 мин

Содержание

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

Поэтому «добавить шрифт » всегда состоит из двух частей: установка в ОС (клиент, терминальный сервер, при необходимости сервер 1С на Linux) и назначение шрифта в конфигураторе или в макете. Если пропустить первую, на других рабочих местах 1С молча подставит другой шрифт, и вёрстка поедет.

Что нужно знать до установки

Шрифт не хранится ни в конфигурации, ни в информационной базе. В метаданных записано только его имя, например Arial или Code 128. Кто открыл форму, у того платформа ищет шрифт с таким именем среди установленных в системе.

Отсюда практическое правило: где шрифта нет, там будет замена. Это важно в трёх случаях:

  • 🖥 экран формы в тонком клиенте на каждом рабочем месте;
  • 🖨 печатная форма, которую открывают на разных компьютерах;
  • 🌐 веб-клиент: шрифт берётся из системы того компьютера, где открыт браузер.

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

Подготовка файла шрифта

Перед установкой проверьте три вещи.

  1. Формат. Подходят .ttf (TrueType) и .otf (OpenType). Файлы .woff и .woff2 предназначены для сайтов; в Windows их надо предварительно конвертировать.
  2. Кириллица. Многие красивые шрифты содержат только латиницу. Откройте файл двойным щелчком: в окне просмотра введите русский текст. Если вместо букв квадраты или другая гарнитура, кириллицы в шрифте нет, и 1С тут ничем не поможет.
  3. Лицензия. Бесплатные для личного использования шрифты нередко запрещают коммерческое применение. Для рабочих баз берите шрифты со свободной лицензией или покупайте.

Источник файла проверьте на вирусы: шрифты из случайных архивов иногда идут вместе с установщиком.

Шрифт со сложным начертанием (например, «рукописный» в ведомости) читается хуже обычного. Для таблиц, где читателем будет бухгалтер или налоговая, лучше оставить стандартный.

Установка шрифта в Windows

Есть два рабочих способа. Оба ставят шрифт в систему, 1С тут ни при чём.

Через контекстное меню

  1. Откройте папку с файлом шрифта.
  2. Щёлкните файл правой кнопкой мыши и выберите Установить. В современных версиях Windows будет ещё пункт Установить для всех пользователей.
  3. Дождитесь исчезновения окна установки.

Если нужно поставить сразу несколько файлов, выделите их все и выберите то же действие.

Копированием в системную папку

Скопируйте файлы в C:\Windows\Fonts. Это равнозначно установке для всех пользователей, потребуются права администратора.

СпособДля кого шрифт будет доступенПрава
УстановитьДля текущего пользователяОбычные
Установить для всех пользователейДля всех учётных записей компьютераАдминистратор
Копирование в C:\Windows\FontsДля всех учётных записейАдминистратор

После установки закройте все запущенные клиенты 1С и откройте их заново. Уже работающий сеанс список шрифтов не обновляет.

Если у вас терминальный сервер

На терминальном сервере (RDS) пользователи работают в сеансах на одной машине. Ставить шрифт нужно на сам сервер, а не на компьютеры сотрудников, и устанавливать для всех пользователей. Затем каждому пользователю нужно выйти из сеанса и зайти снова. Принудительно завершать чужие сеансы без согласования нельзя: люди потеряют несохранённые документы.

Настройка Linux-серверов для работы с 1С

Эта часть нужна, если у вас сервер 1С:Предприятия на Linux или клиенты работают под Linux. Типичный сигнал проблемы: на Windows печатная форма выглядит нормально, а при формировании на сервере (например, выгрузка в PDF по расписанию) вместо нужного шрифта подставляется другой.

Порядок действий:

  1. Скопируйте файлы шрифта в системный каталог шрифтов, например в /usr/share/fonts/truetype/custom/, предварительно создав папку. Для одного пользователя достаточно ~/.fonts или ~/.local/share/fonts.
  2. Проверьте владельца и права: файлы должны читаться всеми, обычно подходит chmod 644.
  3. Обновите кэш шрифтов.
sudo mkdir -p /usr/share/fonts/truetype/custom
sudo cp MyFont.ttf /usr/share/fonts/truetype/custom/
sudo chmod 644 /usr/share/fonts/truetype/custom/MyFont.ttf
sudo fc-cache -fv

Проверьте, что система видит шрифт:

fc-list | grep -i "MyFont"

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

Перезапуск службы сервера 1С оборвёт сеансы всех подключённых пользователей. Делайте его в нерабочее время и предупредите людей заранее. Нужен ли перезапуск именно у вас, проверьте на копии стенда: часто достаточно, чтобы процесс, который формирует документы, был запущен заново.

Если на Linux нет базовых шрифтов вообще, печать в PDF выглядит пустой или с квадратами. Установите пакет, который приносит стандартные кириллические гарнитуры, например семейство Liberation или DejaVu из репозитория вашего дистрибутива, а затем снова выполните fc-cache -fv.

Применение шрифта в конфигураторе и формах

После установки в ОС запустите Конфигуратор заново: уже открытый не увидит нового шрифта.

Шрифт для элемента формы

  1. Откройте нужную форму (обычную или управляемую) в конфигураторе.
  2. Выделите элемент: поле, надпись, группу.
  3. В палитре свойств найдите свойство Шрифт и нажмите кнопку выбора.
  4. Выберите нужную гарнитуру из списка, задайте размер, начертание (жирный, курсив).

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

Шрифт в конфигурации через стиль

Откройте ветку Общие → Стили → Элементы стиля, создайте элемент нужного типа (шрифт) и задайте в нём гарнитуру. Затем в свойстве Шрифт элементов формы выберите этот элемент стиля вместо конкретной гарнитуры. Изменения применятся после обновления конфигурации базы данных и перезапуска клиента.

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

Шрифт в макете печатной формы

В табличном документе (макете) шрифт задаётся для ячейки или области:

  1. Откройте макет, выделите область.
  2. Откройте палитру свойств, найдите блок со шрифтом и выберите гарнитуру.
  3. Сформируйте печатную форму и посмотрите её в предварительном просмотре.

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

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

Особенности работы в веб-клиенте и тонком клиенте

В тонком клиенте шрифт берётся из Windows (или другой ОС) компьютера пользователя. Всё, что сказано выше, работает один к одному.

В веб-клиенте картина другая: 1С отдаёт в браузер имя гарнитуры, а браузер ищет её среди шрифтов системы клиентского компьютера. Загрузить шрифт «из базы» в браузер средствами конфигурации нельзя. Если шрифта нет на компьютере, браузер подставит соседний из семейства (например, любой шрифт без засечек).

КлиентОткуда берётся шрифтЧто делать
ТонкийИз ОС компьютераУстановить шрифт на каждый компьютер
ТолстыйИз ОС компьютераТо же
Веб-клиентИз ОС компьютера, на котором открыт браузерУстановить на каждый компьютер; браузер перезапустить
Терминальный сеансИз ОС терминального сервераУстановить на сервере, пользователям перезайти

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

Диагностика проблем с отображением и кодировкой

Если шрифт «не подхватился», пройдите по списку сверху вниз. Первые пункты дешевле последних.

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

Проверка, что шрифт видит система

Самый быстрый способ проверить в Windows: откройте любую программу, например Блокнот, и посмотрите, есть ли гарнитура в списке шрифтов. Если шрифта нет и там, 1С тоже его не увидит, искать причину надо на уровне операционной системы.

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

Частые ошибки и как их избежать

  • Ставят шрифт на свой компьютер, а печатная форма уходит контрагенту в PDF с другого компьютера. Для рассылки формируйте PDF у себя, где шрифт есть: в файл шрифт встроится, и получатель увидит то же самое.
  • Меняют шрифт у каждого элемента вручную. Через полгода никто не помнит, где какой. Используйте элемент стиля.
  • Выбирают экзотическую гарнитуру для форм, которые заполняет весь отдел. Любой сбой на одном компьютере превращается в звонок в поддержку.
  • Забывают про лицензию на шрифт, когда ставят его на десятки машин.

Как раздать шрифт на много компьютеров

Один-два компьютера настраивают вручную. Если рабочих мест больше десятка, ручная установка превращается в источник забытых машин.

Порядок для администратора:

  1. Положите файлы шрифтов в сетевую папку с доступом только на чтение.
  2. Подготовьте скрипт, который копирует файлы в системную папку шрифтов и регистрирует их. Запускайте его от имени администратора, например при входе в систему через групповую политику.
  3. Проверьте скрипт на одном тестовом компьютере: откройте 1С и убедитесь, что шрифт виден в конфигураторе и в форме.
  4. Только после этого запускайте на остальных.

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

Проверка после раздачи шрифта
Выполнено: 0 / 4

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

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

Можно ли хранить шрифт внутри информационной базы?
Нет. База хранит только имя гарнитуры. Файл шрифта нужно положить в операционную систему на каждом компьютере, где форма открывается.
Нужно ли перезагружать компьютер после установки шрифта?
Обычно достаточно закрыть и заново открыть 1С. Если шрифт всё равно не появился, завершите сеанс пользователя Windows и войдите снова.
Почему в веб-клиенте шрифт другой, чем в тонком?
Веб-клиент использует шрифты системы, где открыт браузер, и подставляет похожий, если нужного нет. Установите шрифт на этот компьютер и перезапустите браузер.
Как узнать точное имя гарнитуры для свойства?
Откройте файл шрифта двойным щелчком: в заголовке окна написано название. В Linux имя покажет fc-list. Используйте его в точности, как оно выведено.
Влияет ли новый шрифт на скорость работы 1С?
Практически нет. Обычный шрифт — небольшой файл, он загружается один раз при открытии формы.