TiffFrame

TiffFrame(Stream)

Инициализирует новый экземплярTiffFrame класс.

public TiffFrame(Stream stream)
ПараметрТипОписание
streamStreamПоток для загрузки изображения и инициализации пикселей кадра и данных палитры.

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


TiffFrame(Stream, TiffOptions)

Инициализирует новый экземплярTiffFrame класс.

public TiffFrame(Stream stream, TiffOptions options)
ПараметрТипОписание
streamStreamПоток для загрузки изображения и инициализации пикселей кадра и данных палитры.
optionsTiffOptionsПараметры, используемые для вновь созданного фрейма.

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


TiffFrame(string)

Инициализирует новый экземплярTiffFrame класс.

public TiffFrame(string path)
ПараметрТипОписание
pathStringПуть для загрузки изображения и инициализации пикселей кадра и данных палитры.

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


TiffFrame(string, TiffOptions)

Инициализирует новый экземплярTiffFrame класс.

public TiffFrame(string path, TiffOptions options)
ПараметрТипОписание
pathStringПуть для загрузки изображения и инициализации пикселей кадра и данных палитры.
optionsTiffOptionsПараметры, используемые для вновь созданного фрейма.

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


TiffFrame(RasterImage)

Инициализирует новый экземплярTiffFrame класс.

public TiffFrame(RasterImage image)
ПараметрТипОписание
imageRasterImageИзображение для инициализации пикселя кадра и данных палитры.

Примеры

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

[C#]

Aspose.Imaging.ImageOptions.TiffOptions createTiffOptions = new Aspose.Imaging.ImageOptions.TiffOptions(Aspose.Imaging.FileFormats.Tiff.Enums.TiffExpectedFormat.Default);
createTiffOptions.Source = new Aspose.Imaging.Sources.FileCreateSource("c:\\temp\\multipage.tif", false);
createTiffOptions.Photometric = Aspose.Imaging.FileFormats.Tiff.Enums.TiffPhotometrics.Rgb;
createTiffOptions.BitsPerSample = new ushort[] { 8, 8, 8 };

using (Aspose.Imaging.FileFormats.Tiff.TiffImage tiffImage = (Aspose.Imaging.FileFormats.Tiff.TiffImage)Image.Create(createTiffOptions, 100, 100))
{
    // Это шрифт и кисть для рисования текста на отдельных фреймах.
    Aspose.Imaging.Font font = new Aspose.Imaging.Font("Arial", 64);
    Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.White);

    // Создаем 5 фреймов
    for (int i = 1; i <= 5; i++)
    {
        Aspose.Imaging.ImageOptions.PngOptions createPngOptions = new Aspose.Imaging.ImageOptions.PngOptions();
        createPngOptions.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream());

        // Создаем изображение в формате PNG и рисуем на нем номер страницы.
        Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)Image.Create(createPngOptions, 100, 100);
        Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(pngImage);
        gr.DrawString(i.ToString(), font, brush, 10, 10);

        // Создаем рамку на основе изображения PNG.
        Aspose.Imaging.FileFormats.Tiff.TiffFrame frame = new Aspose.Imaging.FileFormats.Tiff.TiffFrame(pngImage);

        // Добавляем кадр к изображению TIFF.
        tiffImage.AddFrame(frame);
    }

    // Изображение было создано с одним кадром по умолчанию. Давайте удалим его.
    Aspose.Imaging.FileFormats.Tiff.TiffFrame activeFrame = tiffImage.ActiveFrame;
    tiffImage.ActiveFrame = tiffImage.Frames[1];
    tiffImage.RemoveFrame(0);

    // Не забудьте удалить фрейм, если вы не собираетесь добавлять его в какой-либо другой TiffImage
    activeFrame.Dispose();

    tiffImage.Save();
}

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


TiffFrame(RasterImage, TiffOptions)

Инициализирует новый экземплярTiffFrame класс.

public TiffFrame(RasterImage image, TiffOptions options)
ПараметрТипОписание
imageRasterImageИзображение для инициализации пикселя кадра и данных палитры.
optionsTiffOptionsПараметры, используемые для вновь созданного фрейма.

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


TiffFrame(TiffOptions, int, int)

Инициализирует новый экземплярTiffFrame класс.

public TiffFrame(TiffOptions options, int width, int height)
ПараметрТипОписание
optionsTiffOptionsВарианты кадра.
widthInt32Ширина.
heightInt32Высота.

Исключения

исключениеусловие
ArgumentNullExceptionПараметр опций имеет значение null.

Примеры

В этом примере показано, как создать изображение TIFF с нуля и сохранить его в файл.

