VintaSoft Twain .NET SDK Discussions
Questions, comments and suggestions concerning VintaSoft Twain .NET SDK.
Board index < VintaSoft Twain < VintaSoft Twain .NET SDK Discussions
private void btnDigitaliza_Click(object sender, EventArgs e)
{
btnDigitaliza.Enabled = false;
btnSalir.Enabled = false;
deviceManager.IsTwain2Compatible = true;
deviceManager.Open();
string deviceName = "KODAK Scanner: i900";
device = deviceManager.Devices.Find(deviceName);
if (device == null)
{
_isImageAcquiring = false;
MessageBox.Show("El driver del dispositivo " + deviceName + " no se encuentra en el sistema, favor realizar la instalaciГіn del driver", "Administrador de Dispositivos");
btnDigitaliza.Enabled = true;
btnSalir.Enabled = true;
}
else
{
device.ShowUI = false;
device.DisableAfterAcquire = true;
device.Open();
device.DocumentFeeder.DuplexEnabled = true;
device.TransferMode = TransferMode.Memory;
device.PixelType = PixelType.Gray;
device.UnitOfMeasure = UnitOfMeasure.Inches;
device.Resolution = new Resolution(300.0f, 300.0f);
///Nombre del documento
string nEquipo = Environment.MachineName;
string fecha = (DateTime.Now).ToString("yyyyMMdd_HHmmss");
string nDocumento="Hipotecario_"+nEquipo+"_"+fecha+".pdf";
///
///Crear directorio para almacenar archivos
string directorio = @"C:\DocumentoEphesoft";
if (!System.IO.Directory.Exists(directorio))
{
System.IO.Directory.CreateDirectory(directorio);
}
///
string pPDF = System.IO.Path.Combine(directorio, nDocumento);
if (device.HasFeeder)
{
device.DocumentFeeder.Enabled = true;
device.XferCount = -1;
if (device.DocumentFeeder.DuplexMode != DuplexMode.None)
{
device.DocumentFeeder.DuplexEnabled = true;
if (device.DocumentFeeder.PaperDetectable)
{
if (device.DocumentFeeder.Loaded)
device.Acquire();
}
}
else
{
device.Acquire();
}
}
AcquireModalState acquireModalState = AcquireModalState.None;
AcquiredImage acquiredImage;
do
{
acquireModalState = device.AcquireModal();
switch (acquireModalState)
{
case AcquireModalState.ImageAcquired:
// obtener una referencia de la imagen adquirida por el dispositivo
acquiredImage = device.AcquiredImage;
// detectar bordes
ProcessAcquiredImage(acquiredImage);
// agregar una imagen que no sea blanca al multipagina TIFF
// (0.01f) = 1%
if (!acquiredImage.IsBlank(0.03f))
acquiredImage.Save(pPDF);
// Disponer de la imagen adquirida
acquiredImage.Dispose();
break;
}
}
while (acquireModalState != AcquireModalState.None);
device.Close();
deviceManager.Close();
string documento = Path.Combine(directorio, nDocumento);
if (File.Exists(pPDF))
{
string batch = "BC37";
WebService ws = new WebService();
string data=ws.subirDocumento(batch, pPDF);
//Delimitador de respuesta del web service
char delimitador = '_';
string[] words = data.Split(delimitador);
string codigo = words[0];
string batchid = words[1];
string msjerror = words[2];
//Validacion de la respuesta y luego entregarla al usuario
if (codigo == "200")
{
txtMensaje.Text = "Batch " + batch + ": Lote cargado correctamente en Ephesoft";
}
else if (codigo == "403")
{
txtMensaje.Text = "Acceso no autorizado al sistema de Ephesoft. "+msjerror;
}
else if (codigo == "422")
{
txtMensaje.Text = "Entidad del documento no procesable. "+msjerror;
}
else if (codigo == "500")
{
txtMensaje.Text = "Error interno del servidor. "+msjerror;
}
else
{
txtMensaje.Text = "Favor digitalice nuevamente el documento";
}
txtMensaje.Text = "El archivo requerido se pudo enviar Ephesoft";
txtMensaje.Visible = true;
}
else
{
txtMensaje.Text = "El archivo requerido no se pudo digitalizar, por favor intente nuevamente";
txtMensaje.Visible = true;
}
btnSalir.Enabled = true;
btnDigitaliza.Enabled = true;
}
}
I need to be able to visualize the image in a picture box of the current sheet that is being scannedAlso SDK has WinForms demos, which demonstrate how to acquire images from scanner and preview images in WinForms application. Please read about available demos here: https://www.vintasoft.com/docs/vstwain- ... rview.html
the scanner has the function of Perfect Page which allows to automatically rotate the digitized image that function does not count if Vintasoft without using the ShowUITWAIN driver provides custom functionality using custom capabilities. Please read how to get information about custom capabilities here: https://www.vintasoft.com/forums/viewto ... =25&t=2366