[英]knitr, pandoc: embeding SVG directly to HTML document
我正在使用knitr自动生成报告到mediawiki页面。 报告输出通过pandoc以HTML格式显示 。 但我在将数据上传到维基站点时遇到问题。 所以我想我会使用SVG设备并将代码包含在最终文档中,而不是依赖于外部文档。 但是我无法使用knitr或pandoc来做这件事。 有没有人知道创建嵌入式SVG而不是链接到图像的pandoc或knitr选项? 甚至一个小的外壳脚本,取代<img src="myFigure.svg">
用的内容myFigure.svg
。
我最终使用一个简单的python脚本来完成这项工作
from sys import argv
import re
import os
def svgreplace(match):
"replace match with the content of a filename match"
filename = match.group(1)
with open(filename) as f:
return f.read()
def svgfy(string):
img = re.compile(r'<img src="([^"]*\.svg)"[^>]*>')
return img.sub(svgreplace, string)
if __name__ == "__main__":
fname = argv[1]
with open(fname) as f:
html = f.read()
out_fname = fname + ".tmp"
out = open(out_fname, 'w')
out.write(svgfy(html))
out.close()
os.rename(out_fname, fname)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.