我有一个完全基于矢量的网页(文本,图标字体,SVG,但没有PNG,JPEG或GIF)。
有什么方法可以获取该网页的矢量屏幕快照并将其另存为可完全缩放的SVG文件?
(以便我可以在普通PC上截取屏幕截图,并使其在视网膜上看起来不错)
这应该是可能的,但我找不到能做到的任何事情。
额外的功劳:如果它有一些位图图像,我想要一个带有嵌入式位图的SVG。
<img>
。(用于网络应用程序的帮助/游览页面)
我有一个完全基于矢量的网页(文本,图标字体,SVG,但没有PNG,JPEG或GIF)。
有什么方法可以获取该网页的矢量屏幕快照并将其另存为可完全缩放的SVG文件?
(以便我可以在普通PC上截取屏幕截图,并使其在视网膜上看起来不错)
这应该是可能的,但我找不到能做到的任何事情。
额外的功劳:如果它有一些位图图像,我想要一个带有嵌入式位图的SVG。
<img>
。(用于网络应用程序的帮助/游览页面)
Answers:
CSSBox WebVector会将HTML页面转换为SVG。这是一个Java命令行应用程序,您可以在此处查看其输出示例。
已在Chrome中捕获大型网页屏幕截图中对此进行了回答
我将使用CutyCapt它将webkit的渲染捕获到图像。
CutyCapt是一个小的跨平台命令行实用程序,用于将WebKit的网页呈现捕获为各种矢量和位图格式,包括SVG,PDF,PS,PNG,JPEG,TIFF,GIF和BMP。有关基于Internet Explorer的类似工具,请参见IECapt。
sudo apt install cutycapt
我需要做的所有尝试。延迟几秒钟(--delay=3000
),甚至可以渲染mathjax !!!
一种方法:如果您获取光栅屏幕快照(PNG,JPG等),则可以使用Inkscape中的“跟踪位图”将屏幕快照中某些相关颜色的字段“转换”为矢量对象。我确定Adobe Illustrator中有一个等效的工具。请注意指定要跟踪多少种单独的颜色-生成的矢量文件可能会迅速变得复杂。每种颜色都是一个单独的矢量对象,该矢量对象与其他颜色对象重叠以表示原始栅格图像,因此您可能需要进行一些清理。
这可能对您有帮助。Firefox有一个很棒的插件,称为另存为PDF,它使用https://pdfcrowd.com/中的工具。对于最终的SVG输出,我将使用一种在线工具转换为SVG。