Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
[BAT/AFFPNG] Traitement, centrage et affichage d'une image.
Auteur Message
Répondre en citant
Message [BAT/AFFPNG] Traitement, centrage et affichage d'une image. 
Voilà un petit code qui vous montre l'utilisation de quelque fonction de AffPNG.


C'est un code didactique. Il est clair que pour un cas réel on calculerais les valeurs des positions
1 fois et on mettrais les valeurs directement dans la dernières commandes pour optimiser le temps de traitement.

Vous avez ici le cheminement complet pour downloader, redimensionner et afficher une image au centre de votre CMD et pour centrer
une fenêtre à l'écran.

vous pouvez tester de déplacer votre CMD lorsque l'image est afficher.


Okay


Code:

;;Exemple d'utilisation de AffPNG
::Pour cette example nous allons telecharger
::Une image de bart simpson.


::LORSQUE LE PROGRAMME VOUS LE DEMANDE,
::SAUVER CETTE IMAGE DANS LE REPERTOIRE OU CE TROUVE
::AFFPNG.EXE ET OU VOUS ALLEZ CREER CE BAT.

@Echo Off&cls
::Définition de la taille du CMD

mode con:lines=40 cols=120
set "$c=1"

::Définition du titre de notre instance du CMD

title BART

::On centre notre fenêtre CMD à l'écran

start AffPNG.exe /LW "BART" "centered"

::On debloque la fenêtre

start "" /wait AffPNG.exe /UL


::Download de l'image si elle n'existe pas

if not exist bart.gif (
     start Affpng "www.sachadee.org/affpng/example/down.php" /web /width 300 /heigth 150

Rem  On Kill l'instance de affpng si l'image est downloadé
Rem  A cause d'un petit Bug de [/web] qui va être corrigé pour la 2.6B

:test
     cls&echo Wait = %$c%/30
     if %$c%==30 goto:erreur
     if exist bart.gif (
         taskkill /f /im affpng.exe >nul
         goto:next2)
     timeout 1 >nul
     set /a $c+=1
     goto:test
)


:next2

::On redimensionne notre image (4x plus petite)

if not exist bart_redim.jpg Affpng bart.gif /redim 0.25
 

::On récupère les coordonnées de l'image

for /f "tokens=1,2 delims= " %%a in ('affpng "bart_redim.jpg" /getdim') do (
   set "$LargeurImage=%%a"
   set "$HauteurImage=%%b"
   goto:next3
)


::On récupère les coordonnées de la CMD

:next3

echo Largeur Image ==^> %$LargeurImage%
echo Hauteur Image ==^> %$HauteurImage%

for /f "tokens=1-4 delims= " %%a in ('affpng.exe /getcmdpos "BART"') do (
    set "$TopXCMD=%%a"
    set "$TopYCMD=%%b"
    set "$LargeurCMD=%%c"
    set "$HauteurCMD=%%d"
   goto:next4
  )


::On calcul la position d'affichage de notre BART

:next4

Echo Top X CMD ==^> %$TopXCMD%
Echo Top Y CMD ==^> %$TopYCMD%
Echo Largeur CMD ==^> %$LargeurCMD%
Echo Hauteur CMD ==^> %$HauteurCMD%

set /a $XPosImage=(%$LargeurCMD%/2)-(%$LargeurImage%/2)+%$TopXCMD%
set /a $YPosImage=(%$HauteurCMD%/2)-(%$HauteurImage%/2)+%$TopYCMD%

echo %$XPosImage%
echo %$YPosImage%

::On affiche notre Image au centre de notre CMD avec le paramètres [/attach]
::Et en [/nokill]

start affpng bart_redim.jpg /Xpos %$XPosImage% /YPos %$YPosImage% /attach "BART" /nokill "bart"

echo Essayer de déplacer votre CMD !!!
pause

:: On kill notre image

Start affpng /kill "bart"


goto:eof



:erreur
Echo Vous devez Sauver Bart.gif dans le dossier contenant AFFPNG et votre BAT
taskkill /f /im affpng.exe >nul
pause




Okay



Dernière édition par sachadee le Mar 17 Nov 2015 - 02:02; édité 2 fois

______________________________________________________
AffPng.exe , StringBetween.exe , Hex2Png.exe
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [BAT/AFFPNG] Traitement, centrage et affichage d'une image. 
Merci Sacha Smile




______________________________________________________
Cordialement,
Hugo, qui adore programmer, jouer à Minecraft, ZT2 et FSX.
Boutons-liens :
Visiter le site web du posteur Skype
Message [BAT/AFFPNG] Traitement, centrage et affichage d'une image. 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch