我假设提取的以下路径的坐标仅与绘制该路径的“画布”相关。但是我如何才能获取此路径相对于整个页面的坐标?
\documentclass[varwidth]{standalone}
\usepackage{tikz}
\begin{document}
Hello \tikz\path[draw=red](0,0)--(2mm,0); world!
\end{document}
答案1
对于常规文档类别来说,这很简单。
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
Hello \begin{tikzpicture}[remember picture]
\path[draw=red](0,0)--(2mm,0) coordinate (x);
\path[overlay] let \p1=($(x)-(current page.south west)$) in \pgfextra{\typeout{x=\x1,y=\y1}};
\end{tikzpicture} world!
\end{document}
请注意,calc
这里不是绝对需要的,但在我看来可以简化事情。在此示例中,绝对页面坐标(相对于节点的西南锚点)current page
存储在和中\x1
,\y1
但可以用于任何您想要的用途。
对于独立使用来说,varwidth
这可能更困难,因为在绘制 tikz 图片时页面尺寸尚不清楚。根据您真正想要做的事情,可以找到解决方案,但绝对坐标在这里用处不大,您可能想了解它们。