Vorrei essere in grado di impostare la larghezza del tratto su un elemento SVG in modo che sia "sensibile ai pixel", ovvero sia sempre 1px di larghezza indipendentemente dalle trasformazioni di ridimensionamento correnti applicate. Sono consapevole che questo potrebbe essere impossibile, poiché l'intero scopo di SVG è essere indipendente dai pixel.
Segue il contesto:
Ho un elemento SVG con i suoi attributi viewBox e keepAspectRatio impostati. Sembra qualcosa del genere
<svg version="1.1" baseProfile="full"
viewBox="-100 -100 200 200" preserveAspectRatio="xMidYMid meet"
xmlns="http://www.w3.org/2000/svg" >
</svg>
Ciò significa che quando ridimensiono quell'elemento, le forme effettive al suo interno vengono ridimensionate di conseguenza (finora tutto bene).
Come puoi vedere, ho impostato il viewBox in modo che l'origine sia al centro. Vorrei disegnare un asse x e y all'interno di quell'elemento, cosa che faccio in questo modo:
<line x1="-1000" x2="1000" y1="0" y2="0" />
Di nuovo, funziona bene. Idealmente, tuttavia, questo asse sarebbe sempre largo solo 1 px. Non ho alcun interesse che gli assi si ingrassino quando ridimensiono l'elemento svg genitore.
Quindi sono fottuto?