Fabric JS _updateObjectsCoords Alternative? (Migrationsproblem bis 1.7.9)

8

Aktualisierung: JSFiddle: Ссылка

Ich versuche, meine Funktion curveText funktionsfähig zu machen (siehe unten in diesem Beitrag). Normalerweise funktioniert es mit fabric.js 1.2.0 . Wenn ich jedoch auf fabric.js 1.7.9 aktualisiert habe, findet die Funktion curving den Text an falschen Positionen, wenn zwei Aktionen nacheinander sequentiell ausgeführt werden / p>

AKTIONEN: - AUSGABE 1

-Textgruppenskalierung wird geändert (ich meine die Eckpunkte mit der Maus ziehen, um die Größe zu ändern).

-setText heißt

Fabric js 1.2.0:

Fabric js 1.7.9

Ich habe es debuggt und der Grund dafür ist _updateObjectsCoords in fabricjs, denn wenn ich es aus dem Code löste und zwei Aktionen, die ich oben aufgelistet habe, funktionieren gut.

AUSGABE 2: Aber dieses Mal habe ich unter Problem gestellt, das ist, dass Gruppenelemente nicht korrekt gefunden werden, wenn Sie den Text zum ersten Mal zum Canvas hinzufügen.

mit _updateObjectsCoords

ohne _updateObjectsCoords

Hier meine Funktion:

%Vor%     
HOY 08.04.2017, 00:55
quelle

2 Antworten

5
___ qstnhdr ___ Fabric JS _updateObjectsCoords Alternative? (Migrationsproblem bis 1.7.9) ___ tag123jquery ___ jQuery ist eine beliebte Cross-Browser JavaScript-Bibliothek, die durch die Minimierung der Abweichungen in allen Browsern Document Object Model (DOM) Traversal, Ereignisverarbeitung, Animationen und AJAX-Interaktionen ermöglicht. Eine mit jQuery gekennzeichnete Frage sollte mit jQuery in Zusammenhang stehen, daher sollte jquery von dem fraglichen Code verwendet werden, und mindestens eine jquery-nutzungsbezogene Elemente müssen in der Frage enthalten sein. ___ tag123javascript ___ JavaScript (nicht zu verwechseln mit Java) ist eine dynamische Sprache mit mehreren Paradigmen auf hoher Ebene, die sowohl für das clientseitige als auch für das serverseitige Scripting verwendet wird. Verwenden Sie dieses Tag für Fragen zu ECMAScript und seinen verschiedenen Dialekten / Implementierungen (außer ActionScript und Google-Apps-Script). ___ tag123wordpress ___ Dieses Tag ist für programmierspezifische Fragen im Zusammenhang mit dem Content-Management-System WordPress. Fragen zur Theme-Entwicklung, WordPress-Administration, Best Practices für die Verwaltung und Serverkonfiguration stehen hier außer Frage und werden am besten bei Stack Exchange WordPress Development gestellt. ___ tag123fabricjs ___ Fabric.js ist eine HTML5-Canvas-Bibliothek, die ein Objektmodell für Canvases, einen SVG-zu-Canvas-Renderer und einen Canvas-to-SVG-Parser bereitstellt. ___ qstntxt ___

Aktualisierung: JSFiddle: Ссылка

Ich versuche, meine Funktion updateText() funktionsfähig zu machen (siehe unten in diesem Beitrag). Normalerweise funktioniert es mit canvas = new fabric.Canvas('c',); . Wenn ich jedoch auf canvas = new fabric.Canvas('c',{centeredScaling: true}); 1.7.9 aktualisiert habe, findet die Funktion curving den Text an falschen Positionen, wenn zwei Aktionen nacheinander sequentiell ausgeführt werden / p>

AKTIONEN: - AUSGABE 1

-Textgruppenskalierung wird geändert (ich meine die Eckpunkte mit der Maus ziehen, um die Größe zu ändern).

-setText heißt

Fabric js 1.2.0:

Fabric js 1.7.9

Ich habe es debuggt und der Grund dafür ist updateText() in fabricjs, denn wenn ich es aus dem Code löste und zwei Aktionen, die ich oben aufgelistet habe, funktionieren gut.

AUSGABE 2: Aber dieses Mal habe ich unter Problem gestellt, das ist, dass Gruppenelemente nicht korrekt gefunden werden, wenn Sie den Text zum ersten Mal zum Canvas hinzufügen.

mit %code%

ohne %code%

Hier meine Funktion:

%Vor%     
___ answer43432085 ___

Sie können dies verwenden: Ссылка Sie können die Demo sehen

    
___ antwort43332249 ___

Das sollte es tun, wenn ich dich richtig verstanden habe:

Nur eine kleine Änderung an Ihrer %code% Funktion:

%Vor%

Und schließlich, hier ist Ihr ganz wichtiger JSFiddle aktualisiert, Ссылка .

Aktualisieren (v2)  - Da Sie in Ihrem Kopfgeld dafür plädiert haben, Ihre Funktion funktionieren zu lassen,; -).

Ändern Sie diese Zeile:

%Vor%

Dazu:

%Vor%

Und um es etwas ästhetischer zu gestalten, möchten Sie vielleicht ...

Ändern Sie diese Zeile: %code%

Dazu: %code%

Und hier ist dein originaler Plunker noch einmal aktualisiert, Ссылка .

Damit bleibt Ihre %code% -Funktion so, wie Sie sie hatten.

Lassen Sie es mich wissen, wenn Sie noch weitere Fragen haben. Immer glücklich zu helfen!

    
___
Tim Harker 10.04.2017, 20:17
quelle
0

Sie können dies verwenden: Ссылка Sie können die Demo sehen

    
Sofiane Achouba 15.04.2017 22:59
quelle