Capture the image with a scanner and save the captured image.

 

IMPORTANT:
On a 64 bit operating system, make sure your TWAIN scan driver supports 64 bit when using a target platform of AnyCpu or x64!

 

Example Code

(1) Display the image captured from the scanner's and save the image.
(2)Save images scanned from an automatic document feeder (ADF).
* In these examples, only the minimum code examples are shown. Please refer to the reference and sample for various other scan-related settings.

[Visual Basic.NET]

'(1) Save the image captured from the document plate
'Click Button1 to execute scan

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     'Suppress the scanner's UI and scan the document plate
     ImageKit1.Scan.UserInterface = Newtone.ImageKit.ScanUserInterface.Suppress
     ImageKit1.Scan.Mode = Newtone.ImageKit.ScanMode.DocumentPlate

      Dim ret As Boolean = ImageKit1.Scan.Execute()
     If Not ret Then
          MessageBox.Show("The scan failed. ErrorStauts = " + ImageKit1.ErrorStatus.ToString())
     End If
End Sub

'Display the image captured by the ImageKit control's AfterScan event.
Private Sub ImageKit1_AfterScan(ByVal sender As Object, ByVal e As Newtone.ImageKit.AfterScanEventArgs) Handles ImageKit1.AfterScan
     ImageKit1.Image = e.Bitmap1
     ImageKit1.DisplayMode = Newtone.ImageKit.Win.DisplayMode.Scale
     ImageKit1.Display()
End Sub

'Click Button2 to display the save file dialog and save
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     If Not ImageKit1.File.SaveFileDialog() Then Return
     'Save as PNG
     ImageKit1.File.SaveImageToFile(Newtone.ImageKit.SaveFileType.SavePNG, Nothing)
End Sub

'(2) Save images scanned by ADF
'Click Button1 to execute scan
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     'Suppress the manufacturer's UI and scan from the ADF (single-sided)
     ImageKit1.Scan.UserInterface = Newtone.ImageKit.ScanUserInterface.Suppress
     ImageKit1.Scan.Mode = Newtone.ImageKit.ScanMode.ADFOneSide

     Dim ret As Boolean = ImageKit1.Scan.Execute()
     If Not ret Then
          MessageBox.Show("The scan failed. ErrorStauts = " + ImageKit1.ErrorStatus.ToString())
     End If
End Sub

'In the AfterScan event of the ImageKit control, save the captured image continuously
Private Sub ImageKit1_AfterScan(ByVal sender As Object, ByVal e As Newtone.ImageKit.AfterScanEventArgs) Handles ImageKit1.AfterScan
     ImageKit1.Image = e.Bitmap1

     'File name to save (example of numbering in the order of importing at the end of the file name)
     ImageKit1.File.FileName = "scanned_image" + e.ImageNumber.ToString() + ".jpg"
     'Save as JPG
     ImageKit1.File.SaveImageToFile(Newtone.ImageKit.SaveFileType.SaveJPG, Nothing)
End Sub

[Visual C#.NET]

// (1) Save the image imported from the document plate
// Click Button1 to execute scan
private void button1_Click(object sender, EventArgs e)
{
     //Suppress the manufacturer's UI and scan from the document plate
     ImageKit1.Scan.UserInterface = Newtone.ImageKit.ScanUserInterface.Suppress;
     ImageKit1.Scan.Mode = Newtone.ImageKit.ScanMode.DocumentPlate;

     bool ret = ImageKit1.Scan.Execute();
     if (!ret)
     {
          MessageBox.Show("The scan failed. ErrorStatus = " + ImageKit1.ErrorStatus.ToString());
     }
}

//Display the image captured by the ImageKit control's AfterScan event in the ImageKit control
private void imageKit1_AfterScan(object sender, Newtone.ImageKit.AfterScanEventArgs e)
{
     ImageKit1.Image = e.Bitmap1;
     ImageKit1.DisplayMode = Newtone.ImageKit.Win.DisplayMode.Scale;
     ImageKit1.Display();
}

// Click Button2 to display the save file dialog and save
private void button2_Click(object sender, EventArgs e)
{
     if (!ImageKit1.File.SaveFileDialog())
          return;
     //Save as PNG
     ImageKit1.File.SaveImageToFile(Newtone.ImageKit.SaveFileType.SavePNG, null);
}

//(2)Save images scanned from an ADF
// Click Button1 to execute scan
private void button1_Click(object sender, EventArgs e)
{
     //Suppress the manufacturer's UI and scan from the ADF
     ImageKit1.Scan.UserInterface = Newtone.ImageKit.ScanUserInterface.Suppress;
     ImageKit1.Scan.Mode = Newtone.ImageKit.ScanMode.ADFOneSide;

     bool ret = ImageKit1.Scan.Execute();
     if (!ret)
     {
          MessageBox.Show("The scan failed. ErrorStauts = " + ImageKit1.ErrorStatus.ToString());
     }
}

//In the AfterScan event of the ImageKit control, continue to save the captured image
private void imageKit1_AfterScan(object sender, Newtone.ImageKit.AfterScanEventArgs e)
{
     ImageKit1.Image = e.Bitmap1;

     //File name to save (example of numbering at the end of the file name in the order of importing)
     ImageKit1.File.FileName = "scanned_image" + e.ImageNumber.ToString() + ".jpg";
     //Save as JPG
     ImageKit1.File.SaveImageToFile(Newtone.ImageKit.SaveFileType.SaveJPG, null);
}

Relevant Properties

ImageKit.Scan.UserInterface
ImageKit.Scan.Mode

Relevant Methods

ImageKit.Scan.Execute

Relevant Events

ImageKit.AfterScan

 

For other scan-related settings, see the other scan properties below and refer to the scan sample projects
ImageKit.Scan Members

The ImageKit WPF is created by Newtone Corporation