IronPDF w kontenerach Windows Server Core
IronPDF potrzebuje systemowych czcionek, aby prawidłowo renderować zawartość. Windows Server Core 2019 i 2022 dostarczają prawie nic, głównie tylko Lucon, co nie wystarczy do poprawnego wyjścia PDF. Naprawą jest zainstalowanie potrzebnych czcionek, takich jak Arial, bezpośrednio w obrazie kontenera.
Rozwiązanie
Dodaj czcionkę do katalogu czcionek systemowych i zarejestruj ją, aby renderer mógł ją znaleźć. Plik Dockerfile poniżej kopiuje arial.ttf na miejsce i zapisuje odpowiedni wpis rejestru:
FROM mcr.microsoft.com/dotnet/sdk:8.0-windowsservercore-ltsc2022 as base
USER ContainerAdministrator
WORKDIR C:/
COPY arial.ttf c:/windows/fonts/arial.ttf
RUN powershell.exe -NoProfile -Command New-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts' -Name 'Arial (TrueType)' -PropertyType String -Value arial.ttf
Każda linia zasłużyła na swoje miejsce:
USER ContainerAdministrator: udziela uprawnień potrzebnych do modyfikacji rejestru systemowego i instalacji czcionek.COPY arial.ttf c:/windows/fonts/arial.ttf: umieszcza plik czcionki Arial w katalogu czcionek systemu.New-ItemProperty: rejestruje Arial, aby system mógł ją rozpoznać i użyć podczas renderowania PDF.
Powtórz parę COPY i RUN dla każdej czcionki, na której polegają twoje dokumenty.

