TWAIN : NUMÉRISER UN DOCUMENT DEPUIS UN SCANNER OU UN APPAREIL PHOTO NUMÉRIQUE

Messages postés
30
Date d'inscription
jeudi 27 mai 2004
Statut
Membre
Dernière intervention
10 janvier 2008
- - Dernière réponse :  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.

https://codes-sources.commentcamarche.net/source/19267-twain-numeriser-un-document-depuis-un-scanner-ou-un-appareil-photo-numerique

Afficher la suite 
kacola
Messages postés
30
Date d'inscription
jeudi 27 mai 2004
Statut
Membre
Dernière intervention
10 janvier 2008
-
Où peut-on trouver une aide ou des explications sur les fonctions et procédures du composant TWAIN?
Merci beaucoup.
tonkaroto
Messages postés
3
Date d'inscription
lundi 25 août 2003
Statut
Membre
Dernière intervention
11 février 2005
-
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é ??
cs_MAURICIO
Messages postés
2233
Date d'inscription
mardi 10 décembre 2002
Statut
Modérateur
Dernière intervention
15 décembre 2014
5 -
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+
Stephane_menard
Messages postés
13
Date d'inscription
lundi 13 juin 2005
Statut
Membre
Dernière intervention
11 mai 2006
-
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.
kacola
Messages postés
30
Date d'inscription
jeudi 27 mai 2004
Statut
Membre
Dernière intervention
10 janvier 2008
-
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.