Povia e il concerto annullato: ‘etichettato come cantante di destra’
Musica: il cantante Povia polemico con l’estremizzazione: ‘il mio concerto è stato annullato, perchè etichettato come cantante di destra’ Il ...
Musica: il cantante Povia polemico con l’estremizzazione: ‘il mio concerto è stato annullato, perchè etichettato come cantante di destra’ Il ...
Un sondaggio ha evidenziato ancora una volta, quello che purtroppo già da qualche anno era venuto alla luce: La Gen ...
Un ritrovamento ha scosso il mondo dell’archeologia: scoperto il segreto della ‘Mummia urlante’ Nel 1935, una spedizione archeologica a Deir ...
Il caffè può essere un alleato quotidiano per il benessere fisico dell’intestino, selezionando i batteri buoni del microbiota, ma come? ...
Carceri, il trend è allucinante. dal 2014 a oggi sono stati oltre 600 i suicidi e si rischia un triste ...
Dalla paralisi all’infarto, cosa rischi se ti colpisce un fulmine In Italia, la stagione estiva porta con sé non solo ...
Tra le varie cose nuove fatte ultimamente, ho dovuto anche scrivere un metodo che acquisisce le immagini da scanner. Per l’interfacciamento con uno scanner non professionale i metodi sono 2, o si utilizzano i driver TWAIN installati con lo scanner oppure utilizzare il componente Microsoft Windows Image Acquisition Library v2.0 (brevemente WIA). Il metodo più semplice e veloce è l’utilizzo di questo componente che di default dovrebbe essere installato in tutte le macchine Windows XP (ma lo trovate anche in altri sistemi operativi – io il test l’ho fatto su una macchina con Windows 7 a 64 bit), ma se no lo potete scaricare e registrare da questo LINK.
Una volta registrato il componente con il comando regsvr32 (ricordate che questo è un COM quindi non può essere utilizzato da programmi che girano con il target CPU a x64), potete referenziarlo sul vostro progetto sotto la scheda COM (Vedi immagine sotto):
Una volta referenziato potete importarlo nel progetto scrivendo:
Using WIA;
Il metodo di acquisizione vuole in ingresso delle costanti per specificargli il formato del file in uscita, e le possibilità sono:
Adesso andiamo a scrivere al inizio della nostra classe le 5 costanti:
const string WIABMP = “{B96B3CAB-0728-11D3-9D7B-0000F81EF32E}“;
const string WIAPNG = “{B96B3CAF-0728-11D3-9D7B-0000F81EF32E}“;
const string WIAGIF = “{B96B3CB0-0728-11D3-9D7B-0000F81EF32E}“;
const string WIAJPEG = “{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}“;
const string WIATIFF = “{B96B3CB1-0728-11D3-9D7B-0000F81EF32E}“;
Nella vostra funzione di Scansione mi immagino che in input vorrete il formato del immagine scansionata ed il path completo del file da salvare, quindi andiamo a sviluppare il codice per l’acquisizione delle immagini da scanner:
ImageFile image = null;
WIA.CommonDialog dialog = new WIA.CommonDialog();
switch (OutFormat.ToUpper())
{
case “PNG”:
image = dialog.ShowAcquireImage(WiaDeviceType.ScannerDeviceType,WiaImageIntent.ColorIntent,WiaImageBias.MinimizeSize, WIAPNG , false, true,false);
break;
case “GIF”:
image = dialog.ShowAcquireImage(WiaDeviceType.ScannerDeviceType,WiaImageIntent.ColorIntent,WiaImageBias.MinimizeSize, WIAGIF , false, true,false);
break;
case “JPEG”:
image = dialog.ShowAcquireImage(WiaDeviceType.ScannerDeviceType,WiaImageIntent.ColorIntent,WiaImageBias.MinimizeSize, WIAJPEG , false, true,false);
break;
case “BMP”:
image = dialog.ShowAcquireImage(WiaDeviceType.ScannerDeviceType,WiaImageIntent.ColorIntent,WiaImageBias.MinimizeSize, WIABMP, false, true,false);
break;
case “TIFF”:
image = dialog.ShowAcquireImage(WiaDeviceType.ScannerDeviceType,WiaImageIntent.ColorIntent,WiaImageBias.MinimizeSize, WIATIFF , false, true,false);
break;
}
image.SaveFile(OutFile);
I parametri del metodo ShowAcquireImage sono:
Questo metodo ritorna un tipo ImageFile che può essere utilizzato per salvare poi il file sul disco tramite il metodo SaveFile.
Direi che questo è tutto. Diciamo che questo è un modo molto semplice e veloce per acquisire le immagini da Scanner. Che ne pensate?
© 2024 G Tech Group S.R.L.S. – Via di Gagia 22, 38086 Giustino (TN) – P.IVA 02743570224 – REA TN – 246638 – SDI SZLUBAI -PEC gtechgroupsrls@postacert.eu