Police endommagée sur AWS Lambda

This article was translated from English: Does it need improvement?
Translated
View the article in English

L'affichage d'un document PDF sous Linux peut entraîner l'apparition de caractères corrompus, comme le montre l'image ci-dessous. Il arrive parfois que les caractères s'affichent correctement sous Windows, mais pas sous Linux.

Caractère incorrect

Raison

La raison est que la police est absente du système d'exploitation.

Solutions

Si vous connaissez déjà le nom de la police, c'est parfait : vous pouvez passer l'étape 1.

  1. Pour trouver le nom de la police, essayez d'afficher le code HTML sous Windows et utilisez Adobe pour inspecter les caractères.
  2. Une fois le nom de la police identifié, vous pouvez télécharger le fichier de police en ligne, par exemple sur Google Fonts.
  3. Pour ajouter et installer la police via le fichier Dockerfile, placez la police dans le projet et réglez " Copier dans le répertoire de sortie " sur " Toujours copier ". Ensuite, utilisez le code suivant pour l'ajouter et l'installer dans le fichier Dockerfile :
# Copy the Cambria Math font into the container
# Ensure the font file (cambria.ttc) exists in your project directory
COPY cambria.ttc /usr/share/fonts/

# Install fontconfig to update the font cache
# This will install fontconfig and refresh the font cache to recognize the newly added fonts
RUN dnf install -y fontconfig && \
    fc-cache -fv

Explication

  • COPY cambria.ttc /usr/share/fonts/ : cette ligne copie la police Cambria Math depuis le répertoire de votre projet vers le répertoire des polices du conteneur. Assurez-vous que le fichier de polices (cambria.ttc) se trouve bien dans le répertoire du projet.

  • RUN dnf install -y fontconfig && \: Cette commande installe le paquet fontconfig, nécessaire à la gestion et à la configuration de l'accès aux polices sous Linux. Le drapeau -y confirme automatiquement l'installation du package.

  • fc-cache -fv : cette commande met à jour le cache des polices, garantissant que les polices nouvellement copiées sont disponibles pour les applications au sein du conteneur. Les indicateurs -f (force) et -v (verbose) sont utilisés respectivement pour forcer la régénération du cache et fournir un résultat détaillé.
Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 19,014,616 | Version : 2026.5 just released
Still Scrolling Icon

Vous faites encore défiler ?

Vous voulez une preuve rapidement ? PM > Install-Package IronPdf
exécuter un échantillon Regardez votre code HTML se transformer en PDF.