无法使用 pylatex 放置图像

Failing to place an image with pylatex

我正在使用 pylatex 在我指定的坐标处创建一个包含图像的 pdf。我使用了下面的代码,但无论我输入什么坐标,图像总是在左上角。请帮助我。

from pylatex import (Document, TikZ, 
                 TikZNode, TikZCoordinate, 
                 TikZOptions, StandAloneGraphic,  NoEscape)
       
geometry_options = {"margin": "0cm"}
doc = Document(documentclass='standalone',document_options=('tikz'), geometry_options=geometry_options)

doc.append(NoEscape(r'\noindent'))
    
with doc.create(TikZ()) as pic:
    
# img = TikZNode(text='\includegraphics[width=0.8\textwidth]{example-image-a}',
#                         at = TikZCoordinate(3,4),
#                         options=TikZOptions('inner sep=0pt,anchor=south west'))

img = TikZNode(text=StandAloneGraphic('example-image-a').dumps(),
                at = TikZCoordinate(1,2),
                options=TikZOptions('inner sep=0pt')
                )

pic.append(img)

tex = doc.dumps()

doc.generate_pdf('basic',compiler='lualatex', clean_tex=False)
doc.generate_tex()

文本代码:

\documentclass[tikz]{standalone}%
\usepackage[T1]{fontenc}%
\usepackage[utf8]{inputenc}%
\usepackage{lmodern}%
\usepackage{textcomp}%
\usepackage{lastpage}%
\usepackage{geometry}%
\geometry{margin=0cm}%
\usepackage{tikz}%
%
%
%
\begin{document}%
\normalsize%
\noindent%
\begin{tikzpicture}%
\node[inner sep=0pt] at (1.0,2.0) {\includegraphics[width=0.8\textwidth]{example-image-a}};%
\end{tikzpicture}%
\end{document}

在我看来,这与 post 中的代码非常相似: https://tex.stackexchange.com/questions/9559/drawing-on-an-image-with-tikz

tikz图片的大小会根据内容进行调整,一般放在页面的任何地方,就像写一封普通的信一样。

如果您在图片中添加另一个更大的元素,就会看到这一点。如果您现在调整节点的坐标,您会看到图像在四处移动。

通常您也可以使用 [remember picture, overlay] 选项相对于纸张定位节点,但您使用的是 standalone class,它将自动调整纸张大小以适应内容,所以在你的情况下这没有帮助。

\documentclass[tikz]{standalone}%
\usepackage[T1]{fontenc}%
\usepackage[utf8]{inputenc}%
\usepackage{lmodern}%
\usepackage{textcomp}%
\usepackage{lastpage}%
%\usepackage{geometry}%
%\geometry{margin=0cm}%
\usepackage{tikz}%
%
%
%
\begin{document}%
\normalsize%
\noindent%
\begin{tikzpicture}%
\path (-20,-20) rectangle (20,20);
\node[inner sep=0pt] at (3.0,2.0) {\includegraphics[width=0.8\textwidth]{example-image-a}};%
\end{tikzpicture}%
\end{document}