IRONSOFTWAREHOME

Uszkodzona czcionka na AWS Lambda

Curtis Chau
Curtis Chau
Updated: 22 kwietnia 2026

Renderowanie dokumentu PDF w Linuxie może skutkowac uszkodzonymi znakami, jak pokazano na poniższym obrazie. Czasami znaki wydaja sie prawidłowo renderować w środowisku Windows, ale nie w Linux.

Uszkodzony znak

Powod

Powodem jest brak czcionki w systemie operacyjnym.

Rozwiązania

Jeśli znasz juz nazwe czcionki, to świetnie—możesz pominac krok 1.

  1. Aby znalezc nazwe czcionki, sproboj renderować HTML na Windows i uzyj Adobe do zbadania znakow.
  2. Po zidentyfikowaniu nazwy czcionki możesz pobrac plik czcionki online, na przykład z Google Fonts.
  3. Aby dodac i zainstalować czcionke przez Dockerfile, umiesc czcionke w projekcie i ustaw 'Kopiuj do katalogu wyjsciowego' na 'Kopiuj zawsze.' Następnie uzyj poniższego kodu, aby dodac i zainstalować ja w 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
Text

Wyjaśnienie

  • COPY cambria.ttc /usr/share/fonts/: Ta linia kopiuje czcionke Cambria Math z katalogu projektu do katalogu czcionek w kontenerze. Upewnij się, że plik czcionki (cambria.ttc) jest obecny w katalogu projektu.

  • **RUN dnf install -y fontconfig && **: Ta komenda instaluje pakiet fontconfig, który jest niezbędny do zarządzania i konfiguracji dostępu do czcionek w Linux. Flaga -y automatycznie potwierdza instalację pakietu.

  • fc-cache -fv: To polecenie aktualizuje pamięć podreczna czcionek, zapewniając, ze nowo skopiowane czcionki sa dostępne dla aplikacji w kontenerze. Flagi -f (force) i -v (verbose) używane są by wymusić ponowną generację pamięci podręcznej i zapewnić szczegółowe wyjście odpowiednio.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

...
Czytaj więcej

Gotowy, aby rozpocząć?

Nuget Downloads 20,667,543Wersja:2026.7właśnie wydany

Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
Biblioteka C# NuGet dla plików PDF
Zainstaluj za pomocą NuGet

Wersja: 2026.7

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. W Eksploratorze Rozwiązań, kliknij prawym przyciskiem Myszy na Odwołania, Zarządzaj pakietami NuGet
  2. Wybierz opcję Przeglądaj i wyszukaj „IronPdf”
  3. Wybierz pakiet i zainstaluj
DLL PDF dla C#
Pobierz DLL

Wersja: 2026.7

Pobierz teraz

lub pobierz instalator Windows tutaj.

  1. Pobierz i rozpakuj IronPDF do lokalizacji takiej jak ~/Libs w katalogu Solution
  2. W Eksploratorze rozwiązań programu Visual Studio kliknij prawym przyciskiem myszy opcję Odwołania. Wybierz opcję Przeglądaj, „IronPdf.dll”

Licencje od 749 USD

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta