Salut à tous, j'ai une image, je veux afficher l'image après avoir effectuer une rotation suivant un angle defini.
Comment puis je y arriver.
Merci
Version imprimable
Salut à tous, j'ai une image, je veux afficher l'image après avoir effectuer une rotation suivant un angle defini.
Comment puis je y arriver.
Merci
Si tu as fait la rotation, tu peux l'afficher dans un TImage,
si tu ne sais pas faire le rotation, je ne pourrais pas aider la dessus, je n'ai jamais cherché ... mais "Rotation" dans l'aide API SDK, tu as une page qui semble expliqué les notions de math nécessaires ...
Salut
Il existe un compo TRotateImage. Tu peux l'utiliser ou t'en inspirer.
@+ Claudius
Merci les gars.
je vais voir tout de suite
A+
Pour info : Vous pouvez télécharger :
- chez http://perso.orange.fr/bardou/michel...programmes.htm
- à la rubrique rotation
- le Zip du code de Jean-Yves Quéinec qui utilise, en sus du MemoryStream, les Scanline pour la rapidité des rotations de bitMaps.
Erreur dans mon msg précédent c'est pas le bon code source, celui-ci est effectivement rapide mais dénature les couleurs.
Voiçi le Zip du code de 2006 du même auteur, en espérant que mon quota de Zips n'est pas dépassé.
Pièce jointe 13008
Info complémentaire / mes 2 msg précédents :
Vous pouvez quand même télécharger le fichier indiqué chez http://perso.orange.fr/bardou/michel...programmes.htm
J'ai trouvé le bug qui y dénaturait les couleurs, il manquait une ligne :
- dans l'unit Ulecture;
- à l'intérieur de la procedure TForm3.FileListBox1Click(Sender: TObject);
il suffit de rectifier le code comme suit :
Le code est rapide et en prime il permet de combiner la rotation du BitMap avec un effet de zoom avant/arrière.:DCode:
1
2
3 Bmp1 := Tbitmap.create; Bmp1.pixelformat := pf24bit; //< ligne à ajouter dans le code-source bmp1.width := Image1.picture.graphic.width;