Rect entspricht dem Textanker-Präsentationsattribut von Text?

8

Entspricht das Äquivalent eines Rect dem Text-Anchor-Präsentationsattribut?

Ich möchte in der Lage sein, ein Rect von seiner linken / rechten Seite oder abhängig von der Situation zu positionieren. Ich weiß, dass es mit ein paar einfachen Berechnungen gemacht werden könnte, aber ich frage mich nur, ob etwas bereits eingebaut ist.

Link zum Textanker-Präsentationsattribut ... Ссылка

    
Dany Marcoux 01.11.2013, 14:12
quelle

2 Antworten

1

Es gibt nichts Vergleichbares für andere SVG-Elemente (einschließlich rect ), siehe die Spezifikation . Sie müssen die Position selbst berechnen.

    
Lars Kotthoff 01.11.2013 14:17
quelle
1

Ich habe nach der gleichen Frage gesucht und diesen Beitrag ohne Antwort gefunden. Die Frage ist ziemlich alt, aber ich lege hier die Lösung für jemanden kann wie ich es suchen.

Wenn man (x, y) eines Svg-Rect angibt, wird es wie folgt behandelt: "Platziere die linke obere Ecke des Rect an dem Punkt (x, y)" . Aber man möchte, dass (x, y) wie folgt behandelt wird: "Hey, platziere die Mitte von meinem rect an (x, y)" oder "Hey, platziere die obere rechte Ecke von mein Rect bei (x, y) ". Für diese Ankermechanik wird verwendet, aber es gibt keine solche in Svg.

Sie können immer noch mit der Transformation (mithilfe von css oder Attribut) Ankermechaniken erreichen. Dies ist möglich, da Prozentwerte in transform.translate relativ zur angewendeten Form berechnet werden, nicht jedoch zu deren Eltern.

DIE LÖSUNG FUNKTIONIERT NUR IM CHROM

Um also "Hey, platziere die Mitte von meinem Rect bei (x, y)" zu erreichen, musst du den Anker auf (0.5, 0.5) setzen. Hier ist wie es mit transform gemacht wird:

%Vor%

Code-Snippet auf jsfiddle

%Vor% %Vor%
    
garek 13.11.2015 10:27
quelle

Tags und Links