ZOOM SUR L'IMAGE D'UNE IHM

Signaler
Messages postés
46
Date d'inscription
vendredi 17 juin 2005
Statut
Membre
Dernière intervention
1 mars 2006
-
Messages postés
46
Date d'inscription
vendredi 17 juin 2005
Statut
Membre
Dernière intervention
1 mars 2006
-
bonjour,

je voiudrai savoir si on pourrai zoomé sur une image en cpp,

merci

5 réponses

Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
Un code de loupe dans mes sources (API Win32), utilise la fct StretchBlt
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011

Juste une question...bien que je me doute que ça en soit pas optimisé du tout, ne serait-il pas possible de faire des GetPixel() sur chaque pixel dans la zone à zoomer et de simuluer une fenêtre par desssus (plus grande, simulant la loupe) où on ferait 2 SetPixel() (ou plus selon le degré de zoom) pour chaque pixel lu?
Je ne sais pas si c'est trop clair...si non, dites le moi
si ça se trouve c'est exactement comme ça qu'on zoome lol
Messages postés
46
Date d'inscription
vendredi 17 juin 2005
Statut
Membre
Dernière intervention
1 mars 2006

voici mon code qui me permet d'afficher mon image dans une ihm sous gtk sous linux:

#include <stdlib.h>
#include <gtk/gtk.h>

int main(int argc, char **argv)
{
GtkWidget *pWindow;
GtkWidget *pVBox;
GtkWidget *pImage;
GtkWidget *pQuitImage;
GtkWidget *pQuitBtn;

gtk_init(&argc, &argv);

pWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size(GTK_WINDOW(pWindow), 320, 200);
gtk_window_set_title(GTK_WINDOW(pWindow), "GtkImage");
g_signal_connect(G_OBJECT(pWindow), "destroy", G_CALLBACK(gtk_main_quit), NULL);

pVBox = gtk_vbox_new(FALSE, 0);
gtk_container_add(GTK_CONTAINER(pWindow), pVBox);

/* Chargement d'une image a partir d'un fichier */
pImage = gtk_image_new_from_file("./gtk.png");
gtk_box_pack_start(GTK_BOX(pVBox), pImage, FALSE, FALSE, 5);

pQuitBtn = gtk_button_new();
gtk_box_pack_start(GTK_BOX(pVBox), pQuitBtn, TRUE, FALSE, 5);
g_signal_connect(G_OBJECT(pQuitBtn), "clicked", G_CALLBACK(gtk_main_quit), NULL);

/* Chargement d'une image a partir d'un GtkStockItem */
pQuitImage = gtk_image_new_from_stock(GTK_STOCK_QUIT, GTK_ICON_SIZE_LARGE_TOOLBAR);
gtk_container_add(GTK_CONTAINER(pQuitBtn), pQuitImage);

gtk_widget_show_all(pWindow);

gtk_main();

return EXIT_SUCCESS;
}

Donc j'ai maintenant j'aimerai savoir comment faire pour pouvoir zoomé sur cette image que j'ai
afficher a l'écran, par exemple faire un clik pour zoomé et un clik pour dezoomé, mais je ne
sais pas si c'est possible
merci de votre aide
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
Désolé, le code que je mentionnais était pour windows. Je ne connais absolument pas linux (ni gtk non plus).
Messages postés
46
Date d'inscription
vendredi 17 juin 2005
Statut
Membre
Dernière intervention
1 mars 2006

merci quand meme ymca2003
si quelqu'un d'autre pourrai m'aider sa serait sympa de votre part