ubuntu server 14.04 xvfb Японские символы в виде квадратов после обновления релиза

Почему японские шрифты вдруг перестали корректно отображаться? Очень сложная, сложная ситуация, когда-то эта стая работала, сломалась после обновления платформы, которое совпало с выпуском нового кода. Это может быть код, но этот код отлично работает на Mac или Ubuntu Desktop.

СРЕДА:

  • Обновлен Ubuntu 14.04 Server Headless (в Cloud Foundry: никаких привилегий sudo)
  • Генерация PDF с использованием Electron Chromium win.webContents.printToPDF
  • Электрон версии 1.6.2 (пробовал более новую 3.0.13)

Отсутствие Root в контейнере делает эту проблему / решение трудным. Отсутствие контроля или понимания исправления основных o / s дополнительно усугубляет неопределенную природу.

Мы разобрали пакет сборки узла Pivotal CF и реализовали нечто похожее на этот фрагмент кода на этапе компиляции пакета сборки (пример: https://github.com/heroku/heroku-buildpack-xvfb-google-chrome/blob/master/bin/compile), используя Aptfile в приложении, чтобы указать, какие пакеты установки apt-get будут установлены как локальный пользователь.

Этот пакет безумия работал нормально до прошлого месяца, когда японские символы перестали корректно отображаться. Одна потенциально важная вещь, которая изменилась, была тем, что хостинг-апгрейдеры обновили базовую версию для Ubuntu 14.04.

$ uname -a

ПЕРЕД магическим апгрейдом фей: Linux e4e7267c 4.4.0-75-generic #96~14.04.1-Ubuntu SMP Thu Apr 20 11:06:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

ПОСЛЕ злого апгрейда гремлинов: Linux c3fa6d0b 4.15.0-38-generic #41~16.04.1-Ubuntu SMP Wed Oct 10 20:16:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Как ни странно, ПОСЛЕ 16.04 показывает, что релиз еще верен: $ lsb_release -a

No LSB modules are available. 
Distributor ID: Ubuntu 
Description:    Ubuntu 14.04.5 LTS 
Release:    14.04 
Codename:   trusty

Что-то изменилось в зависимости от обновлений библиотек 14.04 -> 16.04? Изменил ли Xvfb порядок обработки шрифтов и поиска (X.org под капотом)?

Шрифты устанавливаются в локальную учетную запись пользователя как: $ ls -ltr app/.apt/usr/share/fonts/X11/

total 84
drwxr-xr-x 2 vcap vcap  4096 Jan  2 14:19 util
drwxr-xr-x 2 vcap vcap  4096 Jan  2 14:19 Type1
drwxr-xr-x 2 vcap vcap 20480 Jan  2 14:19 misc
-rw-r--r-- 1 vcap vcap     2 Jan  2 14:19 fonts.dir
drwxr-xr-x 3 vcap vcap  4096 Jan  2 14:19 encodings
drwxr-xr-x 2 vcap vcap  4096 Jan  2 14:19 cyrillic
drwxr-xr-x 2 vcap vcap 16384 Jan  2 14:19 75dpi
drwxr-xr-x 2 vcap vcap 16384 Jan  2 14:19 100dpi

Часть взлома, чтобы заставить это работать, включает использование sed для замены жестко запрограммированной ссылки на путь в Xvfb на путь к каталогу локального пользователя.

Возможно, эта функциональность изменилась в новой обновленной версии Xvfb.

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

0 ответов

Другие вопросы по тегам