기본 TexLive 설치를 사용하는 LuaLaTex 및 pst-바코드에서 "잘못된 글꼴" 오류

기본 TexLive 설치를 사용하는 LuaLaTex 및 pst-바코드에서 "잘못된 글꼴" 오류

클라우드 비용을 최소화하기 위해 Docker 컨테이너에 대해 최소한의 TexLive 설치를 시도하고 있습니다. 내 웹 앱은 UPC 코드를 사용하여 제품 패키지 라벨을 생성합니다. 내 Docker 컨테이너에서 UPC 코드를 생성하는 동안 "invalidfont" 오류가 발생합니다. 나는 이것이 내 로컬 전체 LaTex 설치를 사용하여 완벽하게 컴파일되기 때문에 누락된 패키지 종속성으로 인해 발생하는 문제라고 확신합니다. 내가 놓칠 수 있는 것에 대한 아이디어가 있나요? 아니면 내 컨테이너에만 설치할 수 있도록 TEX 파일을 성공적으로 컴파일하는 데 사용된 패키지가 정확히 무엇인지 알아낼 수 있는 방법이 있습니까?

이것은 내 Dockerfile의 최소 설치 스크립트입니다. 최소 설치("scheme-basic") 외에도 tlmgr을 사용하여 글꼴 사양, pst-barcode, pstricks, xcolor, xkeyval, pgf, luapstricks, pst-tools, marginnote 및 Phonetic을 설치하고 있음을 알 수 있습니다.

# Use the most up-to-date version of Ubuntu LTS
FROM ubuntu:22.04

# Install necessary system utilities
RUN apt-get update && \
    apt-get install --no-install-recommends -y \
        wget \
        perl \
        python3 python3-pip python3-dev python3-venv \
        fontconfig \
        ghostscript && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

# Download and install TeX Live
RUN wget https://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz && \
    tar -xzf install-tl-unx.tar.gz && \
    cd install-tl-* && \
    echo "selected_scheme scheme-basic" > texlive.profile && \
    ./install-tl -profile texlive.profile && \
    cd .. && \
    rm -rf install-tl* install-tl-unx.tar.gz

# Set the PATH to include the TeX Live binaries
ENV PATH="/usr/local/texlive/2024/bin/aarch64-linux:${PATH}"

# Install missing LaTex packages
RUN tlmgr update --self --all
RUN tlmgr install fontspec pst-barcode pstricks xcolor xkeyval pgf luapstricks pst-tools marginnote phonetic

# Set the working directory to root's home directory
WORKDIR /root

# Copy the fonts and images directories and TEX file
COPY fonts /root/fonts
COPY img /root/img
COPY label.tex /root/label.tex

# Move and cache fonts
RUN mkdir -p /usr/share/fonts/custom && \
    cp /root/fonts/*.otf /usr/share/fonts/custom/ && \
    fc-cache -fv
RUN ls -la /usr/share/fonts/custom
RUN fc-list

# Expose the port the app runs on
ENV PORT 8080
ENV HOST 0.0.0.0
EXPOSE 8080

# Use the virtual environment's Python as the default
ENV PATH="/root/venv/bin:$PATH"

# Define the command to run the app
CMD ["lualatex", "label.tex"]

이것은 내 label.tex 파일입니다. 의 인스턴스가 3개 있지만 psbarcode포함된 첫 번째 인스턴스에서만 tikzpicture오류가 발생하는 것을 볼 수 있습니다 .

\documentclass{article}
\usepackage{fontspec}

\setlength\parindent{0pt}
\usepackage{pst-barcode}
\usepackage{phonetic}
\usepackage{geometry}
\usepackage{graphicx}
\usepackage{tikz}
\geometry{paperwidth=4in, paperheight=2in, top=-0.5in, bottom=0.125in, left=0.125in, right=0.125in}

\renewcommand{\textsuperscript}[1]{\raisebox{0.8ex}{\scalebox{0.66}{#1}}}

\begin{document}

\fontsize{7pt}{8pt}\selectfont
\textbf{Company{\sffamily\textregistered} Product\\
Designed by Company\\
Assembled in USA\\
Model MP1
}

\begin{figure}
\begin{tikzpicture}[overlay, remember picture]
\node[xshift=-1.5in,yshift=-0.45in] at (current page.north east) {\psbarcode{196852002825}{includetext width=1.3 height=0.35 textsize=9 textyoffset=-2 textxoffset=-6}{upca}};
\end{tikzpicture}
\end{figure}

\vspace{0.075in}

\textbf{(A) Serial No. A12345678\\
}
\begin{pspicture}(0,0.35in)
\psbarcode{A12345678}{width=0.31 height=0.31}{qrcode}
\end{pspicture}

\vspace{0.075in}

\textbf{(B) Serial No. B12345678\\
}
\begin{pspicture}(0,0.35in)
\psbarcode{B12345678}{width=0.31 height=0.31}{qrcode}
\end{pspicture}

\vfill
\mbox{}\hfill \textbf{\textcopyright 2024 Company All rights reserved.}


\end{document}

이것은 내 오류입니다.

[1 ! luapstricks: "./labe l-docker.tex:29"에서 PS 코드를 실행하는 동안 "invalidfont" 오류가 발생했습니다. ...not:N \tex_shipout:D
\box_use:N \l_shipout_box
_shipout_drop_firstpage...

l.60 \end{문서}
? ! 비상 정지. ...not:N \tex_shipout:D \box_use:N \l_shipout_box
_shipout_drop_firstpage...

l.60 \end{문서}. 5544 워드의 노드 메모리가 아직 사용 중입니다: 80 hlist, 14 vlist, 1 rule, 14 disc, 10 local_par, 1 dir, 182 Glue, 41.
kern, 43 페널티, 271 glyph, 90 attribute, 57 Glue_spec, 90. attribute_list, 임시 1개, if_stack 2개, 쓰기 4개, save_pos 2개, late_lua 18개,
pdf_literal 34개, pdf_colorstack 노드 14개 사용 가능 목록: 2:3,5:2,10:4
! ==> 치명적인 오류가 발생하여 출력 PDF 파일이 생성되지 않았습니다!

관련 정보