ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Exemples de fonctionnalités de la classe _GDIPLUS.VCX avec Visual FoxPro 9.0   



L'auteur

Mike Gagnon
Canada Canada
Membre Simple
# 0000000025
enregistré le 14/10/2004

Gagnon Mike
Pte Claire Quebec - Canada
de la société MCRG Software
Fiche personnelle


Note des membres
pas de note

Contributions > 11 - GDI +

Exemples de fonctionnalités de la classe _GDIPLUS.VCX avec Visual FoxPro 9.0
# 0000000159
ajouté le 05/03/2005 19:24:41 et modifié le 29/03/2006
consulté 5952 fois
Niveau initié

Version(s) Foxpro :
VFP 9.0

Description

Voici deux examples de manipulation d'images avec la classe _GDIPLUS.vcx et FoxPro 9.0. Veuillez noter que _GDIPLUS est un classe FoxPro qui fait appel directement au API de GDI et que les exemples ici sont similaires au exemples retrouvés dans l'article http://www.atoutfox.com/articles.asp?ACTION=FCONSULTER&ID=0000000098

L'avantage d'utiliser _GDIPLUS.vcx est qu'il y a plusieurs combinaisons d'appels API qui sont déjà fait pour vous et la classe inclus aussi un module qui gère les erreurs.

Code source :
&&1.Comment créer un image réduite.

oListener = CREATEOBJECT('reportlistener')  && Instancier la classe GDI
oImage= newobject('GpBitmap','ffc/_gdiplus.vcx'&& Créer un instance d'un image
oImage.CreateFromFile(GETPICT()) && Stocker l'image à manipuler - 400x400
oImg=os.GetThumbnailImage(100,100)  && Réduire l'image à 100 pixels par 100 pixel
oImg.SaveToFile('c:\image2.jpg',"image/jpeg",'quality=80')

À noter que à la dernière ligne, le premier paramètre est le nom du nouveau fichier, le deuxième paramètre est l’encodage (dans ce cas-ci un image jpg), et le troisième paramètre est le nivau de qualité (dans ce cas-ci 80%)

&&2.Comment faire une rotation avec un image. Paramètres de rotation trouvés dans le fichier gdiplu.h
#define GDIPLUS_ROTATEFLIPTYPE_RotateNoneFlipNone 0
#define GDIPLUS_ROTATEFLIPTYPE_Rotate90FlipNone   1
#define GDIPLUS_ROTATEFLIPTYPE_Rotate180FlipNone  2
#define GDIPLUS_ROTATEFLIPTYPE_Rotate270FlipNone  3

#define GDIPLUS_ROTATEFLIPTYPE_RotateNoneFlipX    4
#define GDIPLUS_ROTATEFLIPTYPE_Rotate90FlipX      5
#define GDIPLUS_ROTATEFLIPTYPE_Rotate180FlipX     6
#define GDIPLUS_ROTATEFLIPTYPE_Rotate270FlipX     7

oImage= newobject(GpBitmap','ffc/_gdiplus.vcx')
oImage.CreateFromFile(GETpic())
oImage.RotateFlip(GDIPLUS_ROTATEFLIPTYPE_Rotate180FlipNone )
oImg=oImage.GetThumbnailImage(32,33)
oImg.SaveToFile('
c:\ImgRot.jpg',"image/jpeg",'quality=100')


Commentaires
Aucun commentaire enregistré ...

Publicité

Les pubs en cours :

www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2019.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3