FileJpegQuality Property (Device)
Gets or sets the JPEG quality for acquired images saved as JPEG files when File transfer mode is used.
Call this property only when device is opened (State == DeviceState.Opened).
This C#/VB.NET code shows how to save acquire images directly to a disk as JPEG files with 70% quality.
Public Sub AcquireImagesUsingFileTransferModeAsJpegFiles()
Using deviceManager As New Vintasoft.Twain.DeviceManager()
' open the device manager
deviceManager.Open()
' get reference to the default device
Dim device As Vintasoft.Twain.Device = deviceManager.DefaultDevice
device.ShowUI = False
device.DisableAfterAcquire = True
' open the device
device.Open()
' set acquisition parameters
device.TransferMode = Vintasoft.Twain.TransferMode.File
device.FileFormat = Vintasoft.Twain.TwainImageFileFormat.Jpeg
device.FileJpegQuality = 70
Dim imageCount As Integer = 0
' set filename the first acquired image
device.FileName = String.Format("c:\images\page{0}.jpg", System.Math.Max(System.Threading.Interlocked.Increment(imageCount),imageCount - 1))
' acquire images from device
Dim acquireModalState As Vintasoft.Twain.AcquireModalState = Vintasoft.Twain.AcquireModalState.None
Do
acquireModalState = device.AcquireModal()
Select Case acquireModalState
Case Vintasoft.Twain.AcquireModalState.ImageAcquired
' set filename for next acquired image
device.FileName = String.Format("c:\images\page{0}.jpg", System.Math.Max(System.Threading.Interlocked.Increment(imageCount),imageCount - 1))
Exit Select
End Select
Loop While acquireModalState <> Vintasoft.Twain.AcquireModalState.None
' close the device
device.Close()
' close the device manager
deviceManager.Close()
End Using
End Sub
public void AcquireImagesUsingFileTransferModeAsJpegFiles()
{
using (Vintasoft.Twain.DeviceManager deviceManager = new Vintasoft.Twain.DeviceManager())
{
// open the device manager
deviceManager.Open();
// get reference to the default device
Vintasoft.Twain.Device device = deviceManager.DefaultDevice;
device.ShowUI = false;
device.DisableAfterAcquire = true;
// open the device
device.Open();
// set acquisition parameters
device.TransferMode = Vintasoft.Twain.TransferMode.File;
device.FileFormat = Vintasoft.Twain.TwainImageFileFormat.Jpeg;
device.FileJpegQuality = 70;
int imageCount = 0;
// set filename the first acquired image
device.FileName = string.Format(@"c:\images\page{0}.jpg", imageCount++);
// acquire images from device
Vintasoft.Twain.AcquireModalState acquireModalState = Vintasoft.Twain.AcquireModalState.None;
do
{
acquireModalState = device.AcquireModal();
switch (acquireModalState)
{
case Vintasoft.Twain.AcquireModalState.ImageAcquired:
// set filename for next acquired image
device.FileName = string.Format(@"c:\images\page{0}.jpg", imageCount++);
break;
}
}
while (acquireModalState != Vintasoft.Twain.AcquireModalState.None);
// close the device
device.Close();
// close the device manager
deviceManager.Close();
}
}
Target Platforms: .NET 8, .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5