sauvegarde d'une selection de partie image dans un fichier jpeg
re Bonjour
PUIS JE ABUSER DE VOTRE GENTILLESSE ,
Maintenant que mon probleme de selection de zone image dans un userforme est reglé (gros merci a Tête de Chat :D:D), je n'arrive pas a la sauvegarder en jpg
Je me heute a des methodes non gérer, incompatibilité de type etc ..... j'ai fait plusieurs essais pour revenir a ma solution initiale dans le code ci-dessous
Update : qui en fait etait une erreur colossale puisque je n ai plus gdpicture :arf::arf::arf::arf::scarymov::scarymov:
donc si vous avez des solutions a me suggerer ...... je suis preneur
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 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
Public Sub PageFreqimg_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
' Lorsque l'utilisateur relâche le clic, enregistrez les coordonnées de fin
If SelectionEnCours = 2 _
Then
SelectionEnCours = 0
X2 = X
Y2 = Y
End If
' Copie et sauvegarde de la zone sélectionnée en tant qu'image JPEG
Dim FicCible As String
FicCible = RepExport & "\" & ActionOCR & ".jpg"
CopierEtSauvegarderSelection FicCible '<w=================== appel
'............................................ reste du code
Public Sub CopierEtSauvegarderSelection(FicCible As String)
' Vérifiez si les coordonnées de début et de fin de la sélection sont valides
If X1 = 0 Or Y1 = 0 Or X2 = 0 Or Y2 = 0 Then
MsgBox "Please select an area to copy first.", vbExclamation
Exit Sub
End If
' Créez un objet GdPicture
Dim gdPicture As Object
Set gdPicture = CreateObject("GdPicture.GdPicture.10") '<============== le probleme est là, j ai meme essayé de passer par un userformtemporaire :arf::arf:
' Chargez l'image source
Dim imagePath As String
imagePath = PageFreqimg.Picture
If gdPicture.LoadFromFile(imagePath) = 0 Then
MsgBox "Unable to load the image.", vbExclamation
Exit Sub
End If
' Calculez les coordonnées de la zone sélectionnée
Dim width As Long
Dim height As Long
width = X2 - X1
height = Y2 - Y1
' Copiez la zone sélectionnée
gdPicture.Crop X1, Y1, width, height
' Enregistrez la zone sélectionnée en tant qu'image JPEG
If gdPicture.SaveAsJPEG(FicCible, 75) = 0 Then
MsgBox "Error while saving the image.", vbExclamation
Else
MsgBox "The selection has been copied and saved as a JPEG image.", vbInformation
End If
' Libérez les ressources de GdPicture
gdPicture.CloseImage
Set gdPicture = Nothing
End Sub |
Avez vous une solution pour moi :hola::hola::hola:
il n y a pas de question bete, il n'y a que des idiot qui ne veulent pas répondre
En fait ou ije pourrais par exemple utiliser snippingtool et enregister la capture la ou je veux ou encore afficher dans paint et enregistrer un nouveau paint, je l ai testé et cela marche
aussi la possibilité d'utiliser d'autre outils de scan et OCR, mais pour le moment pas mal dessus sur des tableurs.
Aussi j essaie d'automatisé au maximum de maniere le plus intégrée possible , avec le mons de risque d'erreur et d etre le plus portable possible sur des ordinateurs differents sans avoir besoin d'installer d'autres logiciels autre que tesseract
il ya un tres gros "bouquin" d'impression de feuilles excel de plus de 300 pages a récupérer, (amis où sont les sauvegardes :ptdr::ptdr::ptdr:)
Je vais regarder ce que tu me proposes et d'avance merci