TrimBox를 지오메트리의 레이아웃 영역으로 설정

TrimBox를 지오메트리의 레이아웃 영역으로 설정
\documentclass{article}
\usepackage{geometry}
\geometry{
  paperwidth=10cm
  , paperheight=10cm
  , layoutwidth=5cm
  , layoutheight=5cm
  , layouthoffset=25mm
  , layoutvoffset=25mm
  , includeheadfoot
  , showcrop
}
\usepackage[x-1a1]{pdfx}

\begin{document}
Lorem ipsum
\end{document}

위의 MWE를 컴파일하고 Acrobat과 같은 PDF 뷰어를 사용하여 PDF의 TrimBox를 보면 TrimBox가 패키지에서 생성된 자르기 표시와 정렬되지 않습니다 geometry. (아래 이미지 참조: 출력의 TrimBox는 녹색입니다. 분홍색 직사각형과 일치하여 적절하게 배치되어야 합니다.) TrimBox를 올바른 위치에 배치할 수 있도록 layoutto 의 치수와 오프셋을 어떻게 전달할 수 있습니까? pdfx그렇지 않으면 pdfx님의 TrimBox 위치를 덮어쓰시겠습니까? 저는 LuaTeX를 사용하고 있습니다.

TrimBox의 실제 위치와 원하는 위치

답변1

pdfx는 테두리가 25/20pt인 트림박스를 하드 코딩합니다. 재설정해야 합니다. pageattr 변수를 사용하는 다른 패키지가 간섭할 수 있다는 점에 유의하십시오(/MediaBox의 0.996264009963 값은 pdfx에서 가져옴).

\documentclass{article}
\usepackage{expl3}

\usepackage{geometry}
\geometry{
  paperwidth=10cm
  , paperheight=10cm
  , layoutwidth=5cm
  , layoutheight=5cm
  , layouthoffset=25mm
  , layoutvoffset=25mm
  , includeheadfoot
  , showcrop
}
\usepackage[x-1a1]{pdfx}

\ExplSyntaxOn\makeatletter
\tl_new:N\l_soli_trimbox_tl
\tl_set:Nx\l_soli_trimbox_tl 
 {
  \dim_to_decimal_in_bp:n{\Gm@layouthoffset}
  \c_space_tl
  \dim_to_decimal_in_bp:n{\Gm@layoutvoffset}
  \c_space_tl
  \dim_to_decimal_in_bp:n{\paperwidth - \Gm@layouthoffset}
  \c_space_tl
  \dim_to_decimal_in_bp:n{\paperheight - \Gm@layoutvoffset}
 }
\tl_new:N\l_soli_mediabox_tl
\tl_set:Nx \l_soli_mediabox_tl 
 {
  0
  \c_space_tl
  0
  \c_space_tl
  \dim_to_decimal_in_bp:n{0.996264009963\paperwidth}
  \c_space_tl
  \dim_to_decimal_in_bp:n{0.996264009963\paperheight}
 }

\edef\next
 {
  \pdfvariable~pagesattr
   {
     /MediaBox[\l_soli_mediabox_tl]
     /BleedBox[\l_soli_mediabox_tl]
     /CropBox[\l_soli_mediabox_tl]
     /TrimBox[\l_soli_trimbox_tl]
   }
  } 
 \next
\ExplSyntaxOff

\makeatother
\begin{document}
Lorem ipsum
\end{document}

관련 정보