目前正在構建基於瀏覽器的SVG應用程序。在這個應用程序中,用戶可以對各種形狀進行樣式化和定位,包括矩形。你可以控制如何繪製一個SVG的筆畫寬度?
當我施加stroke-width
到的SVG rect
元件說1px
,衝程被施加到rect
的偏移和插圖中通過不同的瀏覽器不同的方式。這很麻煩,尤其是當我嘗試計算一個矩形的外部寬度和視覺位置並將其放置在其他元素旁邊時。
例如:
- 火狐添加1px的邊界(下和左),和1px的偏移(頂部和右)
- 鉻添加1px的邊界(頂部和左),和1px的偏移(底部和右)
我唯一的解決辦法爲止。將繪製實際邊界自己(可能與path
工具)和邊界定位描邊元素後面。但是這個解決方案是一個令人不快的解決方法,如果可能的話,我寧願不要走這條路。
所以我的問題是,你可以控制SVG的stroke-width
如何繪製元素?
有過濾器黑客可以用來實現這一點 - 但它不是一個很好的解決方案 –
有'paint-order'參數,您可以指定,填充應該被繪製在筆畫頂部,所以你將獲得「外部對齊」,請參閱https://jsfiddle.net/hne0kyLg/1/ –