TWAIN : NUMÉRISER UN DOCUMENT DEPUIS UN SCANNER OU UN APPAREIL PHOTO NUMÉRIQUE
kacola
Messages postés30Date d'inscriptionjeudi 27 mai 2004StatutMembreDernière intervention10 janvier 2008
-
13 juil. 2004 à 12:01
Hamridoudou -
6 mars 2019 à 21:00
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
jaffael
Messages postés14Date d'inscriptionjeudi 28 juin 2007StatutMembreDernière intervention31 août 2009 3 juil. 2008 à 11:46
Bonjour,
Merci beaucoup pour ce code,
J'aimerais savoir, si il y a des fonctions Twain pour lire le nom du scanner ou son numéro de série.
Merci de votre aide.
paloo0
Messages postés3Date d'inscriptionsamedi 24 février 2007StatutMembreDernière intervention10 janvier 2011 11 févr. 2008 à 15:19
Je suis comme stephane j'aimerais passer une resolution
Comment faut faire ?
Par contre je n'arrive pas à récupérer la résolution ou à la passer en utilisant les outils 'TWAIN_GetCurrentResolution' et 'TWAIN_SetCurrentResolution'.
rj88
Messages postés1Date d'inscriptionvendredi 2 juin 2006StatutMembreDernière intervention31 octobre 2007 31 oct. 2007 à 17:58
Merci beaucoup !!!
Depuis 2 jours que je travaillais pour comprendre où j'avais une erreur...
Pour infos: si vous avez un message d'erreur Unable to open Source Manager, et que la DLL TWAIN_32 est bien dans c:\windows, vérifier la valeur de renvoi de getwindowsdirectory, pour moi, c'était c:\documents and settings\rjanot\windows...
Merci encore !
kacola
Messages postés30Date d'inscriptionjeudi 27 mai 2004StatutMembreDernière intervention10 janvier 2008 9 mai 2007 à 13:09
Bonjour,
Merci beaucoup pour votre code, il marche impec chez moi.
Mais j'ai besoin de votre aide:
Je souhaite scanner avec toujours les mêmes paramètres :
* Chargeur de document ( et pas plateau)
* A5
* 300 dpi
* Noir et blanc
* luminosité -10
Est-il possible de ne pas faire apparaître la boîte de dialogue et d'utiliser directement tous ces paramètres ?
Merci de votre aide.
Stephane_menard
Messages postés13Date d'inscriptionlundi 13 juin 2005StatutMembreDernière intervention11 mai 2006 6 mars 2007 à 08:39
Salut,
bonne source, j'arrive à acquérir de n'importe quel scanner.
Par contre je n'arrive pas à récupérer la résolution ou à la passer en utilisant les outils 'TWAIN_GetCurrentResolution' et 'TWAIN_SetCurrentResolution'.
Une idée ?
Merci.
cs_MAURICIO
Messages postés2106Date d'inscriptionmardi 10 décembre 2002StatutModérateurDernière intervention15 décembre 20145 31 mai 2005 à 12:28
Salut Tonkaroto, j' ai le même problème que toi.
Dans button1click remplace le code par le suivant:
procedure TForm1.Button1Click(Sender: TObject);
Var ImgTmp:TImage;
n:Integer;
TestDib:HBitmap;
begin
ImgTmp:=TImage.Create(Self);
TWAIN_SelectImageSource(Form1.Handle); //Affichage de la boite de dialogue de sélection de la source
TWAIN_AcquireNative(Form1.Handle,0); //Acquérit l'image
n:=TWAIN_GetNumDibs; //Récupère le nombre d'image acquérit
if n>=1 then
begin
TestDib:=TWAIN_GetDib(0); //Handle de la source
CopyDibIntoImage(TestDib,ImgTmp); //Tansforme l'image DIB en Bitmap
TWAIN_FreeNative(TestDib); //Libère la mémoire
//Affiche dans "Image1" l'image "ImgTmp"
Image1.Picture.Bitmap.Width:=ImgTmp.Width;
Image1.Picture.Bitmap.Height:=ImgTmp.Height;
Image1.Picture:=ImgTmp.Picture;
end;
end;
A+
tonkaroto
Messages postés3Date d'inscriptionlundi 25 août 2003StatutMembreDernière intervention11 février 2005 11 févr. 2005 à 00:39
j'ai une erreur, en fait quand je lance le programme
il fait une acces violation adresse 0000..
c'est au moment ou il essaye de creer la fenetre de selection de source :
HWND CreateProxyWindow(void)
{
HWND hwnd;
hwnd = CreateWindow("STATIC", // class
"Acquire Proxy", // title
WS_POPUPWINDOW | WS_VISIBLE, // style
CW_USEDEFAULT, CW_USEDEFAULT, // x, y
CW_USEDEFAULT, CW_USEDEFAULT, // width, height
HWND_DESKTOP, // parent window
NULL, // hmenu
hinstLib, // hinst
NULL); // lpvparam
return hwnd;
} // CreateProxyWindow
y a t il quelque chose que j'ai pas installé ??
kacola
Messages postés30Date d'inscriptionjeudi 27 mai 2004StatutMembreDernière intervention10 janvier 2008 13 juil. 2004 à 12:01
Où peut-on trouver une aide ou des explications sur les fonctions et procédures du composant TWAIN?
Merci beaucoup.
6 mars 2019 à 21:00
3 juil. 2008 à 11:46
Merci beaucoup pour ce code,
J'aimerais savoir, si il y a des fonctions Twain pour lire le nom du scanner ou son numéro de série.
Merci de votre aide.
11 févr. 2008 à 15:19
Comment faut faire ?
Par contre je n'arrive pas à récupérer la résolution ou à la passer en utilisant les outils 'TWAIN_GetCurrentResolution' et 'TWAIN_SetCurrentResolution'.
31 oct. 2007 à 17:58
Depuis 2 jours que je travaillais pour comprendre où j'avais une erreur...
Pour infos: si vous avez un message d'erreur Unable to open Source Manager, et que la DLL TWAIN_32 est bien dans c:\windows, vérifier la valeur de renvoi de getwindowsdirectory, pour moi, c'était c:\documents and settings\rjanot\windows...
Merci encore !
9 mai 2007 à 13:09
Merci beaucoup pour votre code, il marche impec chez moi.
Mais j'ai besoin de votre aide:
Je souhaite scanner avec toujours les mêmes paramètres :
* Chargeur de document ( et pas plateau)
* A5
* 300 dpi
* Noir et blanc
* luminosité -10
Est-il possible de ne pas faire apparaître la boîte de dialogue et d'utiliser directement tous ces paramètres ?
Merci de votre aide.
6 mars 2007 à 08:39
bonne source, j'arrive à acquérir de n'importe quel scanner.
Par contre je n'arrive pas à récupérer la résolution ou à la passer en utilisant les outils 'TWAIN_GetCurrentResolution' et 'TWAIN_SetCurrentResolution'.
Une idée ?
Merci.
31 mai 2005 à 12:28
Dans button1click remplace le code par le suivant:
procedure TForm1.Button1Click(Sender: TObject);
Var ImgTmp:TImage;
n:Integer;
TestDib:HBitmap;
begin
ImgTmp:=TImage.Create(Self);
TWAIN_SelectImageSource(Form1.Handle); //Affichage de la boite de dialogue de sélection de la source
TWAIN_AcquireNative(Form1.Handle,0); //Acquérit l'image
n:=TWAIN_GetNumDibs; //Récupère le nombre d'image acquérit
if n>=1 then
begin
TestDib:=TWAIN_GetDib(0); //Handle de la source
CopyDibIntoImage(TestDib,ImgTmp); //Tansforme l'image DIB en Bitmap
TWAIN_FreeNative(TestDib); //Libère la mémoire
//Affiche dans "Image1" l'image "ImgTmp"
Image1.Picture.Bitmap.Width:=ImgTmp.Width;
Image1.Picture.Bitmap.Height:=ImgTmp.Height;
Image1.Picture:=ImgTmp.Picture;
end;
end;
A+
11 févr. 2005 à 00:39
il fait une acces violation adresse 0000..
c'est au moment ou il essaye de creer la fenetre de selection de source :
HWND CreateProxyWindow(void)
{
HWND hwnd;
hwnd = CreateWindow("STATIC", // class
"Acquire Proxy", // title
WS_POPUPWINDOW | WS_VISIBLE, // style
CW_USEDEFAULT, CW_USEDEFAULT, // x, y
CW_USEDEFAULT, CW_USEDEFAULT, // width, height
HWND_DESKTOP, // parent window
NULL, // hmenu
hinstLib, // hinst
NULL); // lpvparam
return hwnd;
} // CreateProxyWindow
y a t il quelque chose que j'ai pas installé ??
13 juil. 2004 à 12:01
Merci beaucoup.