Zoomer et DeZoomer une image en Qt
Bonjour, j'affiche une image dans ihm via un QScrollArea. Ensuite j'ai decidé de faire des applications de Zoom et de DeZoom de l'image.
Ce que j'ai compris pour faire un Zoom :il faut recuperer chaque pixmap et faire le "scale".Mais là ça marche pas , et je vois pas ce qui m'echappe!!:(
Si vous pouvez m'aider svp.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| /*=========================================================================================================================*/
/* Methode qui gere le facteur de zoom de l'image et les l'apparition des scrollBar quand la taille de l'image depasse */
/* les dimensions de l'ihm. */
/*=========================================================================================================================*/
void DManual2::scaleImage(double factor1, double factor2)
{
//Recuperation de chaque pixmap qu'on va "scale" dans cette methode.
Q_ASSERT(id->pixmap()) ;//Macro qui permet d'acceder à une variable d'une autre methode, ici au sdifferents pixmap de l'image.
id->pixmap()->scaled(factor1, factor2) ;
}
void DManual2::ZoomIn()
{
// On doit recuperer chaque pixmap et on fait le scale.
id->pixmap()->scaled(factor1, factor2) ;
scaleImage(100, 200) ;
}
/*========================================================================================================================*/
/* Cette methode fait un Zoom Out de l'image apres un Zoom In,,,,??? */
/*========================================================================================================================*/
void DManual2::ZoomOut()
{
scaleImage(0.5,0.5) ;//Factor de dezoom qui joue sur le QLabel contenant l'image.
} |
Merci d'avance.