2010-09-30 6 views
7

Es scheint, dass SVG in Flex 4 zugunsten von Adobe FXG "veraltet" ist. Was kann ich tun, wenn ich eine Menge SVG-Grafiken habe, die ich weiterhin verwenden möchte? Gibt es etwas Zuverlässiges, um SVG zu FXG zu konvertieren? Sind sie in der Merkmalsparität? Gibt es einen Konverter da draußen, der mich nicht $ 1500 kostet?Anzeigen von SVG in Flex 4

Antwort

1

Inkscape auch exports fxg jetzt (siehe Kommentare # 24 und # 42), aber mit some limitations.

Es verwendet einfache XSLT als Erweiterung, so dass Sie einfaches Skript in jeder Sprache schreiben können, die XML-Transformationen unterstützt, um FXG von Ihren SVGs zu erzeugen.

1

Eigentlich, wenn Sie in Flex 4 programmieren, überprüfen Sie die Grundfunktion Funkenpfad. Für Pfaddaten wird eine Zeichenfolge verwendet, die dieselbe Syntax wie ein SVG-Pfad hat. Sie müssen es nur analysieren, aber actionscript unterstützt reguläre Ausdrücke vollständig, so dass es nicht zu schwer sein sollte, eine svg als Text/XML-Datei mit URLrequest zu laden und die Pfaddaten für Ihre Primitiven auszuwerten.

Pfadobjekte unterstützen nur Transformationen auf ihrem gesamten Pfad. Wenn Sie also Pfaddaten in Echtzeit bearbeiten möchten, müssen Sie die Daten nur in einer Datenstruktur analysieren und in eine Zeichenfolge für die Anzeige konvertieren.

Wenn Sie einen SVG-Pfad mit der Actionscript 3.0-Grafikbibliothek anzeigen wollten, müssten Sie das kubische Berzier mit quadratischem Berzier beim Anzeigen angleichen, aber das Funken-Primitiv beseitigt dies, indem Pfaddaten in akzeptiert werden kubische Form - obwohl selbst die Funkengrundelemente, wenn sie sich selbst herausziehen, Annäherungen zu sein scheinen, die sehr nahe sind.

+0

Pfade sind nur eine Art von grafischem Element ... Ich habe ein komplettes Logo Rendering in SVG und ich möchte es anzeigen. Kann dies mit der von Ihnen beschriebenen Methode geschehen? –

1

Hängt davon ab, wie viel Arbeit Sie tun möchten, um die Svg-Daten zu interpretieren. Wenn Sie Dinge wie Stile, Masken/Clipping und Blur-Effekte implementieren möchten, ist die Funktionalität in flex 4 mit Pfad und allen Eigenschaften vorhanden, aber die Implementierung aus den Daten erfordert Arbeit.

Die meisten der grafischen Elemente (Shapes und Text) können in Programmen wie inkscape in Pfaddaten umgewandelt werden. Trotzdem hat actionscript Zeichenmethoden, die die Grundformen unterstützen.

Auch Transformationen auf Gruppen von Elementen müssen analysiert werden, wenn Sie das auch verwenden möchten, oder Sie können einfach keine Gruppen verwenden, sie sind ziemlich sinnlos, wenn Sie sie nicht manipulieren.