VintaSoft Twain .NET SDK 15.4: Руководство для .NET разработчика
Vintasoft.Twain Namespace / DeviceImageLayout Class
Члены типа Объект Синтаксис Example Иерархия Требования Смотрите также
В этом разделе
Класс DeviceImageLayout
В этом разделе
Класс, который позволяет управлять компоновкой изображения TWAIN устройства.
Объектная модель
DeviceImageLayout
Синтаксис
'Declaration

Public NotInheritable Class DeviceImageLayout

public sealed class DeviceImageLayout

Пример

Вот C#/VB.NET код, который демонстрирует, как получить только верхнюю часть страницы.


Private Sub AcquirePartOfImage()
    Using deviceManager As New Vintasoft.Twain.DeviceManager()
        Try
            ' open the device manager
            deviceManager.Open()

            deviceManager.ShowDefaultDeviceSelectionDialog()

            ' 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 image layout (get only the top half of the page)
            device.UnitOfMeasure = Vintasoft.Twain.UnitOfMeasure.Inches
            Dim imageLayout As Vintasoft.Primitives.VintasoftRectF = device.ImageLayout.[Get]()
            device.ImageLayout.[Set](0, 0, imageLayout.Width, imageLayout.Height / 2)

            Dim tiffFilename As String = System.IO.Path.Combine(System.IO.Directory.GetCurrentDirectory(), "multipage.tif")

            ' 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
                        ' save acquired image to multipage TIFF file
                        device.AcquiredImage.Save(tiffFilename)
                        ' dispose the acquired image
                        device.AcquiredImage.Dispose()
                        Exit Select
                End Select
            Loop While acquireModalState <> Vintasoft.Twain.AcquireModalState.None

            ' close the device
            device.Close()

            ' close the device manager
            deviceManager.Close()
        Catch ex As Vintasoft.Twain.TwainException
            System.Console.WriteLine("Error: " + ex.Message)
            System.Console.ReadLine()
        End Try
    End Using
End Sub


private void AcquirePartOfImage()
{
    using (Vintasoft.Twain.DeviceManager deviceManager = new Vintasoft.Twain.DeviceManager())
    {
        try
        {
            // open the device manager
            deviceManager.Open();

            deviceManager.ShowDefaultDeviceSelectionDialog();

            // get reference to the default device
            Vintasoft.Twain.Device device = deviceManager.DefaultDevice;

            device.ShowUI = false;
            device.DisableAfterAcquire = true;

            // open the device
            device.Open();

            // set image layout (get only the top half of the page)
            device.UnitOfMeasure = Vintasoft.Twain.UnitOfMeasure.Inches;
            Vintasoft.Primitives.VintasoftRectF imageLayout = device.ImageLayout.Get();
            device.ImageLayout.Set(0, 0, imageLayout.Width, imageLayout.Height / 2);

            string tiffFilename = System.IO.Path.Combine(System.IO.Directory.GetCurrentDirectory(), "multipage.tif");

            // acquire images from device
            Vintasoft.Twain.AcquireModalState acquireModalState = Vintasoft.Twain.AcquireModalState.None;
            do
            {
                acquireModalState = device.AcquireModal();
                switch (acquireModalState)
                {
                    case Vintasoft.Twain.AcquireModalState.ImageAcquired:
                        // save acquired image to multipage TIFF file
                        device.AcquiredImage.Save(tiffFilename);
                        // dispose the acquired image
                        device.AcquiredImage.Dispose();
                        break;
                }
            }
            while (acquireModalState != Vintasoft.Twain.AcquireModalState.None);

            // close the device
            device.Close();

            // close the device manager
            deviceManager.Close();
        }
        catch (Vintasoft.Twain.TwainException ex)
        {
            System.Console.WriteLine("Error: " + ex.Message);
            System.Console.ReadLine();
        }
    }
}

Иерархия наследования

System.Object
   Vintasoft.Twain.DeviceImageLayout

Требования

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

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