所以,我有一个HTML格式的SVG文件,我听说过这种格式的一个事情就是它在放大时不会全部像素化。在html中调整SVG大小?
我知道一个JPEG或任何我可以它存储为50乘50图标,然后实际显示为(相当像素)100乘100缩略图(或10乘10),手动设置高度和image_src标签中的宽度。
但是,SVG文件似乎与object/embed标签一起使用,并且更改THOSE的高度或宽度只会导致为照片分配更多空间。
是否有任何方法可以指定您希望显示的SVG图像小于或大于实际存储在文件系统中?
所以,我有一个HTML格式的SVG文件,我听说过这种格式的一个事情就是它在放大时不会全部像素化。在html中调整SVG大小?
我知道一个JPEG或任何我可以它存储为50乘50图标,然后实际显示为(相当像素)100乘100缩略图(或10乘10),手动设置高度和image_src标签中的宽度。
但是,SVG文件似乎与object/embed标签一起使用,并且更改THOSE的高度或宽度只会导致为照片分配更多空间。
是否有任何方法可以指定您希望显示的SVG图像小于或大于实际存储在文件系统中?
用文本编辑器打开.svg
文件(这只是XML),并期待这样的事情在顶部:
<svg ... width="50px" height="50px"...
擦除width和height属性;默认值是100%,所以它应该延伸到容器允许的范围内。
尝试这些:
设置失踪视框,并在设定的高度的高度和宽度值填写,并在SVG标签高度属性
然后通过简单的缩放图片将高度和宽度设置为所需的百分比值值。祝你好运。
设置一个固定的宽高比preserveAspectRatio="X200Y200 meet
(例如200像素),但它没有必要
例如
<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"
width="10%"
height="10%"
preserveAspectRatio="x200Y200 meet"
viewBox="0 0 350 350"
id="svg2"
version="1.1"
inkscape:version="0.48.0 r9654"
sodipodi:docname="namesvg.svg">
可以通过在图像标记和尺寸图像标签即
<img width="200px" src="lion.svg"></img>
我认为使用的问题在于,您失去了
改变容器的宽度显示SVG调整其大小也修正它,而不是改变源文件的宽度和高度。
.SvgImage img{ width:80%; }
这修复我再上浆SVG的问题。你可以根据你的要求给出任何%。
这是获得使用svg.getBox()
界限的例子: https://gist.github.com/john-doherty/2ad94360771902b16f459f590b833d44
在你得到,你可以插入SVG正确设置视框号结束。然后在父div上使用任何css,就完成了。
// get all SVG objects in the DOM
var svgs = document.getElementsByTagName("svg");
var svg = svgs[0],
box = svg.getBBox(), // <- get the visual boundary required to view all children
viewBox = [box.x, box.y, box.width, box.height].join(" ");
// set viewable area based on value above
svg.setAttribute("viewBox", viewBox);
是的,这是正确的,但你也需要添加一个“视框”属性(如视框=“0 0 50 50”在你的50x50px例子),否则内容可能无法正确缩放(将依赖于容器尺寸)。 Scour会自动为你做这件事,http://www.codedread.com/scour/。 – 2010-06-27 12:54:05
Hooray!这有帮助!我已经在文件中有100%的东西,事实证明,但视图框是关键!谢谢你们俩! – Jenny 2010-06-27 15:28:20
如果对其他人不明显,'viewBox'区分大小写。另外,如果您裁剪图像,前两个坐标是左上角,第二个两个坐标是*缩放前的宽度和高度*。 – 2013-10-18 03:42:06