Commit fa753b5c authored by Dmitry Timoshkov's avatar Dmitry Timoshkov Committed by Alexandre Julliard

windowscodecs: Add support for 16bppGray and 32bppGrayFloat formats to TIFF decoder.

parent b34d4bdc
......@@ -1223,6 +1223,8 @@ static GUID const * const tiff_decode_formats[] = {
&GUID_WICPixelFormatBlackWhite,
&GUID_WICPixelFormat4bppGray,
&GUID_WICPixelFormat8bppGray,
&GUID_WICPixelFormat16bppGray,
&GUID_WICPixelFormat32bppGrayFloat,
&GUID_WICPixelFormat1bppIndexed,
&GUID_WICPixelFormat2bppIndexed,
&GUID_WICPixelFormat4bppIndexed,
......
......@@ -319,6 +319,8 @@ static HRESULT tiff_get_decode_info(TIFF *tiff, tiff_decode_info *decode_info)
}
decode_info->planar = planar;
TRACE("planar %u, photometric %u, samples %u, bps %u\n", planar, photometric, samples, bps);
switch(photometric)
{
case 0: /* WhiteIsZero */
......@@ -383,9 +385,25 @@ static HRESULT tiff_get_decode_info(TIFF *tiff, tiff_decode_info *decode_info)
}
}
break;
case 16:
if (samples != 1)
{
FIXME("unhandled 16bpp grayscale sample count %u\n", samples);
return WINCODEC_ERR_UNSUPPORTEDPIXELFORMAT;
}
decode_info->format = &GUID_WICPixelFormat16bppGray;
break;
case 32:
if (samples != 1)
{
FIXME("unhandled 32bpp grayscale sample count %u\n", samples);
return WINCODEC_ERR_UNSUPPORTEDPIXELFORMAT;
}
decode_info->format = &GUID_WICPixelFormat32bppGrayFloat;
break;
default:
FIXME("unhandled greyscale bit count %u\n", bps);
return E_FAIL;
WARN("unhandled greyscale bit count %u\n", bps);
return WINCODEC_ERR_UNSUPPORTEDPIXELFORMAT;
}
break;
case 2: /* RGB */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment