support LERC compression

This commit is contained in:
Cristy
2023-09-01 09:38:51 -04:00
parent 840e3454e5
commit dbeaafc956
3 changed files with 20 additions and 1 deletions
+2 -1
View File
@@ -51,7 +51,8 @@ typedef enum
DWAACompression,
DWABCompression,
BC7Compression,
BC5Compression
BC5Compression,
LERCCompression /* https://github.com/Esri/lerc */
} CompressionType;
typedef struct _Ascii85Info
+1
View File
@@ -1372,6 +1372,7 @@ static const OptionInfo
{ "JBIG2", JBIG2Compression, UndefinedOptionFlag, MagickFalse },
{ "JPEG2000", JPEG2000Compression, UndefinedOptionFlag, MagickFalse },
{ "JPEG", JPEGCompression, UndefinedOptionFlag, MagickFalse },
{ "LERC", LERCCompression, UndefinedOptionFlag, MagickFalse },
{ "LosslessJPEG", LosslessJPEGCompression, UndefinedOptionFlag, MagickFalse },
{ "Lossless", LosslessJPEGCompression, UndefinedOptionFlag, MagickFalse },
{ "LZMA", LZMACompression, UndefinedOptionFlag, MagickFalse },
+17
View File
@@ -1576,6 +1576,9 @@ static Image *ReadTIFFImage(const ImageInfo *image_info,
break;
}
case COMPRESSION_OJPEG: image->compression=JPEGCompression; break;
#if defined(COMPRESSION_LERC)
case COMPRESSION_LERC: image->compression=LERCCompression; break;
#endif
#if defined(COMPRESSION_LZMA)
case COMPRESSION_LZMA: image->compression=LZMACompression; break;
#endif
@@ -2383,6 +2386,9 @@ ModuleExport size_t RegisterTIFFImage(void)
#if defined(COMPRESSION_JPEG)
", JPEG"
#endif
#if defined(COMPRESSION_LERC)
", LERC"
#endif
#if defined(COMPRESSION_LZW)
", LZW"
#endif
@@ -3587,6 +3593,13 @@ static MagickBooleanType WriteTIFFImage(const ImageInfo *image_info,
compress_tag=COMPRESSION_JPEG;
break;
}
#if defined(COMPRESSION_LERC)
case LERCCompression:
{
compress_tag=COMPRESSION_LERC;
break;
}
#endif
#if defined(COMPRESSION_LZMA)
case LZMACompression:
{
@@ -3865,6 +3878,10 @@ static MagickBooleanType WriteTIFFImage(const ImageInfo *image_info,
}
case COMPRESSION_CCITTFAX4:
break;
#if defined(LERC_SUPPORT) && defined(COMPRESSION_LERC)
case COMPRESSION_LERC:
break;
#endif
#if defined(LZMA_SUPPORT) && defined(COMPRESSION_LZMA)
case COMPRESSION_LZMA:
{