luamplib/lualatex를 사용한 메타포스트 수치의 절대 페이지 좌표

luamplib/lualatex를 사용한 메타포스트 수치의 절대 페이지 좌표

PDF 페이지가 그래프 용지인 것처럼 메타포스트 그림 요소(lualatex에서 luamplib 사용)를 어떻게 그리거나 배치할 수 있습니까? 그러면 원점이 있습니다: (xorigin, yorigin), 그리고 모든 요소는 원점을 기준으로 배치되거나 서로를 기준으로 배치됩니다. 예를 들어 (3,4)에 직경 2의 원을 배치합니다. 여기서 (3,4)는 페이지 원본의 절대 위치입니다(xorigin=0pt,yorigin=0pt는 페이지의 왼쪽 상단을 의미함). 또한 숫자 2,3,4는 pt/cm/inch 단위의 scale/xscale/yscale로 크기가 조정됩니다. 나는 tikz로 이 작업을 수행하는 것이 가능하다는 것을 알고 있지만 메타포스트에서 이 작업을 수행하는 방법에 대해 자세히 설명하는 게시물을 본 적이 없습니다(metapost/luamplib 매뉴얼은 원본 및 절대 페이지 배치에 대해 많이 다루지 않습니다). 나는 사용해 보았다.텍스트포스, 원의 상단/왼쪽에 레이블을 추가하면 원의 중심이 pdf 페이지의 (xorigin+3*xscale,yorigin+4*yscale)에서 멀어지는 것처럼 실제 솔루션은 아닙니다. 원의 중심을 textpos의 앵커 포인트에 고정하는 대신 그림의 왼쪽/상단 경계를 textpos의 앵커 포인트에 정렬하려고 하기 때문입니다. 그리고 나중에 수치가 바뀌면 수동으로 조정하는 것은 악몽이 될 것입니다. 솔루션은 페이지의 절대/상대 위치에 모든 그림 요소를 배치하는 체계적인 방법을 제공/시연합니다.

예를 들어 보다 공식적인 사양: 예를 들어 PDF 페이지의 절대 위치에 원을 배치한 후: (xorigin+X*xscale,yorigin+Y*yscale) 직경은 D*xscale 또는 D*yscale입니다. 또한 이 원을 기준으로 레이블과 같은 다른 요소를 (Xoff*xscale,Yoff*yscale) 오프셋에 배치하고 싶습니다. 항상 X/Y/D/Xoff/Yoff만 지정하거나 승수 *(x|y)scales를 사용하여 덜 바람직하지만 여전히 허용 가능합니다.

다음은 간단한 그림 + 코드입니다.

예시 메타포스트 그림

% Command: >> lualatex abspicture.tex
\documentclass{article}
\usepackage[paper=letterpaper,left=0in,right=0in,top=0in,bottom=0in]{geometry}
\usepackage{luamplib}


\begin{document}
\thispagestyle{empty}

\begin{mplibcode}
beginfig(1)
u=50;
draw fullcircle scaled u;
pickup pencircle scaled 2;
draw (u/2,0); draw(0,u/2); draw(-u/2,0); draw(0,-u/2);
label.rt(btex $\theta = 0$ etex scaled .5, (u/2,0));
label.top(btex $\theta = \displaystyle{\frac{\pi}{2}}$ etex scaled .5, (0,u/2));
label.lft(btex $\theta = \pi$ etex scaled .5, (-u/2,0));
label.bot(btex $\theta =\displaystyle{\frac{3\pi}{2}}$ etex scaled .5, (0,-u/2));
endfig;
end;

\end{mplibcode}

\end{document}

관련 정보