Bonjour =E0 tous,
J'aimerai r=E9aliser un appli avec la dll de xnview(Utilisation non
commercial =E0 usage personnel) pour charger une
image --> faire une rotation / redimensionnement / l'ajouter au presse
papier et la recuperer sous windev pour l'afficher et eventuellement
l'enregistrer et je bloque au niveau du chargement !!!
j'ai utilis=E9 le code de romain petit que je remerci pour son aide.
D'apr=E9s l'aide la dll si eErr =3D 0 alors pas d'erreur.
L'aide est telechargeable =E0 cette adresse : http://dl.free.fr/ioNKWqYu2
Voici le code de chargement !
STRUCTURE :
structLOAD_CALLBACK est une structure
Read est un entier sans signe
Tell est un entier sans signe
Seek est un entier sans signe
FIN
structLOAD_PARAMS est une structure
Flags est un entier sans signe
FormatIndex est un entier
ImageWanted est un entier
Origin est un entier sans signe sur 2 octets
ColorModel est un entier sans signe sur 2 octets
LinePadding est un entier sans signe
DefaultAlpha est un entier sans signe sur 1 octet
Reserved1 est un entier sans signe sur 1 octet
Reserved2 est un entier sans signe sur 2 octets
Width est un entier
Height est un entier
Offset est un entier sans signe
ChannelOrder est un entier sans signe sur 2 octets
ChannelType est un entier sans signe sur 2 octets
PcdBase est un entier sans signe sur 2 octets
EpsDpi est un entier sans signe sur 2 octets
EpsWidth est un entier
EpsHeight est un entier
LutType est un entier sans signe sur 2 octets
Reserved3 est un entier sans signe sur 2 octets
LutData est un entier sans signe
LutFilename est un entier
Callbacks est un structLOAD_CALLBACK
FIN
structBITMAP est une structure
Type est un entier sur 2 octets
Origin est un entier sans signe sur 2 octets
Width est un entier
Height est un entier
BytesPerLine est un entier sans signe
LinePadding est un entier sur 2 octets
BitsPerComponent est un entier sans signe sur 2 octets
ComponentsPerPixel est un entier sans signe sur 2 octets
BytesPerPixel est un entier sans signe sur 2 octets
Xdpi est un entier sans signe sur 2 octets
Ydpi est un entier sans signe sur 2 octets
TransparentIndex est un entier sur 2 octets
ColorUsed est un entier
ColorMap est un entier //pointeur sur structGFL_COLORMAP
Data est un entier //pointeur sur Data
Comment est un entier //pointeur sur Comment
MetaData est un entier //pointeur sur Metadata
FIN
strLoadParams est une structLOAD_PARAMS
EPointeurBitmap est un structBITMAP
INIT DE LA LIBRAIRIE :
eErr est un entier
eErr =3DAPI(sNomDLL,"gflLibraryInit")//eErr est egal =E0 0
Chargement de l'image :
eErr =3DAPI(sNomDLL,"gflLoadBitmap",
&szNomFichierSource,&EPointeurBitmap, &strLoadParams, "Null")
//eErr ici est egal =E0 0
EPointeurBitmap:Type //Valeur 7960
EPointeurBitmap:Origin //Valeur 1416
EPointeurBitmap:Width // Ensuite tous est =E0 0
EPointeurBitmap:Height
EPointeurBitmap:BytesPerLine
EPointeurBitmap:LinePadding
EPointeurBitmap:BitsPerComponent
EPointeurBitmap:ComponentsPerPixel
EPointeurBitmap:BytesPerPixel
EPointeurBitmap:Xdpi
EPointeurBitmap:Ydpi
EPointeurBitmap:TransparentIndex
EPointeurBitmap:ColorUsed
EPointeurBitmap:ColorMap
EPointeurBitmap:Data
EPointeurBitmap:Comment
EPointeurBitmap:MetaData
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Romain PETIT
a formulé ce samedi :
Bonjour à tous,
Bonjour,
J'aimerai réaliser un appli avec la dll de xnview(Utilisation non commercial à usage personnel) pour charger une image --> faire une rotation / redimensionnement / l'ajouter au presse papier et la recuperer sous windev pour l'afficher et eventuellement l'enregistrer et je bloque au niveau du chargement !!! j'ai utilisé le code de romain petit que je remerci pour son aide. D'aprés l'aide la dll si eErr = 0 alors pas d'erreur.
[...]
Si quelqu'un peut eclairer ma lanterne se serait sympa Merci à tous d'avance.
Plusieurs choses : - les structures en version 1.93 (celles que j'utilisais pour mon exemple) ne sont plus à jour par rapport à la version 2.80 en cours - Il faut charger les paramètres avant de charger l'image (gflGetDefaultLoadParams) - Quelle version de WD utilises-tu ?
A+
-- Romain PETIT contact : http://cerbermail.com/?O16kfXOFcq +-+ posté sur Usenet avec MesNews et non depuis un forum web +-+ news:fr.comp.developpement.agl.windev http://www.mesnews.net/ http://fr.wikipedia.org/wiki/Newsgroup
frederic.gandre@gmail.com a formulé ce samedi :
Bonjour à tous,
Bonjour,
J'aimerai réaliser un appli avec la dll de xnview(Utilisation non
commercial à usage personnel) pour charger une
image --> faire une rotation / redimensionnement / l'ajouter au presse
papier et la recuperer sous windev pour l'afficher et eventuellement
l'enregistrer et je bloque au niveau du chargement !!!
j'ai utilisé le code de romain petit que je remerci pour son aide.
D'aprés l'aide la dll si eErr = 0 alors pas d'erreur.
[...]
Si quelqu'un peut eclairer ma lanterne se serait sympa
Merci à tous d'avance.
Plusieurs choses :
- les structures en version 1.93 (celles que j'utilisais pour mon
exemple) ne sont plus à jour par rapport à la version 2.80 en cours
- Il faut charger les paramètres avant de charger l'image
(gflGetDefaultLoadParams)
- Quelle version de WD utilises-tu ?
A+
--
Romain PETIT
contact : http://cerbermail.com/?O16kfXOFcq
+-+ posté sur Usenet avec MesNews et non depuis un forum web +-+
news:fr.comp.developpement.agl.windev
http://www.mesnews.net/
http://fr.wikipedia.org/wiki/Newsgroup
J'aimerai réaliser un appli avec la dll de xnview(Utilisation non commercial à usage personnel) pour charger une image --> faire une rotation / redimensionnement / l'ajouter au presse papier et la recuperer sous windev pour l'afficher et eventuellement l'enregistrer et je bloque au niveau du chargement !!! j'ai utilisé le code de romain petit que je remerci pour son aide. D'aprés l'aide la dll si eErr = 0 alors pas d'erreur.
[...]
Si quelqu'un peut eclairer ma lanterne se serait sympa Merci à tous d'avance.
Plusieurs choses : - les structures en version 1.93 (celles que j'utilisais pour mon exemple) ne sont plus à jour par rapport à la version 2.80 en cours - Il faut charger les paramètres avant de charger l'image (gflGetDefaultLoadParams) - Quelle version de WD utilises-tu ?
A+
-- Romain PETIT contact : http://cerbermail.com/?O16kfXOFcq +-+ posté sur Usenet avec MesNews et non depuis un forum web +-+ news:fr.comp.developpement.agl.windev http://www.mesnews.net/ http://fr.wikipedia.org/wiki/Newsgroup
frederic.gandre
Bonjour, Je suis completement perdu plus je fais des essaies plus je me perd !!! J'utilise la version 12 de windev. Est-ce que vous pouvez verifier mes structures svp ? CONSTANT GFL_BINARY = 1 GFL_GREY=2 GFL_COLORS= 4 GFL_RGB GFL_RGBA 2 GFL_BGR d GFL_ABGR= 128 GFL_BGRA= 256 GFL_ARGB= 512 GFL_CMYK= 1024 GFL_TOP_LEFT =0 GFL_BOTTOM_LEFT= 2 GFL_TOP_RIGHT =1 GFL_BOTTOM_RIGHT= 3 GFL_CM_RGB=0 GFL_CM_GREY=1 GFL_CM_CMY=2 GFL_CM_CMYK=3 GFL_CM_YCBCR=4 GFL_CM_YUV16=5 GFL_CM_LAB=6 GFL_CM_LOGLUV=7 GFL_CM_LOGL=8 FIN structLOAD_CALLBACK est une structure Read est un entier sans signe Tell est un entier sans signe Seek est un entier sans signe FIN structGFL_COLORMAP est une structure Red est un entier sans signe sur 2 octets%6 Green est un entier sans signe sur 2 octets%6 Blue est un entier sans signe sur 2 octets%6
FIN
structBITMAP est une structure Type est un entier sur 2 octets Origin est un entier sans signe sur 2 octets Width est un entier Height est un entier BytesPerLine est un entier sans signe LinePadding est un entier sur 2 octets BitsPerComponent est un entier sans signe sur 2 octets ComponentsPerPixel est un entier sans signe sur 2 octets BytesPerPixel est un entier sans signe sur 2 octets Xdpi est un entier sans signe sur 2 octets Ydpi est un entier sans signe sur 2 octets TransparentIndex est un entier sur 2 octets ColorUsed est un entier ColorMap est un structGFL_COLORMAP Data est un entier //pointeur sur Data Comment est un entier //pointeur sur Comment MetaData est un entier //pointeur sur Metadata FIN
structLOAD_PARAMS est une structure Flags est un entier sans signe FormatIndex est un entier ImageWanted est un entier Origin est un entier sans signe sur 2 octets ColorModel est un structBITMAP LinePadding est un entier sans signe DefaultAlpha est un entier sans signe sur 1 octet Reserved1 est un entier sans signe sur 1 octet Reserved2 est un entier sans signe sur 2 octets Width est un entier Height est un entier Offset est un entier sans signe ChannelOrder est un entier sans signe sur 2 octets ChannelType est un entier sans signe sur 2 octets PcdBase est un entier sans signe sur 2 octets EpsDpi est un entier sans signe sur 2 octets EpsWidth est un entier EpsHeight est un entier Read est un structLOAD_CALLBACK Tell est un structLOAD_CALLBACK Seek est un structLOAD_CALLBACK
FIN
structFILE_INFORMATION est une structure Type est un structBITMAP Origin est un entier Width est un entier Height est un entier FormatIndex est un entier FormatName est une chaîne sur 8 Description est une chaîne Xdpi est un entier sans signe sur 2 octets Ydpi est un entier sans signe sur 2 octets BitsPerComponent est un entier sans signe sur 2 octets ComponentsPerPixel est un entier sans signe sur 2 octets NumberOfImages est un entier FileSize est un entier sans signe sur 4 octets ColorModel est un entier Compression est un entier CompressionDescription est une chaîne
FIN strLoadParams est une structLOAD_PARAMS EPointeurBitmap est un structBITMAP StrLOAD_CALLBACK est une structLOAD_CALLBACK StrFILE_INFORMATION est une structFILE_INFORMATION
Bonjour,
Je suis completement perdu plus je fais des essaies plus je me
perd !!!
J'utilise la version 12 de windev.
Est-ce que vous pouvez verifier mes structures svp ?
CONSTANT
GFL_BINARY = 1
GFL_GREY=2
GFL_COLORS= 4
GFL_RGB =16
GFL_RGBA =32
GFL_BGR =64
GFL_ABGR= 128
GFL_BGRA= 256
GFL_ARGB= 512
GFL_CMYK= 1024
GFL_TOP_LEFT =0
GFL_BOTTOM_LEFT= 2
GFL_TOP_RIGHT =1
GFL_BOTTOM_RIGHT= 3
GFL_CM_RGB=0
GFL_CM_GREY=1
GFL_CM_CMY=2
GFL_CM_CMYK=3
GFL_CM_YCBCR=4
GFL_CM_YUV16=5
GFL_CM_LAB=6
GFL_CM_LOGLUV=7
GFL_CM_LOGL=8
FIN
structLOAD_CALLBACK est une structure
Read est un entier sans signe
Tell est un entier sans signe
Seek est un entier sans signe
FIN
structGFL_COLORMAP est une structure
Red est un entier sans signe sur 2 octets=256
Green est un entier sans signe sur 2 octets=256
Blue est un entier sans signe sur 2 octets=256
FIN
structBITMAP est une structure
Type est un entier sur 2 octets
Origin est un entier sans signe sur 2 octets
Width est un entier
Height est un entier
BytesPerLine est un entier sans signe
LinePadding est un entier sur 2 octets
BitsPerComponent est un entier sans signe sur 2 octets
ComponentsPerPixel est un entier sans signe sur 2 octets
BytesPerPixel est un entier sans signe sur 2 octets
Xdpi est un entier sans signe sur 2 octets
Ydpi est un entier sans signe sur 2 octets
TransparentIndex est un entier sur 2 octets
ColorUsed est un entier
ColorMap est un structGFL_COLORMAP
Data est un entier //pointeur sur Data
Comment est un entier //pointeur sur Comment
MetaData est un entier //pointeur sur Metadata
FIN
structLOAD_PARAMS est une structure
Flags est un entier sans signe
FormatIndex est un entier=17
ImageWanted est un entier
Origin est un entier sans signe sur 2 octets
ColorModel est un structBITMAP
LinePadding est un entier sans signe
DefaultAlpha est un entier sans signe sur 1 octet
Reserved1 est un entier sans signe sur 1 octet
Reserved2 est un entier sans signe sur 2 octets
Width est un entier
Height est un entier
Offset est un entier sans signe
ChannelOrder est un entier sans signe sur 2 octets
ChannelType est un entier sans signe sur 2 octets
PcdBase est un entier sans signe sur 2 octets
EpsDpi est un entier sans signe sur 2 octets
EpsWidth est un entier
EpsHeight est un entier
Read est un structLOAD_CALLBACK
Tell est un structLOAD_CALLBACK
Seek est un structLOAD_CALLBACK
FIN
structFILE_INFORMATION est une structure
Type est un structBITMAP
Origin est un entier
Width est un entier
Height est un entier
FormatIndex est un entier
FormatName est une chaîne sur 8
Description est une chaîne
Xdpi est un entier sans signe sur 2 octets
Ydpi est un entier sans signe sur 2 octets
BitsPerComponent est un entier sans signe sur 2 octets
ComponentsPerPixel est un entier sans signe sur 2 octets
NumberOfImages est un entier
FileSize est un entier sans signe sur 4 octets
ColorModel est un entier
Compression est un entier
CompressionDescription est une chaîne
FIN
strLoadParams est une structLOAD_PARAMS
EPointeurBitmap est un structBITMAP
StrLOAD_CALLBACK est une structLOAD_CALLBACK
StrFILE_INFORMATION est une structFILE_INFORMATION
Bonjour, Je suis completement perdu plus je fais des essaies plus je me perd !!! J'utilise la version 12 de windev. Est-ce que vous pouvez verifier mes structures svp ? CONSTANT GFL_BINARY = 1 GFL_GREY=2 GFL_COLORS= 4 GFL_RGB GFL_RGBA 2 GFL_BGR d GFL_ABGR= 128 GFL_BGRA= 256 GFL_ARGB= 512 GFL_CMYK= 1024 GFL_TOP_LEFT =0 GFL_BOTTOM_LEFT= 2 GFL_TOP_RIGHT =1 GFL_BOTTOM_RIGHT= 3 GFL_CM_RGB=0 GFL_CM_GREY=1 GFL_CM_CMY=2 GFL_CM_CMYK=3 GFL_CM_YCBCR=4 GFL_CM_YUV16=5 GFL_CM_LAB=6 GFL_CM_LOGLUV=7 GFL_CM_LOGL=8 FIN structLOAD_CALLBACK est une structure Read est un entier sans signe Tell est un entier sans signe Seek est un entier sans signe FIN structGFL_COLORMAP est une structure Red est un entier sans signe sur 2 octets%6 Green est un entier sans signe sur 2 octets%6 Blue est un entier sans signe sur 2 octets%6
FIN
structBITMAP est une structure Type est un entier sur 2 octets Origin est un entier sans signe sur 2 octets Width est un entier Height est un entier BytesPerLine est un entier sans signe LinePadding est un entier sur 2 octets BitsPerComponent est un entier sans signe sur 2 octets ComponentsPerPixel est un entier sans signe sur 2 octets BytesPerPixel est un entier sans signe sur 2 octets Xdpi est un entier sans signe sur 2 octets Ydpi est un entier sans signe sur 2 octets TransparentIndex est un entier sur 2 octets ColorUsed est un entier ColorMap est un structGFL_COLORMAP Data est un entier //pointeur sur Data Comment est un entier //pointeur sur Comment MetaData est un entier //pointeur sur Metadata FIN
structLOAD_PARAMS est une structure Flags est un entier sans signe FormatIndex est un entier ImageWanted est un entier Origin est un entier sans signe sur 2 octets ColorModel est un structBITMAP LinePadding est un entier sans signe DefaultAlpha est un entier sans signe sur 1 octet Reserved1 est un entier sans signe sur 1 octet Reserved2 est un entier sans signe sur 2 octets Width est un entier Height est un entier Offset est un entier sans signe ChannelOrder est un entier sans signe sur 2 octets ChannelType est un entier sans signe sur 2 octets PcdBase est un entier sans signe sur 2 octets EpsDpi est un entier sans signe sur 2 octets EpsWidth est un entier EpsHeight est un entier Read est un structLOAD_CALLBACK Tell est un structLOAD_CALLBACK Seek est un structLOAD_CALLBACK
FIN
structFILE_INFORMATION est une structure Type est un structBITMAP Origin est un entier Width est un entier Height est un entier FormatIndex est un entier FormatName est une chaîne sur 8 Description est une chaîne Xdpi est un entier sans signe sur 2 octets Ydpi est un entier sans signe sur 2 octets BitsPerComponent est un entier sans signe sur 2 octets ComponentsPerPixel est un entier sans signe sur 2 octets NumberOfImages est un entier FileSize est un entier sans signe sur 4 octets ColorModel est un entier Compression est un entier CompressionDescription est une chaîne
FIN strLoadParams est une structLOAD_PARAMS EPointeurBitmap est un structBITMAP StrLOAD_CALLBACK est une structLOAD_CALLBACK StrFILE_INFORMATION est une structFILE_INFORMATION
Je me permet de faire un Up pour savoir si une ame charitable peut m'aider ?
Romain PETIT
a présenté l'énoncé suivant :
Je me permet de faire un Up pour savoir si une ame charitable peut m'aider ?
La doc n'est plus à jour... En récupérant les exemples en VB6, on peut voir que les structures ont évoluées...
Tu peux peut-être préférer une autre solution, par exemple à l'aide de wia automation (petit runtime à télécharger) wiaut.dll http://msdn.microsoft.com/en-us/library/ms630827(VS.85).aspx
Par exemple, pour faire une rotation de 90° http://msdn.microsoft.com/en-us/library/ms630819(VS.85).aspx Ca donne en WD (j'ai testé) :
szImageSource est une chaîne ASCIIZ sur 255 = "D:Mes documentsMes imagesessai.bmp" szImageDest est une chaîne ASCIIZ sur 255 = "D:Mes documentsMes imagesessai90.bmp" oFichierImage est un objet Automation dynamique oProcessImage est un objet Automation dynamique oFichierImage = allouer un objet Automation "WIA.ImageFile" oProcessImage = allouer un objet Automation "WIA.ImageProcess" oFichierImage>>LoadFile(szImageSource) oProcessImage>>Filters>>Add(oProcessImage>>FilterInfos("RotateFlip")>>FilterID) oProcessImage>>Filters(1)>>Properties("RotationAngle")>>Value = 90 oFichierImage = oProcessImage>>Apply(oFichierImage) oFichierImage>>SaveFile(szImageDest) Multitâche(-1) libérer oFichierImage libérer oProcessImage
A+
-- Romain PETIT contact : http://cerbermail.com/?O16kfXOFcq +-+ posté sur Usenet avec MesNews et non depuis un forum web +-+ news:fr.comp.developpement.agl.windev http://www.mesnews.net/ http://fr.wikipedia.org/wiki/Newsgroup
frederic.gandre@gmail.com a présenté l'énoncé suivant :
Je me permet de faire un Up pour savoir si une ame charitable peut
m'aider ?
La doc n'est plus à jour...
En récupérant les exemples en VB6, on peut voir que les structures ont
évoluées...
Tu peux peut-être préférer une autre solution, par exemple à l'aide de
wia automation (petit runtime à télécharger) wiaut.dll
http://msdn.microsoft.com/en-us/library/ms630827(VS.85).aspx
Par exemple, pour faire une rotation de 90°
http://msdn.microsoft.com/en-us/library/ms630819(VS.85).aspx
Ca donne en WD (j'ai testé) :
szImageSource est une chaîne ASCIIZ sur 255 = "D:Mes documentsMes
imagesessai.bmp"
szImageDest est une chaîne ASCIIZ sur 255 = "D:Mes documentsMes
imagesessai90.bmp"
oFichierImage est un objet Automation dynamique
oProcessImage est un objet Automation dynamique
oFichierImage = allouer un objet Automation "WIA.ImageFile"
oProcessImage = allouer un objet Automation "WIA.ImageProcess"
oFichierImage>>LoadFile(szImageSource)
oProcessImage>>Filters>>Add(oProcessImage>>FilterInfos("RotateFlip")>>FilterID)
oProcessImage>>Filters(1)>>Properties("RotationAngle")>>Value = 90
oFichierImage = oProcessImage>>Apply(oFichierImage)
oFichierImage>>SaveFile(szImageDest)
Multitâche(-1)
libérer oFichierImage
libérer oProcessImage
A+
--
Romain PETIT
contact : http://cerbermail.com/?O16kfXOFcq
+-+ posté sur Usenet avec MesNews et non depuis un forum web +-+
news:fr.comp.developpement.agl.windev
http://www.mesnews.net/
http://fr.wikipedia.org/wiki/Newsgroup
Je me permet de faire un Up pour savoir si une ame charitable peut m'aider ?
La doc n'est plus à jour... En récupérant les exemples en VB6, on peut voir que les structures ont évoluées...
Tu peux peut-être préférer une autre solution, par exemple à l'aide de wia automation (petit runtime à télécharger) wiaut.dll http://msdn.microsoft.com/en-us/library/ms630827(VS.85).aspx
Par exemple, pour faire une rotation de 90° http://msdn.microsoft.com/en-us/library/ms630819(VS.85).aspx Ca donne en WD (j'ai testé) :
szImageSource est une chaîne ASCIIZ sur 255 = "D:Mes documentsMes imagesessai.bmp" szImageDest est une chaîne ASCIIZ sur 255 = "D:Mes documentsMes imagesessai90.bmp" oFichierImage est un objet Automation dynamique oProcessImage est un objet Automation dynamique oFichierImage = allouer un objet Automation "WIA.ImageFile" oProcessImage = allouer un objet Automation "WIA.ImageProcess" oFichierImage>>LoadFile(szImageSource) oProcessImage>>Filters>>Add(oProcessImage>>FilterInfos("RotateFlip")>>FilterID) oProcessImage>>Filters(1)>>Properties("RotationAngle")>>Value = 90 oFichierImage = oProcessImage>>Apply(oFichierImage) oFichierImage>>SaveFile(szImageDest) Multitâche(-1) libérer oFichierImage libérer oProcessImage
A+
-- Romain PETIT contact : http://cerbermail.com/?O16kfXOFcq +-+ posté sur Usenet avec MesNews et non depuis un forum web +-+ news:fr.comp.developpement.agl.windev http://www.mesnews.net/ http://fr.wikipedia.org/wiki/Newsgroup
Gilles le nouveau
a couché sur son écran :
Je me permet de faire un Up pour savoir si une ame charitable peut m'aider ?
Je ne peux pas t'aider pour Xnview , juste pour te rapeller que sur unsenet on ne peux pas faire un UP ;)
frederic.gandre@gmail.com a couché sur son écran :
Je me permet de faire un Up pour savoir si une ame charitable peut
m'aider ?
Je ne peux pas t'aider pour Xnview , juste pour te rapeller que sur
unsenet on ne peux pas faire un UP ;)