VintaSoft Twain .NET SDK 14.1: Руководство для .NET разработчика
Vintasoft.WinTwain Namespace / Device Class / ImageCompression Property
Синтаксис Exceptions Ремарки Example Требования Смотрите также
В этом разделе
    ImageCompression Свойство (Device)
    В этом разделе
    Возвращает или задает сжатие изображения для изображений, когда используется режим передачи Memory или File.
    Синтаксис
    'Declaration
    
    Public Property ImageCompression As TwainImageCompression
    
    
    public TwainImageCompression ImageCompression { get; set; }
    
    
    public: __property TwainImageCompression get_ImageCompression();
    public: __property void set_ImageCompression(
    TwainImageCompression value
    );
    public:
    property TwainImageCompression ImageCompression { TwainImageCompression get(); void set(TwainImageCompression value); }
    Исключения
    ИсключениеОписание
    Выбрасывается, если устройство находится в неправильном состоянии.
    Выбрасывается, если устройство не поддерживает возможность.
    Выбрасывается, если используется .NET отладчик и для оценки функции требуется, чтобы все потоки выполнялись.
    Ремарки

    Вызывайте это свойство только при открытии устройства (State == DeviceState.Opened).

    Поддерживаемые сжатия изображений может быть получено методом GetSupportedImageCompressions.

    Пример

    Вот C#/VB.NET код, который демонстрирует, как сохранять полученные изображения непосредственно на диск в виде TIFF файлов со сжатием CCITT группы 4.

    
    Public Sub AcquireImagesUsingFileTransferModeAsTiffFiles()
            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.Tiff
                    device.ImageCompression = Vintasoft.Twain.TwainImageCompression.Group4
    
                    Dim imageCount As Integer = 0
                    ' set filename the first acquired image
                    device.FileName = String.Format("c:\images\page{0}.tif", 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}.tif", 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 AcquireImagesUsingFileTransferModeAsTiffFiles()
    {
        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.Tiff;
            device.ImageCompression = Vintasoft.Twain.TwainImageCompression.Group4;
    
            int imageCount = 0;
            // set filename the first acquired image
            device.FileName = string.Format(@"c:\images\page{0}.tif", 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}.tif", imageCount++);
                        break;
                }
            }
            while (acquireModalState != Vintasoft.Twain.AcquireModalState.None);
    
            // close the device
            device.Close();
    
            // close the device manager
            deviceManager.Close();
        }
    }
    
    

    Требования

    Целевые платформы: .NET 8; .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5

    Смотрите также