GetImageStream

GetImageStream()

Возвращает поток изображения.

public Stream GetImageStream()

Возвращаемое значение

Поток с изображением.

Примеры

В следующем примере показано, как сохранять изображения в файлы:

// Создаем экземпляр класса Parser
using (Parser parser = new Parser(filePath))
{
    // Извлечение изображений из документа
    IEnumerable<PageImageArea> images = parser.GetImages();
    
    // Проверяем, поддерживается ли извлечение изображений
    if (images == null)
    {
        Console.WriteLine("Page images extraction isn't supported");
        return;
    }

    // Перебираем изображения
    foreach (PageImageArea image in images)
    {
        // Открываем поток изображений
        using (Stream imageStream = image.GetImageStream())
        {
            // Создаем файл для сохранения изображения
            using (Stream destStream = File.Create(Guid.NewGuid().ToString() + image.FileType.Extension))
            {
                byte[] buffer = new byte[4096];
                int readed = 0;

                do
                {
                    // Чтение данных из потока изображения
                    readed = imageStream.Read(buffer, 0, buffer.Length);

                    if (readed > 0)
                    {
                        // Записываем данные в файловый поток
                        destStream.Write(buffer, 0, readed);
                    }
                }
                while (readed > 0);
            }
        }
    }
}

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


GetImageStream(ImageOptions)

Возвращает поток изображения в другом формате.

public Stream GetImageStream(ImageOptions options)
Параметр Тип Описание
options ImageOptions Параметры, которые используются для извлечения изображения.

Возвращаемое значение

Поток с изображением.

Примеры

В следующем примере показано, как сохранять изображения в файлы другого формата:

// Создаем экземпляр класса Parser
using (Parser parser = new Parser(filePath))
{
    // Извлечение изображений из документа
    IEnumerable<PageImageArea> images = parser.GetImages();
    
    // Проверяем, поддерживается ли извлечение изображений
    if (images == null)
    {
        Console.WriteLine("Page images extraction isn't supported");
        return;
    }

    // Создаем опции для сохранения изображений в формате PNG
    ImageOptions options = new ImageOptions(ImageFormat.Png);
    
    // Перебираем изображения
    foreach (PageImageArea image in images)
    {
        // Открываем поток изображений
        using (Stream imageStream = image.GetImageStream(options))
        {
            // Создаем файл для сохранения изображения
            using (Stream destStream = File.Create(Guid.NewGuid().ToString() + ".png"))
            {
                byte[] buffer = new byte[4096];
                int readed = 0;

                do
                {
                    // Чтение данных из потока изображения
                    readed = imageStream.Read(buffer, 0, buffer.Length);

                    if (readed > 0)
                    {
                        // Записываем данные в файловый поток
                        destStream.Write(buffer, 0, readed);
                    }
                }
                while (readed > 0);
            }
        }
    }
}

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