[..] Gdi+ format png

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
jcaspar
Niveau 7
Niveau 7
Messages : 449
Enregistré le : mar. 23 sept. 2008 17:58
Status : Hors ligne

[..] Gdi+ format png

#1

Message par jcaspar »

B :D onjour à tous !
Je souhaiterais créer une nouvelle image à partir de deux images existantes mais j'ignore si il est possible d'utiliser des images au format png ?

En vous remerciant pour vos conseils


Jean-Marc

Code : Tout sélectionner


#include <GDIPlus.au3>
#include <WinAPI.au3>


    Local $hBitmap1, $hBitmap2, $hImage1, $hImage2, $hGraphics

      _GDIPlus_Startup()

    $hBitmap1 ="logo_ars.png"
    $hImage1 = _GDIPlus_BitmapCreateFromHBITMAP($hBitmap1)

    $hBitmap2 ="signature_optim.png"
    $hImage2 = _GDIPlus_BitmapCreateFromHBITMAP($hBitmap2)

    $hGraphics = _GDIPlus_ImageGetGraphicsContext($hImage1)
    _GDIPlus_GraphicsDrawImage($hGraphics, $hImage2, 100, 100)

    _GDIPlus_GraphicsDrawRect($hGraphics, 100, 100, 400, 300)

    _GDIPlus_ImageSaveToFile($hImage1, @DesktopDir & "\test.jpg")

    ; Clean up resources
    _GDIPlus_ImageDispose($hImage1)
    _GDIPlus_ImageDispose($hImage2)
    _WinAPI_DeleteObject($hBitmap1)
    _WinAPI_DeleteObject($hBitmap2)

    ; Shut down GDI+ library
    _GDIPlus_Shutdown()

    ShellExecute(@DesktopDir & "\test.jpg")
 
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2127
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] Gdi+ format png

#2

Message par TommyDDR »

Oui, c'est possible.

Code : Tout sélectionner

$hBitmap1 ="logo_ars.png"
$hImage1 = _GDIPlus_BitmapCreateFromHBITMAP($hBitmap1)
"FromHBITMAP" ! ce n'est pas parce-que vous appelez votre variable "$hBitmap1" que c'est un HBITMAP.

Code : Tout sélectionner

$hBitmap1 ="logo_ars.png"
$hBitmap1 est un string.

Vous ne devez pas utiliser "_GDIPlus_BitmapCreateFromHBITMAP", ouvrez l'aide et cherchez une fonction plus approprié à ce que vous avez -> un nom de fichier.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
walkson
Modérateur
Modérateur
Messages : 1038
Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status : Hors ligne

Re: [..] Gdi+ format png

#3

Message par walkson »

Bonsoir,
Voici un scrypt qui superpose 2 PNG et modifie la transparence
► Afficher le texte

Pour obtenir un résultat convenable, les 2 PNG doivent être de la même taille que je réalise par:
► Afficher le texte
Il y a, peut être, un moyen plus simple mais cela fonctionne
(La doc et les infos sur le travail d'un fichier PNG sont très limités :( )
Edit: je joints les 2 PNG car en fonction des transparences, les résultats peuvent être très variables
Fichiers joints
redimensionné à la base
redimensionné à la base
la base
la base
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
Avatar du membre
walkson
Modérateur
Modérateur
Messages : 1038
Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status : Hors ligne

Re: [..] Gdi+ format png

#4

Message par walkson »

Bonjour,
Après, si c'est pour mettre 2 PNG cote à cote, il y a http://www.autoitscript.com/forum/topic ... ap-images/ (voir rasim)
Prévu pour du BMP, marche aussi pour du PNG (je viens de tester) mais ne gère pas la transparence qui devient noir.
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
Répondre