bj,
j'ai réussit a changer la taille par QGraphicsItem::scale dans mon application
mais au niveau de l'enregistrement, c'est la taille original.
comment changer la taille d'un QGraphicsItem dans la liste de QGraphicsScene::items() ?
Merci !
bj,
j'ai réussit a changer la taille par QGraphicsItem::scale dans mon application
mais au niveau de l'enregistrement, c'est la taille original.
comment changer la taille d'un QGraphicsItem dans la liste de QGraphicsScene::items() ?
Merci !
Salut,
tu enregistre comment ta QGraphicsScene?
j'ai testé aussi la taille de boundingRect de QGraphicsItem
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 QSvgGenerator generator; generator.setFileName(path); generator.setSize(size); local_painter.begin(&generator); for(int i = 0; i < itemList.count(); i++) { QStyleOptionGraphicsItem option; local_painter.setViewport(itemList.at(i)->scenePos().x(), itemList.at(i)->scenePos().y(), generator.width(), generator.height()); itemList.at(i)->paint(&local_painter, &option, 0); } local_painter.end();
avant et après le scale, c'est pareil. même si au niveau d'affichage dans app, c'est bien changé .
Je ne connaissais pas cette méthode d'enregistrement. M'enfin, tu créé un svg qui est la représentation de ta scène? Alors que tu n'as pas forcément de svg dedans?
Et puis, tu la recharges après ta scène avec ton svg? Si oui, comment tu fais du coup pour récupérer les propriétés de tes objets (du genre changer une couleur d'un item dans ton svg)?? Car QSvgRenderer ne fais que t'afficher le svg, en aucun cas tu récupère toutes les propriétés des objets Svg, ce qui fort dommage car Qt les récupère pourtant...
J'utilise perso du xml pour enregistrer une scène, c'est plus difficile, mais tu récupère ce que tu veux, en outre la valeur du scale.
Bon courage![]()
ué qd je recharge un svg j'utilise xml Module de Qt
juste au niveau d'enregistrement ça peut enregistrer automatiquement qq infos genre le pen color, width, fillcolor etc.
juste le scale le rotate les infos ne peut plus enregistrer automatiquement..
sinon comment tu enregistre avec xml? en utilisant xml module aussi?
juste pour chaque paramètre tu crée un tag et tu l'enregistre c'est à peu près ça?
sinon t'as une idée pourquoi le boudingRect d'un QGraphicsItem ne change pas la taille après le scale et rotate?
merci![]()
c'est résolu!
tt simplement ajouter setTransform qd on l'enregistre.
![]()
Partager