сохранить изображение (TIFF), сначала сохранить как BMP - почему? - PullRequest
1 голос
/ 25 сентября 2019

Я унаследовал некоторый код, который принимает файл TIFF и сохраняет его также в формате TIFF, но со сжатием.В коде используются классы из пространства имен System.Drawing.Imaging (в противоположность, скажем, System.Windows.Media).

Я понимаю, как получить кодировщик сжатия, настроить параметры кодера и т. Д. Но я озадачен фрагментом ниже,Исходное изображение сохраняется в формате MemoryStream в формате BMP, затем из изображения в формате BMP генерируется выходной TIFF:

using (var memStream = new MemoryStream())
{
    image.Save(memStream, ImageFormat.Bmp);
    memStream.Seek(0L, SeekOrigin.Begin);

    using (var bmpImage = Image.FromStream(memStream))
    {
        bmpImage.Save(outputFile, tiffEncoder, encoderParams);
    }
}

Что может послужить причиной для создания промежуточного изображения в формате BMP и использованиячто в качестве основы для вывода TIFF?

Обновление : речь идет о штриховых рисунках - т.е. черно-белых - и используется сжатие "CC4" (CCITT Group 4).
Полагаю, этоВозможно, что сжатие CC4 будет более эффективным, если вход находится в форме BMP.Но я думаю, что некоторая эффективность будет потеряна при промежуточном преобразовании из TIFF в BMP ...

...