将 html 文件中的 webgl 图片包含到 latex 中

将 html 文件中的 webgl 图片包含到 latex 中

我有这张图片,它包含在一个 html 页面中(见下文,您可以下载代码并在浏览器中打开图片)。据我所知,该图片是通过 html 文件内的 webgl 代码生成的(我对这一切知之甚少,即使我确实使用带有 html 输出选项的 asymptote 程序自己生成了图片)。

我想将其包含在要打印的 pdflatex 文档中。因此,我不需要在 latex 文档中提供指向 html 文件的链接,但我希望最终的 pdf 中已插入图片,并且图片清晰可见,就像任何其他 pdf 图片一样。

是否有可能做到这一点,也许使用 hyperref 包?

谢谢 Maurizio

带有 webgl 代码的 html 将包含在 latex doc 中

答案1

你可以同时拥有点击即可打开的交互式 3D 内容为不支持 PRC 的打印和 PDF 查看器提供精美渲染的矢量图像。为此,添加

import three;
settings.render = 0;

在代码顶部asy

example.tex使用以下方式编译

pdflatex example
asy example-1.asy
pdflatex example

在此处输入图片描述

输入example.tex

\documentclass[varwidth,border=3pt]{standalone}

\usepackage{hyperref,calc}
\usepackage[inline]{asymptote}

\setlength{\textwidth}{\widthof{\begin{NoHyper}\url{https://asymptote.sourceforge.io/gallery/3Dwebgl}\end{NoHyper}}}

\begin{document}

Example \verb+cylinder.asy+, taken from\\
\url{https://asymptote.sourceforge.io/gallery/3Dwebgl} 

\begin{center}
\begin{asy}
import three;
settings.render = 0;

size(0,100);
import solids;
currentlight=Viewport;

triple v=O;
real r=1;
real h=1.5;
triple axis=Y+Z;

// Optimized cylinder
surface cylinder=shift(v)*align(unit(axis))*scale(r,r,h)*unitcylinder;
draw(cylinder,green,render(merge=true));

// Skeleton
revolution r=cylinder(v,r,h,axis);
//draw(surface(r),green,render(merge=true));
draw(r,blue+0.15mm);
\end{asy}
\end{center}

\end{document}

如果您只想要用作非活动 3D 内容海报图像的矢量图像作为独立文件,请asy使用选项-k(保留文件)运行并查找example-1+0_0.pdf。可以使用以下方式将此文件包含在其他文档中\includegraphics

asy -k example-1.asy

相关内容