VintaSoft Twain .NET SDK 15.0: Documentation for .NET developer
Vintasoft.WpfTwain Namespace / Device Class / FileJpegQuality Property
Syntax Exceptions Remarks Example Requirements SeeAlso
In This Topic
    FileJpegQuality Property (Device)
    In This Topic
    Gets or sets the JPEG quality for acquired images saved as JPEG files when File transfer mode is used.
    Syntax
    'Declaration
    
    Public Property FileJpegQuality As Integer
    
    
    public int FileJpegQuality { get; set; }
    
    
    public: __property int get_FileJpegQuality();
    public: __property void set_FileJpegQuality(
    int value
    );
    public:
    property int FileJpegQuality { int get(); void set(int value); }

    Property Value

    Allowed values:
    • -4 - Unknown
    • -3 - Low
    • -2 - Medium
    • -1 - High
    • From 0 to 100
    Exceptions
    ExceptionDescription
    Thrown if device is in wrong state.
    Thrown if device does not support capability.
    Thrown if the .NET debugger is used and the function evaluation requires all threads to run.
    Remarks

    Call this property only when device is opened (State == DeviceState.Opened).

    Example

    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();
        }
    }
    
    

    Requirements

    Target Platforms: .NET 8, .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5

    See Also