Seite 1 von 1

Anzeige von svg-Dateien manipulieren

Verfasst: 31. Mai 2010 12:08
von jack
Hallo zusammen,

folgendes habe ich vor.

Ich möchte eine svg-Datei laden und dann gezielt einzelne Objekte (über die ID) manipulieren, z.B. die Farbe oder den Text ändern.

Ich bin fest der Meinung das es geht, finde aber nichts.

Gruß
Harry

Verfasst: 1. Juni 2010 15:22
von Troll.Soft
SVG ist Text, also im Notfall kannst Du mit QString.replace() arbeiten.
tschüß
Troll.Soft

Verfasst: 1. Juni 2010 15:27
von upsala
SVG ist XML als kann man mit einen QDomDocument arbeiten...

Verfasst: 1. Juni 2010 16:37
von Troll.Soft
upsala hat geschrieben:SVG ist XML als kann man mit einen QDomDocument arbeiten...
Danke für den Tip, da ich irgendwann auch mal SVG bearbeiten will.
tschüß
Troll.Soft

Verfasst: 1. Juni 2010 17:02
von jack
Das ist mir schon bewusst, ist auch der Weg den ich aktuell
schon gehe.


Ich möchte mich aber die einzelnen Objekte aus der
SVG als ein QGraphicsItem-Objekt ansprechen und
manipulier.

Das muss doch auch gehen, oder ?????


Gruß
Harry

Verfasst: 1. Juni 2010 17:32
von upsala
Nein, das ist nicht möglich.

Verfasst: 1. Juni 2010 17:39
von jack
Danke erstmal,


weist du auch warum das nicht geht ?

Wandelt Qt eine SVG-Datei nicht in einzelne QGraphicsItem-Objekte um ?


Gruß
Harry

Verfasst: 1. Juni 2010 17:47
von franzf
jack hat geschrieben:Wandelt Qt eine SVG-Datei nicht in einzelne QGraphicsItem-Objekte um ?
Nein, QGraphicsSvgItem verwendet diekt einen QSvgRenderer, dieser zeichnet direkt auf einen QPainter.

Verfasst: 1. Juni 2010 18:41
von jack
Danke,

gibt es einen anderen weg, um einzelne Objekt aus einem Bild zu manipulieren ?

Bei png-Dateien gibt es keine Objekte und Ebenen mehr.


Gruß
Harry

Verfasst: 1. Juni 2010 18:48
von Troll.Soft
jack hat geschrieben:Ich möchte mich aber die einzelnen Objekte aus der
SVG als ein QGraphicsItem-Objekt ansprechen und
manipulier.
Das muss doch auch gehen, oder ?????
Object aus SVG-Datei mittels Document-Methode rauslösen, eine gültige SVG-Datei daraus machen, diese rendern und Du hast ein Pixmap.

tschüß
Troll.Soft

Verfasst: 3. Juni 2010 20:05
von jack
Vielen Dank.