如何單獨更改SVG圖像的寬度/高度,以更改寬高比?我希望這樣做的SVG是<img>
元素。如何拉伸SVG圖像?
1
A
回答
0
感謝@DeepthiS我決定創建自己的解決這個問題,我創建了以下代碼(我也將在GitHub上提供)將具有自定義屬性的所有<img>
元素轉換爲內聯<svg>
具有屬性preserveAspectRatio="none"
的元素
$('[magnitude]').each(function(){
var el=this;
$.get(el.src, function(doc){
var svg = $(doc).find("svg").attr(inheritedAttributes());
$(svg).attr(inheritedAttributes(el))
console.log(inheritedAttributes(el))
$(el).replaceWith(svg);
}, "xml");
});
function inheritedAttributes(el){
ob = new Object();
//Inherited Attributes
ob.id = $(el).attr("id");
ob.source = $(el).attr("src");
ob.magnitude = $(el).attr("magnitude");
ob.width = $(el).attr("width");
ob.height = $(el).attr("height");
//Special Attributes for Magnitude functionality
ob.preserveAspectRatio = "none"
return ob
};
(請注意:由於使用AJAX,Chrome無法運行。我很樂意提供任何解決此問題的建議。)
2
SVG文件應有preserveAspectRatio設置爲「無」
您可以參考此Plunker:。http://plnkr.co/edit/9FmjYPetNOrRT1aPTewn?p=preview
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="612px" height="502.174px" viewBox="0 65.326 612 502.174" enable-background="new 0 65.326 612 502.174"
xml:space="preserve" preserveAspectRatio="none">
</svg>
+0
有沒有辦法在不改變SVG文件本身的情況下做同樣的事情?我希望能夠使用Illustrator中的文件完成此操作。 –
相關問題
- 1. SVG:伸展圖像
- 2. Supersized - 如何拉伸圖像?
- 3. 如何拉伸圖像
- 4. 拉伸圖像
- 5. 拉伸圖像
- 6. ResponsiveSlides.js拉伸圖像
- 7. 拉伸圖像CSS?
- 8. 圖像被拉伸
- 9. 圖像被拉伸
- 10. 如何根據右側拉伸圖像?
- 11. 如何在Matlab中拉伸圖像
- 12. 如何用CSS拉伸圖像?
- 13. 如何在Firemonkey中拉伸圖像?
- 14. 如何保存拉伸的圖像?
- 15. 如何在ImageView中拉伸圖像?
- 16. 你如何拉伸背景圖像
- 17. SVG標誌拉伸問題
- 18. 拉伸並旋轉SVG圖像的特定部分
- 19. 拉伸iOS背景圖像
- 20. 圖像拉伸並居中?
- 21. Overwide網頁,圖像拉伸?
- 22. 圖像拉伸在ios
- 23. UISegmentedControl中的拉伸圖像
- 24. UINavBar拉伸圖像邊緣
- 25. 圖像不拉伸imageView android
- 26. 按鈕圖像拉伸
- 27. 拉伸圖像高度css
- 28. iPhone:拉伸梯度圖像
- 29. 背景圖像拉伸
- 30. 在Java中拉伸圖像
或設置類並向其添加樣式(以%或px表示)。 –