[C#]

string dir = "c:\\temp\\";

Aspose.Imaging.ImageOptions.TiffOptions createOptions = new Aspose.Imaging.ImageOptions.TiffOptions(Imaging.FileFormats.Tiff.Enums.TiffExpectedFormat.Default);
    
// Устанавливаем 8 бит для каждого компонента цвета.
createOptions.BitsPerSample = new ushort[] { 8, 8, 8 };

// Установить порядок байтов с обратным порядком байтов (Motorola)
createOptions.ByteOrder = Aspose.Imaging.FileFormats.Tiff.Enums.TiffByteOrder.BigEndian;

// Установить сжатие LZW.
createOptions.Compression = Aspose.Imaging.FileFormats.Tiff.Enums.TiffCompressions.Lzw;

// Установить цветовую модель RGB.
createOptions.Photometric = Aspose.Imaging.FileFormats.Tiff.Enums.TiffPhotometrics.Rgb;

// Все компоненты цвета будут храниться в одной плоскости.
createOptions.PlanarConfiguration = Aspose.Imaging.FileFormats.Tiff.Enums.TiffPlanarConfigs.Contiguous;

// Создаем кадр TIFF размером 100x100 пикселей.
// Обратите внимание, что вам не нужно явно удалять фрейм, если он включен в TiffImage.
// При удалении контейнера все фреймы будут удалены автоматически.
Aspose.Imaging.FileFormats.Tiff.TiffFrame firstFrame = new Aspose.Imaging.FileFormats.Tiff.TiffFrame(createOptions, 100, 100);
    
// Заливаем всю рамку сине-желтым градиентом.
Aspose.Imaging.Brushes.LinearGradientBrush gradientBrush = new Aspose.Imaging.Brushes.LinearGradientBrush(
        new Aspose.Imaging.Point(0, 0),
        new Aspose.Imaging.Point(firstFrame.Width, firstFrame.Height),
        Aspose.Imaging.Color.Blue,
        Aspose.Imaging.Color.Yellow);

Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(firstFrame);
graphics.FillRectangle(gradientBrush, firstFrame.Bounds);

// Создаем изображение в формате TIFF.
using (Aspose.Imaging.FileFormats.Tiff.TiffImage tiffImage = new Aspose.Imaging.FileFormats.Tiff.TiffImage(firstFrame))
{
    tiffImage.Save(dir + "output.tif");
}

В этом примере показано, как создать изображение TIFF с двумя кадрами и сохранить его в файл.

[C#]

string dir = "c:\\temp\\";

// Опции для первого кадра
Aspose.Imaging.ImageOptions.TiffOptions createOptions1 = new Aspose.Imaging.ImageOptions.TiffOptions(Imaging.FileFormats.Tiff.Enums.TiffExpectedFormat.Default);

// Устанавливаем 8 бит для каждого компонента цвета.
createOptions1.BitsPerSample = new ushort[] { 8, 8, 8 };

// Установить порядок байтов с обратным порядком байтов (Motorola)
createOptions1.ByteOrder = Aspose.Imaging.FileFormats.Tiff.Enums.TiffByteOrder.BigEndian;

// Установить сжатие LZW.
createOptions1.Compression = Aspose.Imaging.FileFormats.Tiff.Enums.TiffCompressions.Lzw;

// Установить цветовую модель RGB.
createOptions1.Photometric = Aspose.Imaging.FileFormats.Tiff.Enums.TiffPhotometrics.Rgb;

// Все компоненты цвета будут храниться в одной плоскости.
createOptions1.PlanarConfiguration = Aspose.Imaging.FileFormats.Tiff.Enums.TiffPlanarConfigs.Contiguous;

// Создаем первый кадр TIFF размером 100x100 пикселей.
// Обратите внимание, что вам не нужно явно удалять кадры, если они включены в TiffImage.
// При удалении контейнера все фреймы будут удалены автоматически.
Aspose.Imaging.FileFormats.Tiff.TiffFrame frame1 = new Aspose.Imaging.FileFormats.Tiff.TiffFrame(createOptions1, 100, 100);

// Заливаем первый кадр сине-желтым градиентом.
Aspose.Imaging.Brushes.LinearGradientBrush gradientBrush = new Aspose.Imaging.Brushes.LinearGradientBrush(
        new Aspose.Imaging.Point(0, 0),
        new Aspose.Imaging.Point(frame1.Width, frame1.Height),
        Aspose.Imaging.Color.Blue,
        Aspose.Imaging.Color.Yellow);

Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(frame1);
graphics.FillRectangle(gradientBrush, frame1.Bounds);

// Опции для первого кадра
Aspose.Imaging.ImageOptions.TiffOptions createOptions2 = new Aspose.Imaging.ImageOptions.TiffOptions(Imaging.FileFormats.Tiff.Enums.TiffExpectedFormat.Default);

// Установите 1 бит на пиксель для черно-белого изображения.
createOptions2.BitsPerSample = new ushort[] { 1 };

// Установить порядок байтов с прямым порядком байтов (Intel)
createOptions2.ByteOrder = Aspose.Imaging.FileFormats.Tiff.Enums.TiffByteOrder.LittleEndian;

// Установите сжатие факса CCITT Group 3.
createOptions2.Compression = Aspose.Imaging.FileFormats.Tiff.Enums.TiffCompressions.CcittFax3;

// Установите цветовую модель Ч/Б, где 0 — черный, 1 — белый.
createOptions2.Photometric = Aspose.Imaging.FileFormats.Tiff.Enums.TiffPhotometrics.MinIsBlack;

// Создаем второй кадр TIFF размером 200x200px.
Aspose.Imaging.FileFormats.Tiff.TiffFrame frame2 = new Aspose.Imaging.FileFormats.Tiff.TiffFrame(createOptions2, 200, 200);

// Заливаем второй кадр сине-желтым градиентом.
// Он будет автоматически конвертирован в Ч/Б формат за счет соответствующих настроек кадра.
Aspose.Imaging.Graphics graphics2 = new Aspose.Imaging.Graphics(frame2);
graphics2.FillRectangle(gradientBrush, frame2.Bounds);

// Создаем изображение в формате TIFF.
using (Aspose.Imaging.FileFormats.Tiff.TiffImage tiffImage = new Aspose.Imaging.FileFormats.Tiff.TiffImage(
    new Aspose.Imaging.FileFormats.Tiff.TiffFrame[] { frame1, frame2 }))
{
    tiffImage.Save(dir + "output.mutliframe.tif");
}

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