这是我要使用SVG的简单测试-图像注释:
mkdir /tmp/test
cd /tmp/test
# grab an image from unsplash, 4100 px in width
wget "https://unsplash.com/photos/kSvpTrfhaiU/download?force=true&w=4100" -O unsplash_kSvpTrfhaiU.jpg
# open this image with Inkscape, have it as linked (not embedded) image, add annotations, save as unsplash_kSvpTrfhaiU.svg
inkscape unsplash_kSvpTrfhaiU.jpg
对,所以我在这里粘贴生成的.svg的代码:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="svg2"
width="4100"
height="3075"
viewBox="0 0 4100 3075"
sodipodi:docname="unsplash_kSvpTrfhaiU.svg"
inkscape:version="1.0.1 (1.0.1+r73)">
<metadata
id="metadata8">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs6" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1366"
inkscape:window-height="740"
id="namedview4"
showgrid="false"
inkscape:zoom="0.19284553"
inkscape:cx="2039.629"
inkscape:cy="1330.0801"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="layer1" />
<g
inkscape:groupmode="layer"
inkscape:label="Image"
id="g10"
sodipodi:insensitive="true">
<image
sodipodi:absref="/tmp/test/unsplash_kSvpTrfhaiU.jpg"
xlink:href="unsplash_kSvpTrfhaiU.jpg"
id="image12"
preserveAspectRatio="none"
height="3075"
width="4100" />
</g>
<g
inkscape:groupmode="layer"
id="layer1"
inkscape:label="annot">
<path
style="fill:#ff0000;fill-opacity:0.254573;stroke:#000000;stroke-width:16;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 29.740335,503.75775 363.73603,38.774206 3583.9418,25.941492 4063.2405,503.75775 2187.6326,810.27606 v 197.63004 l 260.7943,438.302 -220.7943,359.1655 h -296.8699 l -254.9643,-359.1655 273.6888,-438.302 V 810.27606 Z"
id="path838"
sodipodi:nodetypes="ccccccccccccc" />
</g>
</svg>
正确-这就是.svg在Inkscape中的样子:
如果我在eog
(侏儒之眼)之类的图像查看器中打开它,一切看起来都很好:
但是,如果我直接在浏览器中打开.svg(这就是我所说的“独立”的意思-.svg不是从.html页面加载的,而是直接加载的;我的意思不是“自包含”的),因为此.svg不是“独立的”,因为它链接并且未嵌入照片图像数据)-它以其官方像素大小打开,因此只能看到一小部分:
然后,我必须使用Ctrl-鼠标滚轮在浏览器中缩放.svg图像,以使其完整显示:
所以,这是我的问题-有什么方法可以直接加载“独立” .svg(即,无需通过单独的.html页面进行处理),以便在加载时在浏览器中加载时,浏览器中的初始视图为“全尺寸”,即.svg的整体;即-与屏幕快照4中的相同?
也许我可以向SVG本身添加一些指令?或者在浏览器中使用一些查询字符串来调用它,例如file:///tmp/test/unsplash_kSvpTrfhaiU.svg?scale=full
?