use*_*976 37 html png pdf markdown pandoc
我正在尝试使用带有 pandoc 的 markdown 将单个文档转换为 html、pdf 和 docx。这是一个非常简单的文档,只包含无数学运算的文本和一些图像。图像为 PNG 格式。我在降价源中包含了一个使用此图像的图像:
<div style="float:center" markdown="1">

</div>
Run Code Online (Sandbox Code Playgroud)
并将其编译为:
# html
pandoc myarticle.md -c mystyle.css -o myarticle.html
# pdf
pandoc myarticle.md -V geometry:margin=1in -o myarticle.pdf
# docx
pandoc myarticle.md -o myarticle.docx
Run Code Online (Sandbox Code Playgroud)
我注意到一些具有相同尺寸的PNG 图像在 HTML 和 PDF 格式中的大小不同。一个 250x256 像素、低分辨率 (72 像素/英寸) 的 PNG 将在 PDF 中大致显示为页面上的正确尺寸,并在 html 中以合理的尺寸显示,但具有相同尺寸 (250x256 像素) 但高分辨率(300 像素/英寸)在 PDF 输出的页面上被调整为很小。我想保留一组我指定大小的 PNG 图像,并让它们以 HTML/PDF/DOCX 格式显示在该大小。
我愿意放弃自动 docx 支持(或之后处理大量手动格式)只是为了拥有 PDF/HTML。
如何告诉 pandoc 不要为 PDF 或图像调整 PNG 的大小,并让它们出现在正确的图像中?谢谢。
Blo*_*yEl 40
尺寸转换为像素,以类似 HTML 的格式输出。使用 --dpi 选项指定每英寸的像素数。默认值为 96dpi。
找到图片中最常见的元素并使用它。只修改例外。
如上所述添加 --dpi 选项以覆盖默认值。
例如,您将该行更改为:
{ width=250px }
Run Code Online (Sandbox Code Playgroud)
或者
{ height=256px }
Run Code Online (Sandbox Code Playgroud)
或者在直接的 HTML 标记中执行此操作:
<img src="./figures/myimage.png" alt="my caption" style="width: 250px;"/>
Run Code Online (Sandbox Code Playgroud)
或者
<img src="./figures/myimage.png" alt="my caption" style="height: 256px;"/>
Run Code Online (Sandbox Code Playgroud)
并且比例将是正确的。
对于 HTML 和 EPUB,除宽度和高度(但包括 srcset 和尺寸)之外的所有属性都按原样传递。其他编写器忽略其输出格式不支持的属性。
图像的宽度和高度属性被特殊处理。当不带单位使用时,单位假定为像素。但是,可以使用以下任何单位标识符:px、cm、mm、in、inch 和 %。
尺寸转换为英寸,以便以 LaTeX 等基于页面的格式输出。尺寸转换为像素,以类似 HTML 的格式输出。使用 --dpi 选项指定每英寸的像素数。默认值为 96dpi。
% 单位通常与一些可用空间有关。例如,上面的示例将呈现为
<img href="file.jpg" style="width: 50%;" />(HTML)、\includegraphics[width=0.5\textwidth]{file.jpg} (LaTeX), or \externalfigure[file.jpg][width=0.5\textwidth](ConTeXt)。某些输出格式具有类 (ConTeXt) 或唯一标识符 (LaTeX \caption) 或两者 (HTML) 的概念。
当没有指定宽度或高度属性时,回退是查看图像分辨率和嵌入在图像文件中的 dpi 元数据。
| 归档时间: |
|
| 查看次数: |
34124 次 |
| 最近记录: |