Bonjour
J'ai mis un place une petite technique qui me permet de deplacer une image dans une autre image et d'afficher le tout dans un picturebox
Le but in fine est de pouvoir composer une image en y ajoutant et positionnant une collection d'elements (images)
Ci apres le coeur de la mecanique
Ma question est de savoir si il n'y a pas moyen d'ameliorer l'intanciation du Graphics.FromImage() dans la fonction reposPrintPreview() qui doit etre asser lourde a mon avis
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 // *********************************************************************************** private void rePosPrintPreview() { Image Fond = (Image)BaseImage.Clone(); Graphics grx = Graphics.FromImage(Fond); grx.DrawImage(legend, new Point(currentX, currentY)); legrect = new Rectangle(currentX, currentY, legend.Width, legend.Height); printPreview.Image = Fond; } // *********************************************************************************** private void printPreview_MouseMove(object sender, MouseEventArgs e) { Point p = new Point(e.X, e.Y); Cursor = Cursors.Arrow; if (legrect.Contains(p)) { Cursor = Cursors.Hand; if (e.Button == MouseButtons.Left) // Deplacement image { currentX += (e.X - BaseX); currentY += (e.Y - BaseY); rePosPrintPreview(); BaseX = e.X; BaseY = e.Y; } } } // *********************************************************************************** private void printPreview_MouseDown(object sender, MouseEventArgs e) { Point p = new Point(e.X, e.Y); if (legrect.Contains(p)) { BaseX = e.X; BaseY = e.Y; } }
Partager