Inkscape: Wie verschiebt man Text entlang des Pfads?

Beim Anhängen von Text an einen Pfad in Inkscape scheint der Text am Anfang des Pfads angehängt zu werden. Wenn es sich um eine Form handelt, z. B. eine Ellipse, wird sie häufig am Anfang eines der 4 Ordinalpunkte platziert. Ungeachtet dessen ist dies selten der Ort, an dem der Text tatsächlich positioniert werden soll, sodass Sie ihn am Ende mit einigen Leerzeichen an die richtige Stelle schieben.

Ich dachte, das ist irgendwie hacky (mit den Leerzeichen), habe etwas gegoogelt und mir mehrere YouTube-Tutorials angesehen und festgestellt, dass sie alle genau dasselbe tun ... mit Leerzeichen.

Angesichts der Tatsache, dass andere Vektorsoftware normalerweise einen ziehbaren Griff bietet, mit dem Sie den Text entlang des Pfads verschieben können, dachte ich, Inkscape hätte vielleicht etwas Ähnliches, aber ich habe eine solche Funktion nicht gefunden. Existiert es? Oder sind Leerzeichen einfach der Weg, sich in Inkscape darum zu kümmern?

Hast du diesen gesehen? youtube.com/watch?v=VwOYO9cAows
@Vicki ja. Aber dieser Trick funktioniert nur, wenn sich Ihr Text auf einem perfekten Kreis befindet.

Antworten (4)

Habe dieses Bit im Inkscape-Handbuch gefunden . Es heißt eigentlich , Kerning zu verwenden, um die Startposition Ihres Textes auf einem Pfad anzupassen (was leider nicht weit von der Verwendung von Leerzeichen entfernt ist).

Geben Sie hier die Bildbeschreibung ein

Text kann relativ zum Pfad angepasst oder verschoben werden. Links: Der Text wurde angepasst und mit den Tasten Alt+Pfeiltasten kerned. Wenn Sie den Cursor an den Anfang des Textes setzen und die Alt+Pfeiltasten verwenden, wird die Startposition des Textes verschoben. Rechts: Der Text wurde unabhängig vom Pfad verschoben, indem nur der Text markiert und mit der Maus an die neue Position gezogen wurde.

Es gibt auch ein Steuerelement zum Anpassen des Kernings in der Symbolleiste, wenn Sie den Text auswählen, wenn Sie das Textwerkzeug verwenden:

Geben Sie hier die Bildbeschreibung ein

Dadurch können Sie den Versatz genau wählen.

was nicht weit davon entfernt ist, Leerzeichen zu verwenden – nun, es ist viel präziser. Außerdem ist das Umrüsten der Kerning-Funktion hier nur pragmatisch – es muss nicht überflüssig sein.
@Wrzlprmft Da hast du recht. Ich bezog mich eigentlich eher darauf, dass es in seiner Funktion dem Hinzufügen von Leerzeichen ähnelt, und nicht das Handle, nach dem DA01 gesucht hat, aber dennoch eine gute Note.
Ich mag diesen Trick, obwohl ich festgestellt habe, dass er bei mir nicht durchgehend funktioniert. Bei einigen Schriftarten kann ich keine Leerzeichen anpassen. Ich nehme an, das ist ein Fehler in meiner speziellen Version von Inkscape oder vielleicht der speziellen Schriftart.
Es gibt eine Unterschneidungswertgrenze von 1000, daher fand ich es notwendig, eine Kombination aus Leerzeichen und Unterschneidung zusammen zu verwenden. Dieser Arbeitsablauf fühlt sich wie ein Hack an, aber er kann eher auf Einschränkungen in der SVG 1-Spezifikation als auf Inkscape zurückzuführen sein. (Spekulieren)

Es gibt keine Möglichkeit, dies in Inkscape in der Benutzeroberfläche zu tun (siehe diesen Fehler ), aber Sie können dies mit dem XML-Editor von Inkscape tun.

Gemäß den SVG-Spezifikationen können Sie das startOffsetAttribut verwenden, um anzugeben, wo der Text beginnen soll. Alles, was Sie tun müssen, ist, dieses Attribut zur <textPath>.

  1. Öffnen Sie in Inkscape den XML-Editor Ctrl+ Shift+ X.
  2. Suchen Sie im XML-Editor die <svg:text>. (Sie können in Inkscape auf den Text klicken, um im XML-Editor dorthin zu springen.)
  3. Wählen Sie das <svg:textPath>untergeordnete Element der <svg:text>.
  4. Geben Sie auf der rechten Seite des XML-Editors in das Feld neben der Schaltfläche FestlegenstartOffset ein . Geben Sie darunter den Wert ein, den Sie entlang des Pfads verschieben möchten.
  5. Klicken Sie auf Festlegen .

Das ist nicht ideal, aber genauer und sauberer als die Verwendung von Leerzeichen oder die manuelle Anpassung des Kernings. Wenn Inkscape dafür eine Funktion in seiner Benutzeroberfläche hätte, würde es dieses Attribut wahrscheinlich im XML festlegen.

Nun, das ist die Art von Trick, die ich mag! Ich hätte nie gedacht, den XML-Editor zu überprüfen. Tolle Lösung! (Zumindest vorerst ... hoffentlich wird dies irgendwann in der GUI behoben!)
Beachten Sie, dass startOffsetzwischen Groß- und Kleinschreibung unterschieden wird
Verwenden von startOffset mit einem Wert von 50 % und Ändern des textAnchor-CSS-Stils des übergeordneten svg:text Ich habe meinen Text immer entlang meiner Linie zentriert, also danke für den Tipp.
@Enetheru Perfekt. svg:textPath mit startOffset 50% und svg:text parent mit text-anchor middle.

Ich verwende Inkscape 0.92 auf einem Windows 10-PC. Im Dialogfeld „Text und Schriftart“ (Umschalt+Strg+T) befindet sich direkt unter dem Dropdown-Menü „Schriftgröße“ ein weiteres Dropdown-Menü mit einem Prozentwert. Wenn Sie den Mauszeiger darüber bewegen, erscheint ein Hinweisetikett, das Ihnen mitteilt, dass es sich um einen Textpfad-Offset handelt - es erfüllt die gleiche Aufgabe wie das Bearbeiten des XML (wie von Scribblemacher vorhergesagt). Das Dropdown-Menü bietet nur 10 %-Schritte, aber Sie können Ihren eigenen Wert eingeben.

Unter 0.92.4 (Windows): Das Dropdown-Menü akzeptiert auch einheitenlose Werte (dh kein %), die sich anders als der Standardprozentsatz verhalten. Negative Werte verursachen Clipping. Veraltetes Handbuch: tavmjong.free.fr/INKSCAPE/MANUAL/html/Text-Path.html
Das %-Menü sollte eine +/- Pfeileinstellung haben. Danke, dass du mir dabei geholfen hast.
Auf meinem Rechner (Win 10, Version 1.02) gibt es kein solches Dropdown: i.imgur.com/vm2Xgkb.png

Wenn sich Ihr Text zufällig auf einem Kreis befindet, können Sie den Kreis einfach drehen:

Siehe „Inkscape-Tutorial – gebogener Text, kreisförmiger runder Text, Text auf einem Pfad“ youtube.com/watch?v=sriOf60TVxg , um eine allgemeinere Lösung zu erhalten