VintaSoft Twain .NET SDK 15.0: Documentation for .NET developer
In This Topic
    API changes in version 9.0
    In This Topic

    API changes in the SDK architecture




    API changes in Vintasoft.Twain.dll

    New classes:

    public class Vintasoft.Twain.TwainImageEncoderSettings Provides the abstract base class for image encoder settings.
    public class Vintasoft.Twain.TwainBmpEncoderSettings Class that contains settings of BMP encoder.
    public class Vintasoft.Twain.TwainGifEncoderSettings Class that contains settings of GIF encoder.
    public class Vintasoft.Twain.TwainJpegEncoderSettings Class that contains settings of JPEG encoder.
    public class Vintasoft.Twain.TwainPdfEncoderSettings Class that contains settings of PDF encoder.
    public class Vintasoft.Twain.TwainPngEncoderSettings Class that contains settings of PNG encoder.
    public class Vintasoft.Twain.TwainTiffEncoderSettings Class that contains settings of TIFF encoder.


    Renamed classes:

    public class Vintasoft.Twain.CurrentDeviceChangedEventArgs public class Vintasoft.Twain.OpenedDeviceChangedEventArgs
    public class Vintasoft.Twain.ImageProcessingEventArgs public class Vintasoft.Twain.ImageProcessing.AcquiredImageProcessingEventArgs
    public class Vintasoft.Twain.ImageProcessingProgressEventArgs public class Vintasoft.Twain.ImageProcessing.AcquiredImageProcessingProgressEventArgs
    public class Vintasoft.Twain.ImageProcessedEventArgs public class Vintasoft.Twain.ImageProcessing.AcquiredImageProcessedEventArgs


    Moved classes:

    public class Vintasoft.Ftp.FtpUpload public class Vintasoft.Twain.ImageUploading.Ftp.FtpUpload
    public class Vintasoft.Ftp.CompletedEventArgs public class Vintasoft.Twain.ImageUploading.Ftp.CompletedEventArgs
    public class Vintasoft.Ftp.ProgressChangedEventArgs public class Vintasoft.Twain.ImageUploading.Ftp.ProgressChangedEventArgs
    public class Vintasoft.Ftp.StatusChangedEventArgs public class Vintasoft.Twain.ImageUploading.Ftp.StatusChangedEventArgs
    public class Vintasoft.Http.HttpUpload public class Vintasoft.Twain.ImageUploading.Http.HttpUpload
    public class Vintasoft.Http.CompletedEventArgs public class Vintasoft.Twain.ImageUploading.Http.CompletedEventArgs
    public class Vintasoft.Http.ProgressChangedEventArgs public class Vintasoft.Twain.ImageUploading.Http.ProgressChangedEventArgs
    public class Vintasoft.Http.StatusChangedEventArgs public class Vintasoft.Twain.ImageUploading.Http.StatusChangedEventArgs


    Changed classes:

    Vintasoft.Twain.DeviceManager
    Added properties
    public Vintasoft.Twain.Device DefaultDevice { get; } Gets the default TWAIN device.
    public Vintasoft.Twain.Device OpenedDevice { get; } Gets the device opened in device manager.
    Added methods
    public bool ShowDefaultDeviceSelectionDialog() Displays the default device selection dialog so the user can change the default device.
    Removed methods
    public string GetPathToTempDir() This method is not necessary any more.


    Vintasoft.Twain.Device
    Added properties
    public Vintasoft.Twain.AcquiredImage AcquiredImage { get; } Gets the last acquired image.
    public bool AutoScan { get; set; } Gets or sets a value indicating whether the device should capture the number of images indicated by the value of Device.XferCount without waiting for the Application to request the image transfers.
    public int MaxBatchBuffers { get; set; } Gets or sets the number of images that the device can buffer when Device.AutoScan is enabled.
    public int BufferedImageCount { get; } Gets the count of images in the device buffer.
    Removed properties
    public Vintasoft.Twain.AcquiredImageCollection AcquiredImages { get; } From version 9.0 device does not have associated image collection. Instance of Vintasoft.Twain.AcquiredImageCollection class must be created separately if acquired images must be stored as collection.
    Added methods
    public void StopFeeder() Stops the automatic document feeder is possible.
    public Vintasoft.Twain.TwainValueContainerBase GetSupportedMaxBatchBufferValues() Returns an array with supported numbers of images that the device can buffer when Device.AutoScan is enabled.
    public void ClearBuffers(Vintasoft.Twain.ClearBufferMode) Clears the device buffers according to the specified mode.
    Renamed methods
    public void Setup() public void ShowSetupDialog()


    Vintasoft.Twain.DocumentFeeder
    Added properties
    public bool AutoFeed { get; set; } Enables or disables the auto feed feature of document feeder.
    Removed methods
    public void AutoFeed() Use the AutoFeed property instead.


    Vintasoft.Twain.TwainException
    Added constructors
    public void TwainException() Initializes a new instance of the TwainException class.
    public void TwainException(string, System.Exception) Initializes a new instance of the TwainException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    Vintasoft.Twain.TwainDeviceManagerException
    Added constructors
    public void TwainDeviceManagerException() Initializes a new instance of the TwainDeviceManagerException class.
    public void TwainDeviceManagerException(string, System.Exception) Initializes a new instance of the TwainDeviceManagerException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    Vintasoft.Twain.TwainDeviceException
    Added constructors
    public void TwainDeviceException() Initializes a new instance of the TwainDeviceException class.
    public void TwainDeviceException(string, System.Exception) Initializes a new instance of the TwainDeviceException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    Vintasoft.Twain.TwainInvalidStateException
    Added constructors
    public void TwainInvalidStateException() Initializes a new instance of the TwainInvalidStateException class.
    public void TwainInvalidStateException(string, System.Exception) Initializes a new instance of the TwainInvalidStateException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    Vintasoft.Twain.TwainDeviceCapabilityException
    Added constructors
    public void TwainDeviceCapabilityException() Initializes a new instance of the TwainDeviceCapabilityException class.
    public void TwainDeviceCapabilityException(string, System.Exception) Initializes a new instance of the TwainDeviceCapabilityException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    Vintasoft.Twain.AcquiredImageCollection
    Added constructors
    public void AcquiredImageCollection() Initializes a new instance of the AcquiredImageCollection class.
    Added methods
    public void Add(Vintasoft.Twain.AcquiredImage) Adds image to this collection.
    public void ClearAndDisposeItems() Removes and disposes all images from the collection.
    Removed properties
    public int Capacity { get; set; } This property is not necessary any more. Now image collection has unlimited size.
    public bool AutoClean { get; set; } This property is not necessary any more. Now image collection has unlimited size.
    public bool IsFull { get; } This property is not necessary any more. Now image collection has unlimited size.
    public Vintasoft.Twain.AcquiredImage Last { get; } This property is not necessary any more.
    public int JpegQuality { get; set; } This property is not necessary any more. JPEG quality can be set in Vintasoft.Twain.TwainJpegEncoderSettings, Vintasoft.Twain.TwainTiffEncoderSettings or Vintasoft.Twain.TwainPdfEncoderSettings class.
    public Vintasoft.Twain.JpegColorSpace JpegColorSpace { get; set; } This property is not necessary any more. JPEG color space can be set in Vintasoft.Twain.TwainJpegEncoderSettings, Vintasoft.Twain.TwainTiffEncoderSettings or Vintasoft.Twain.TwainPdfEncoderSettings class.
    public bool TiffMultiPage { get; set; } This property is not necessary any more. TIFF multipage feature can be enabled/disabled in Vintasoft.Twain.TwainTiffEncoderSettings class.
    public Vintasoft.Twain.TiffCompression TiffCompression { get; set; } This property is not necessary any more. TIFF compression can be set in Vintasoft.Twain.TwainTiffEncoderSettings class.
    public bool PdfMultiPage { get; set; } This property is not necessary any more. PDF multipage feature can be enabled/disabled in Vintasoft.Twain.TwainPdfEncoderSettings class.
    public bool PdfACompatible { get; set; } This property is not necessary any more. PDF/A compatibility can be set in Vintasoft.Twain.TwainPdfEncoderSettings class.
    public Vintasoft.Twain.PdfImageCompression PdfImageCompression { get; set; } This property is not necessary any more. PDF image compression can be set in Vintasoft.Twain.TwainPdfEncoderSettings class.
    public Vintasoft.Twain.PdfDocumentInfo PdfDocumentInfo { get; } This property is not necessary any more. Information about PDF document can be set in Vintasoft.Twain.TwainPdfEncoderSettings class.
    public bool IsDisposed { get; } This property is not necessary any more because class no longer implements IDisposable interface.
    Removed methods
    public void Dispose() This method is not necessary any more because class no longer implements IDisposable interface.


    Vintasoft.Twain.AcquiredImage
    Changed methods
    public System.IO.MemoryStream GetAsStream(Vintasoft.Twain.ImageFileFormat) public System.IO.MemoryStream GetAsStream(Vintasoft.Twain.TwainImageEncoderSettings)
    public string GetAsBase64String(Vintasoft.Twain.ImageFileFormat) public string GetAsBase64String(Vintasoft.Twain.TwainImageEncoderSettings)
    public void Save(System.IO.Stream, Vintasoft.Twain.ImageFileFormat) public void Save(System.IO.Stream, Vintasoft.Twain.TwainImageEncoderSettings)
    public void SaveToStream(System.IO.Stream, Vintasoft.Twain.ImageFileFormat) public void SaveToStream(System.IO.Stream, Vintasoft.Twain.TwainImageEncoderSettings)
    Changed events
    public event System.EventHandler<Vintasoft.Twain.ImageProcessingEventArgs> Processing public event System.EventHandler<Vintasoft.Twain.AcquiredImageProcessingEventArgs> Processing
    public event System.EventHandler<Vintasoft.Twain.ImageProcessingProgressEventArgs> Progress public event System.EventHandler<Vintasoft.Twain.AcquiredImageProcessingProgressEventArgs> Progress
    public event System.EventHandler<Vintasoft.Twain.ImageProcessedEventArgs> Processed public event System.EventHandler<Vintasoft.Twain.AcquiredImageProcessedEventArgs> Processed
    public event System.EventHandler<Vintasoft.Twain.ImageProcessedEventArgs> ProcessingCanceled public event System.EventHandler<Vintasoft.Twain.AcquiredImageProcessedEventArgs> ProcessingCanceled


    Vintasoft.Twain.ImagingException
    Added constructors
    public void ImagingException() Initializes a new instance of the Vintasoft.Twain.ImagingException class.
    public void ImagingException(string, System.Exception) Initializes a new instance of the Vintasoft.Twain.ImagingException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    New enumerations:

    public enum Vintasoft.Twain.ClearBufferMode Specifies available modes of clearing.


    Moved enumerations:

    public enum Vintasoft.Twain.JpegColorSpace public enum Vintasoft.Twain.ImageEncoders.JpegColorSpace
    public enum Vintasoft.Twain.TiffCompression public enum Vintasoft.Twain.ImageEncoders.TiffCompression
    public enum Vintasoft.Twain.PdfImageCompression public enum Vintasoft.Twain.ImageEncoders.PdfImageCompression
    public enum Vintasoft.Twain.ImageProcessingAction public enum Vintasoft.Twain.ImageProcesing.AcquiredImageProcessingAction
    public enum Vintasoft.Ftp.ErrorCode public enum Vintasoft.Twain.ImageUploading.Ftp.ErrorCode
    public enum Vintasoft.Ftp.StatusCode public enum Vintasoft.Twain.ImageUploading.Ftp.StatusCode
    public enum Vintasoft.Ftp.LogOnType public enum Vintasoft.Twain.ImageUploading.Ftp.LogOnType
    public enum Vintasoft.Http.StatusCode public enum Vintasoft.Twain.ImageUploading.Http.StatusCode


    Removed enumerations:

    public enum Vintasoft.Twain.ImageFileFormat Use the TwainImageEcoderSettings class instead.


    Changed enumerations:

    Vintasoft.Twain.DeviceCapabilityId
    Added fields
    public Vintasoft.Twain.DeviceCapabilityId PrinterCharRotation Rotates characters printed on documents. Supported from TWAIN 2.3.
    public Vintasoft.Twain.DeviceCapabilityId PrinterFontStyle Selects characteristics of the font printed on documents (ex: bold, italic). Supported from TWAIN 2.3.
    public Vintasoft.Twain.DeviceCapabilityId PrinterIndexLeadChar Selects the left side padding of numeric values printed on documents (ex: zero fill). Supported from TWAIN 2.3.
    public Vintasoft.Twain.DeviceCapabilityId PrinterIndexMaxValue Maximum allowed value for DeviceCapabilityId.PrintIndex. Supported from TWAIN 2.3.
    public Vintasoft.Twain.DeviceCapabilityId PrinterIndexNumDigits Total number of digits allowed in DeviceCapabilityId.PrinterIndex. Supported from TWAIN 2.3.
    public Vintasoft.Twain.DeviceCapabilityId PrinterIndexStep Step size when incrementing DeviceCapabilityId.PrinterIndex for each document. Supported from TWAIN 2.3.
    public Vintasoft.Twain.DeviceCapabilityId PrinterIndexTrigger Kinds of documents that cause DeviceCapabilityId.PrinterIndex to increment. Supported from TWAIN 2.3.
    public Vintasoft.Twain.DeviceCapabilityId PrinterStringPreview A sample string representing the currently selected printing options. Supported from TWAIN 2.3.


    Vintasoft.Twain.ExtendedImageInfoId
    Added fields
    public Vintasoft.Twain.ExtendedImageInfoId PrinterText Test that was printed on the document.



    API changes in Vintasoft.WpfTwain.dll

    New classes:

    public class Vintasoft.WpfTwain.TwainImageEncoderSettings Provides the abstract base class for image encoder settings.
    public class Vintasoft.WpfTwain.TwainBmpEncoderSettings Class that contains settings of BMP encoder.
    public class Vintasoft.WpfTwain.TwainGifEncoderSettings Class that contains settings of GIF encoder.
    public class Vintasoft.WpfTwain.TwainJpegEncoderSettings Class that contains settings of JPEG encoder.
    public class Vintasoft.WpfTwain.TwainPdfEncoderSettings Class that contains settings of PDF encoder.
    public class Vintasoft.WpfTwain.TwainPngEncoderSettings Class that contains settings of PNG encoder.
    public class Vintasoft.WpfTwain.TwainTiffEncoderSettings Class that contains settings of TIFF encoder.


    Renamed classes:

    public class Vintasoft.Wpf.Twain.CurrentDeviceChangedEventArgs public class Vintasoft.WpfTwain.OpenedDeviceChangedEventArgs
    public class Vintasoft.Wpf.Twain.ImageProcessingEventArgs public class Vintasoft.WpfTwain.ImageProcessing.AcquiredImageProcessingEventArgs
    public class Vintasoft.Wpf.Twain.ImageProcessingProgressEventArgs public class Vintasoft.WpfTwain.ImageProcessing.AcquiredImageProcessingProgressEventArgs
    public class Vintasoft.Wpf.Twain.ImageProcessedEventArgs public class Vintasoft.WpfTwain.ImageProcessing.AcquiredImageProcessedEventArgs


    Moved classes:

    public class Vintasoft.Ftp.FtpUpload public class Vintasoft.WpfTwain.ImageUploading.Ftp.FtpUpload
    public class Vintasoft.Ftp.CompletedEventArgs public class Vintasoft.WpfTwain.ImageUploading.Ftp.CompletedEventArgs
    public class Vintasoft.Ftp.ProgressChangedEventArgs public class Vintasoft.WpfTwain.ImageUploading.Ftp.ProgressChangedEventArgs
    public class Vintasoft.Ftp.StatusChangedEventArgs public class Vintasoft.WpfTwain.ImageUploading.Ftp.StatusChangedEventArgs
    public class Vintasoft.Http.HttpUpload public class Vintasoft.WpfTwain.ImageUploading.Http.HttpUpload
    public class Vintasoft.Http.CompletedEventArgs public class Vintasoft.WpfTwain.ImageUploading.Http.CompletedEventArgs
    public class Vintasoft.Http.ProgressChangedEventArgs public class Vintasoft.WpfTwain.ImageUploading.Http.ProgressChangedEventArgs
    public class Vintasoft.Http.StatusChangedEventArgs public class Vintasoft.WpfTwain.ImageUploading.Http.StatusChangedEventArgs


    Changed classes:

    Vintasoft.WpfTwain.DeviceManager
    Added properties
    public Vintasoft.WpfTwain.Device DefaultDevice { get; } Gets the default TWAIN device.
    public Vintasoft.WpfTwain.Device OpenedDevice { get; } Gets the device opened in device manager.
    Added methods
    public bool ShowDefaultDeviceSelectionDialog() Displays the default device selection dialog so the user can change the default device.
    Removed methods
    public string GetPathToTempDir() This method is not necessary any more.


    Vintasoft.WpfTwain.Device
    Added properties
    public Vintasoft.WpfTwain.AcquiredImage AcquiredImage { get; } Gets the last acquired image.
    public bool AutoScan { get; set; } Gets or sets a value indicating whether the device should capture the number of images indicated by the value of Device.XferCount without waiting for the Application to request the image transfers.
    public int MaxBatchBuffers { get; set; } Gets or sets the number of images that the device can buffer when Device.AutoScan is enabled.
    public int BufferedImageCount { get; } Gets the count of images in the device buffer.
    Removed properties
    public Vintasoft.WpfTwain.AcquiredImageCollection AcquiredImages { get; } From version 9.0 device does not have associated image collection. Instance of Vintasoft.WpfTwain.AcquiredImageCollection class must be created separately if acquired images must be stored as collection.
    Added methods
    public void StopFeeder() Stops the automatic document feeder is possible.
    public Vintasoft.WpfTwain.TwainValueContainerBase GetSupportedMaxBatchBufferValues() Returns an array with supported numbers of images that the device can buffer when Device.AutoScan is enabled.
    public void ClearBuffers(Vintasoft.WpfTwain.ClearBufferMode) Clears the device buffers according to the specified mode.
    Renamed methods
    public void Setup() public void ShowSetupDialog()


    Vintasoft.WpfTwain.DocumentFeeder
    Added properties
    public bool AutoFeed { get; set; } Enables or disables the auto feed feature of document feeder.
    Removed methods
    public void AutoFeed() Use the AutoFeed property instead.


    Vintasoft.WpfTwain.TwainException
    Added constructors
    public void TwainException() Initializes a new instance of the TwainException class.
    public void TwainException(string, System.Exception) Initializes a new instance of the TwainException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    Vintasoft.WpfTwain.TwainDeviceManagerException
    Added constructors
    public void TwainDeviceManagerException() Initializes a new instance of the TwainDeviceManagerException class.
    public void TwainDeviceManagerException(string, System.Exception) Initializes a new instance of the TwainDeviceManagerException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    Vintasoft.WpfTwain.TwainDeviceException
    Added constructors
    public void TwainDeviceException() Initializes a new instance of the TwainDeviceException class.
    public void TwainDeviceException(string, System.Exception) Initializes a new instance of the TwainDeviceException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    Vintasoft.WpfTwain.TwainInvalidStateException
    Added constructors
    public void TwainInvalidStateException() Initializes a new instance of the TwainInvalidStateException class.
    public void TwainInvalidStateException(string, System.Exception) Initializes a new instance of the TwainInvalidStateException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    Vintasoft.WpfTwain.TwainDeviceCapabilityException
    Added constructors
    public void TwainDeviceCapabilityException() Initializes a new instance of the TwainDeviceCapabilityException class.
    public void TwainDeviceCapabilityException(string, System.Exception) Initializes a new instance of the TwainDeviceCapabilityException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    Vintasoft.WpfTwain.AcquiredImageCollection
    Added constructors
    public void AcquiredImageCollection() Initializes a new instance of the AcquiredImageCollection class.
    Added methods
    public void Add(Vintasoft.WpfTwain.AcquiredImage) Adds image to this collection.
    public void ClearAndDisposeItems() Removes and disposes all images from the collection.
    Removed properties
    public int Capacity { get; set; } This property is not necessary any more. Now image collection has unlimited size.
    public bool AutoClean { get; set; } This property is not necessary any more. Now image collection has unlimited size.
    public bool IsFull { get; } This property is not necessary any more. Now image collection has unlimited size.
    public Vintasoft.WpfTwain.AcquiredImage Last { get; } This property is not necessary any more.
    public int JpegQuality { get; set; } This property is not necessary any more. JPEG quality can be set in Vintasoft.WpfTwain.TwainJpegEncoderSettings, Vintasoft.WpfTwain.TwainTiffEncoderSettings or Vintasoft.WpfTwain.TwainPdfEncoderSettings class.
    public Vintasoft.WpfTwain.JpegColorSpace JpegColorSpace { get; set; } This property is not necessary any more. JPEG color space can be set in Vintasoft.WpfTwain.TwainJpegEncoderSettings, Vintasoft.WpfTwain.TwainTiffEncoderSettings or Vintasoft.WpfTwain.TwainPdfEncoderSettings class.
    public bool TiffMultiPage { get; set; } This property is not necessary any more. TIFF multipage feature can be enabled/disabled in Vintasoft.WpfTwain.TwainTiffEncoderSettings class.
    public Vintasoft.WpfTwain.TiffCompression TiffCompression { get; set; } This property is not necessary any more. TIFF compression can be set in Vintasoft.WpfTwain.TwainTiffEncoderSettings class.
    public bool PdfMultiPage { get; set; } This property is not necessary any more. PDF multipage feature can be enabled/disabled in Vintasoft.WpfTwain.TwainPdfEncoderSettings class.
    public bool PdfACompatible { get; set; } This property is not necessary any more. PDF/A compatibility can be set in Vintasoft.WpfTwain.TwainPdfEncoderSettings class.
    public Vintasoft.WpfTwain.PdfImageCompression PdfImageCompression { get; set; } This property is not necessary any more. PDF image compression can be set in Vintasoft.WpfTwain.TwainPdfEncoderSettings class.
    public Vintasoft.WpfTwain.PdfDocumentInfo PdfDocumentInfo { get; } This property is not necessary any more. Information about PDF document can be set in Vintasoft.WpfTwain.TwainPdfEncoderSettings class.
    public bool IsDisposed { get; } This property is not necessary any more because class no longer implements IDisposable interface.
    Removed methods
    public void Dispose() This method is not necessary any more because class no longer implements IDisposable interface.


    Vintasoft.WpfTwain.AcquiredImage
    Changed methods
    public System.IO.MemoryStream GetAsStream(Vintasoft.WpfTwain.ImageFileFormat) public System.IO.MemoryStream GetAsStream(Vintasoft.WpfTwain.TwainImageEncoderSettings)
    public string GetAsBase64String(Vintasoft.WpfTwain.ImageFileFormat) public string GetAsBase64String(Vintasoft.WpfTwain.TwainImageEncoderSettings)
    public void Save(System.IO.Stream, Vintasoft.WpfTwain.ImageFileFormat) public void Save(System.IO.Stream, Vintasoft.WpfTwain.TwainImageEncoderSettings)
    public void SaveToStream(System.IO.Stream, Vintasoft.WpfTwain.ImageFileFormat) public void SaveToStream(System.IO.Stream, Vintasoft.WpfTwain.TwainImageEncoderSettings)
    Changed events
    public event System.EventHandler<Vintasoft.WpfTwain.ImageProcessingEventArgs> Processing public event System.EventHandler<Vintasoft.WpfTwain.AcquiredImageProcessingEventArgs> Processing
    public event System.EventHandler<Vintasoft.WpfTwain.ImageProcessingProgressEventArgs> Progress public event System.EventHandler<Vintasoft.WpfTwain.AcquiredImageProcessingProgressEventArgs> Progress
    public event System.EventHandler<Vintasoft.WpfTwain.ImageProcessedEventArgs> Processed public event System.EventHandler<Vintasoft.WpfTwain.AcquiredImageProcessedEventArgs> Processed
    public event System.EventHandler<Vintasoft.WpfTwain.ImageProcessedEventArgs> ProcessingCanceled public event System.EventHandler<Vintasoft.WpfTwain.AcquiredImageProcessedEventArgs> ProcessingCanceled


    Vintasoft.WpfTwain.ImagingException
    Added constructors
    public void ImagingException() Initializes a new instance of the Vintasoft.Twain.ImagingException class.
    public void ImagingException(string, System.Exception) Initializes a new instance of the Vintasoft.Twain.ImagingException class with a specified error message and a reference to the inner exception that is the cause of this exception.


    New enumerations:

    public enum Vintasoft.WpfTwain.ClearBufferMode Specifies available modes of clearing.


    Moved enumerations:

    public enum Vintasoft.Wpf.Twain.JpegColorSpace public enum Vintasoft.WpfTwain.ImageEncoders.JpegColorSpace
    public enum Vintasoft.Wpf.Twain.TiffCompression public enum Vintasoft.WpfTwain.ImageEncoders.TiffCompression
    public enum Vintasoft.Wpf.Twain.PdfImageCompression public enum Vintasoft.WpfTwain.ImageEncoders.PdfImageCompression
    public enum Vintasoft.Wpf.Twain.ImageProcessingAction public enum Vintasoft.WpfTwain.ImageProcesing.AcquiredImageProcessingAction
    public enum Vintasoft.Ftp.ErrorCode public enum Vintasoft.WpfTwain.ImageUploading.Ftp.ErrorCode
    public enum Vintasoft.Ftp.StatusCode public enum Vintasoft.WpfTwain.ImageUploading.Ftp.StatusCode
    public enum Vintasoft.Ftp.LogOnType public enum Vintasoft.WpfTwain.ImageUploading.Ftp.LogOnType
    public enum Vintasoft.Http.StatusCode public enum Vintasoft.WpfTwain.ImageUploading.Http.StatusCode


    Removed enumerations:

    public enum Vintasoft.Wpf.Twain.ImageFileFormat Use the TwainImageEcoderSettings class instead.


    Changed enumerations:

    Vintasoft.WpfTwain.DeviceCapabilityId
    Added fields
    public Vintasoft.WpfTwain.DeviceCapabilityId PrinterCharRotation Rotates characters printed on documents. Supported from TWAIN 2.3.
    public Vintasoft.WpfTwain.DeviceCapabilityId PrinterFontStyle Selects characteristics of the font printed on documents (ex: bold, italic). Supported from TWAIN 2.3.
    public Vintasoft.WpfTwain.DeviceCapabilityId PrinterIndexLeadChar Selects the left side padding of numeric values printed on documents (ex: zero fill). Supported from TWAIN 2.3.
    public Vintasoft.WpfTwain.DeviceCapabilityId PrinterIndexMaxValue Maximum allowed value for DeviceCapabilityId.PrintIndex. Supported from TWAIN 2.3.
    public Vintasoft.WpfTwain.DeviceCapabilityId PrinterIndexNumDigits Total number of digits allowed in DeviceCapabilityId.PrinterIndex. Supported from TWAIN 2.3.
    public Vintasoft.WpfTwain.DeviceCapabilityId PrinterIndexStep Step size when incrementing DeviceCapabilityId.PrinterIndex for each document. Supported from TWAIN 2.3.
    public Vintasoft.WpfTwain.DeviceCapabilityId PrinterIndexTrigger Kinds of documents that cause DeviceCapabilityId.PrinterIndex to increment. Supported from TWAIN 2.3.
    public Vintasoft.WpfTwain.DeviceCapabilityId PrinterStringPreview A sample string representing the currently selected printing options. Supported from TWAIN 2.3.


    Vintasoft.WpfTwain.ExtendedImageInfoId
    Added fields
    public Vintasoft.WpfTwain.ExtendedImageInfoId PrinterText Test that was printed on the document.



    Code conversion examples from version 8.x to version 9.0

    Example 1: This example shows how to acquire single image from scanner and save it as JPEG in version 8.x and 9.0

    Version 8.x Version 9.0
    // Acquire image.
    private void AcquireImages(Device device)
    {
        // open the device
        device.Open();
        // specify that application wants to acquire 1 image from device
        device.XferCount = 1;
    
        // subscribe to the device events
        device.ImageAcquired += new EventHandler<ImageAcquiredEventArgs>(device_ImageAcquired);
        device.ScanCompleted += new EventHandler(device_ScanCompleted);
    
        // start the asynchronous image acquisition process
        device.Acquire();
    }
    
    // Image is acquired.
    private void device_ImageAcquired(object sender, ImageAcquiredEventArgs e)
    {
        // save image to a JPEG file
        e.Image.Save(@"d:\image.jpg");
    
        // image will be disposed automatically when new image will be acquired or
        // device will be closed
    }
    
    // Acquire image.
    private void AcquireImages(Device device)
    {
        // open the device
        device.Open();
        // specify that application wants to acquire 1 images from device
        device.XferCount = 1;
    
        // subscribe to the device events
        device.ImageAcquired += new EventHandler<ImageAcquiredEventArgs>(device_ImageAcquired);
        device.ScanCompleted += new EventHandler(device_ScanCompleted);
    
        // start the asynchronous image acquisition process
        device.Acquire();
    }
    
    // Image is acquired.
    private void device_ImageAcquired(object sender, ImageAcquiredEventArgs e)
    {
        // save image to a JPEG file
        e.Image.Save(@"d:\image.jpg");
    
        // dispose the acquired image
        e.Image.Dispose();
    }
    



    Example 2: This example shows how to acquire 20 images from scanner and save them as multipage TIFF file in version 8.x and 9.0

    Version 8.x Version 9.0
    
    
    // Acquire image.
    private void AcquireImages(Device device)
    {
        // specify that we want to store 20 images in internal image buffer of SDK
        device.AcquiredImages.Capacity = 20;    
    
        // open the device
        device.Open();
        // specify that application wants to acquire 20 images from device
        device.XferCount = 20;
    
        // subscribe to the device events
        device.ImageAcquired += new EventHandler<ImageAcquiredEventArgs>(device_ImageAcquired);
        device.ScanCompleted += new EventHandler(device_ScanCompleted);
    
        // start the asynchronous image acquisition process
        device.Acquire();
    }
    
    // Image is acquired.
    private void device_ImageAcquired(object sender, ImageAcquiredEventArgs e)
    {
        // nothing to do
        // image is automatically added to the internal image buffer of SDK
    }
    
    // Scan is completed.
    private void device_ScanCompleted(object sender, EventArgs e)
    {
        // get reference to the device
        Device device = (Device)sender;
    
        // specify TIFF encoder settings
        device.AcquiredImages.TiffMultiPage = true;
        device.AcquiredImages.TiffCompression = TiffCompression.Auto;
    
    
        // for each image in image collection
        for (int i = 0; i < device.AcquiredImages.Count; i++)
        {
            // add image to a multipage TIFF file
            device.AcquiredImages[i].Save(@"d:\document.tif");
        }
    
        // clear the image collection and dispose all images
        _images.Clear();
    }
    
    AcquiredImageCollection _images = new AcquiredImageCollection();
    
    // Acquire image.
    private void AcquireImages(Device device)
    {
    
    
    
        // open the device
        device.Open();
        // specify that application wants to acquire 20 images from device
        device.XferCount = 20;
    
        // subscribe to the device events
        device.ImageAcquired += new EventHandler<ImageAcquiredEventArgs>(device_ImageAcquired);
        device.ScanCompleted += new EventHandler(device_ScanCompleted);
    
        // start the asynchronous image acquisition process
        device.Acquire();
    }
    
    // Image is acquired.
    private void device_ImageAcquired(object sender, ImageAcquiredEventArgs e)
    {
        // add acquired image to the image collection
        _images.Add(e.Image);
    }
    
    // Scan is completed.
    private void device_ScanCompleted(object sender, EventArgs e)
    {
    
    
    
        // specify TIFF encoder settings
        TwainTiffEncoderSettings tiffEncoderSettings = new TwainTiffEncoderSettings();
        tiffEncoderSettings.TiffMultiPage = true;
        tiffEncoderSettings.TiffCompression = TiffCompression.Auto;
    
        // for each image in image collection
        for (int i = 0; i < _images.Count; i++)
        {
            // add image to a multipage TIFF file
            _images[i].Save(@"d:\document.tif", tiffEncoderSettings);
        }
    
        // clear the image collection and dispose all images
        _images.ClearAndDisposeItems();
    }