tronquer une image

patricktoulon

XLDnaute Barbatruc
patricktoulon a soumis une nouvelle ressource:

tronquer une image - gardez que ce qui vous interesse d'une image

Bonjour à tous
on utilise tous aujourd'hui des userform des images dans nos applicatif excel
il arrive que l'on voudrait des images mais seulement une partie
on utilise alors divers logiciel ainsi que paint etc....on découpe et on a notre image
je vous propose aujourd'hui un petit applicatif pour découper une image et enregistrer la portion dans un fichier image a part entière

vous avez quatre petit carré dont vous pouvez changer la couleur que vous pouvez déplacer
l'espace...

En savoir plus sur cette ressource...
 

patricktoulon

XLDnaute Barbatruc
patricktoulon a mis à jour tronquer une image avec une nouvelle entrée de mise à jour:

image cropper (découper une image )V 2.0 Full MAC-WINDOWS

Bonjour à tous
aujourd'hui je met a jour cette petite app
j'ai supprimer les api et changé le mode d'apercu il est beaucoup plus reactif
j'ai modifié le mode d'insertion de l'image dans la feuille pour qu'elle garde sa taille d'origine
j'ai légèrement changé le look aussi
voilà c'est une version full Mac et windows
je remercie @mromain et @TooFatBoy pour avoir trouver le problème de taille
Regarde la pièce jointe 1166623

Lire le reste de cette entrée de mise à jour...
 

Pascal_B

XLDnaute Nouveau
Bonjour,
J'ai téléchargé votre petit classeur et l'ai testé.
Je rencontre cependant un petit problème : quand j'enregistre al sélection, l'image générée est vide.
 

patricktoulon

XLDnaute Barbatruc
bonsoir @Pascal_B
il faut peut être un peu plus de temps
change le code chart
VB:
With .ChartObjects.Add(shap.left, shap.top, shap.width, shap.height)
                Do While .Chart.Pictures.Count = 0
                .Chart.Paste
                Loop
                .Chart.Export Filename:=chem
                .Delete
                shap.Delete
            End With
 

patricktoulon

XLDnaute Barbatruc
oui ok
mais ton app excel a certainement un soucis avec les graphique ou autres
si tu n'arrive pas à coller la copy dans le chart
ce fichier à été testé sur 2007 , 2010 , 2013 , 2016 , 2019 et ça fonctionne très bien
je n'ai pas eu de retour encore sur 2021
 

crocrocro

XLDnaute Impliqué
Bonjour Patrick, bonjour à tous
Beaucoup de choses en peu de lignes et c'est beau 👍

Concernant le problème de Pascal, il s'agit peut-être d'une question de version d'Excel que je rencontre également, et que j'ai corrigé avec la ligne .Select :
VB:
Sub decoupe(Optional chem As String = "")
    Dim w As Single, h As Single, shap As Shape
    With ActiveSheet
        Set shap = .Shapes.AddPicture(tbchemin, False, True, 0, 0, -1, -1)    'insère l'image a sa taille d'origine
        DoEvents
        With shap
            w = .Width: h = .Height
            .PictureFormat.CropLeft = w * (Val(crleft.Value) / 100)
            .PictureFormat.CropRight = w * (Val(crright.Value) / 100)
            .PictureFormat.CropTop = h * (Val(crtop.Value) / 100)
            .PictureFormat.CropBottom = h * (Val(crbot.Value) / 100)
            If echorigin = False Then
                .LockAspectRatio = True
                .Width = .Width / (w / Image1.Width)
                DoEvents
            End If
        End With
        If chem = "" Then
            appercu
        Else
            shap.CopyPicture
            DoEvents
            With .ChartObjects.Add(shap.Left, shap.Top, shap.Width, shap.Height)
                'il faut ajouter le Select avant de faire le Paste
                .Select
                .Chart.Paste
                .Chart.Export Filename:=chem
                .Delete
                shap.Delete
            End With
        End If
    End With
End Sub

Patrick, 2 suggestions pour se rapprocher encore de la sélection rectangulaire de Gimp ;) :

  • Ajouter un groupe Mode de sélection de 3 boutons radios
- Sélection libre​
- Proportionnel à l'image d'origine​
- Avec le rapport Largeur / Hauteur suivi de 2 TextBox avec les 2 arguments du rapport (accessible seulement si coché)​

Tu indiques les positions des coins du crop.
  • Je te propose d'ajouter 2 lignes :
- Dimensions de l'image d'origine (largeur x hauteur) en indiquant par exemple 2000 pixels x 3000 pixels​
- Dimensions de la sélection (ou de l'image découpée) ...​
 

patricktoulon

XLDnaute Barbatruc
re
alors point n°1
en effet excel a besoin du select pour le chart mais uniquement si il n'est pas visible dans le visible range
donc solution du le place à left 0 et top 0
terminé plus besoin du select
point n° 2
j'y ai pensé a faire un truc du genre
d'ailleurs sur une de mes anciennes version il y avait photo d'identité
je m'y met dès que j'ai un moment
 

patricktoulon

XLDnaute Barbatruc
@crocrocro
ça te donne une idée du projet
1713896429030.png
 

crocrocro

XLDnaute Impliqué
Bonjour Patrick,
si j'interprète correctement tu prévois :
- un crop avec un zoom proportionnel correspondant à la valeur en % de la barre de défilement horizontale (le masque de couleur s'adaptant en direct à la valeur du zoom)
- un crop par découpe de l'image originale en 2 (gauche droite) ou en 4 (haut-gauche, bas-gauche, haut-droit, bas-droit)
De mon côté j'étais reparti de ce que j'avais proposé dans la discussion Diviser une image .PNG en 2 en VBA excel pour faire qqchose de générique à partir du choix d'un répertoire d'images et de découpes multiples horizontales et verticales avec un aperçu des découpes. Encore en cours
 

crocrocro

XLDnaute Impliqué
Patrick, celui qui code plus vite que son ombre :D
Super !
tu as laissé trainer quelques fautes de frappe (four sides, aperçu et quelques accents en français)
 

patricktoulon

XLDnaute Barbatruc
Bonjour crocrocro
Juste pour info
il evolu encore pour la version graphique et j'envisage de mixer les deux en un avec un optionbutton pour choisir une methode ou l'autre
 

Pièces jointes

  • demo.gif
    demo.gif
    215.7 KB · Affichages: 9

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
315 087
Messages
2 116 084
Membres
112 655
dernier inscrit
fannycordi