Пользовательский тайский язык Weasyprint с docker на сервере не может отображаться - PullRequest
0 голосов
/ 23 марта 2020

Я использую weasyprint для генерации PDF, и он работает на моем локальном прогоне (flask python). Мой пользовательский шрифт THSarabunNew

Here is my code to set font and generate pdf

, но когда я собираю его в контейнер docker и запускаю на AWS EC2, это рендеринг шрифта pdf, подобный этому

fallback font

У меня установлен DockerFile вот так

RUN apt-get -y install --reinstall locales locales-all

RUN sed -i 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen

RUN locale-gen en_US.UTF-8

ENV LANG en_US.UTF-8
ENV LANGUAGE en_US
ENV LC_ALL en_US.UTF-8

RUN set -e \
  && locale-gen en_US en_US.UTF-8 \
  && update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 

RUN curl -L -O https://www.f0nt.com/download/sipafonts/THSarabunNew.zip
RUN apt-get -y install unzip
RUN unzip THSarabunNew.zip
RUN mkdir -p ~/.local/share/fonts
RUN mv 'THSarabunNew.ttf' ~/.local/share/fonts/THSarabunNew.ttf
RUN mv 'THSarabunNew Bold.ttf' ~/.local/share/fonts/THSarabunNew-Bold.ttf
RUN mv 'THSarabunNew BoldItalic.ttf' ~/.local/share/fonts/THSarabunNew-BoldItalic.ttf
RUN mv 'THSarabunNew Italic.ttf' ~/.local/share/fonts/THSarabunNew-Italic.ttf
RUN rm THSarabunNew.zip

Есть идеи, что я делаю не так?

...