From bdaad90a5e89a8f6266a222ee3e46665f32b6906 Mon Sep 17 00:00:00 2001 From: luoliangyi <87842688@qq.com> Date: Fri, 27 May 2022 11:53:30 +0800 Subject: [PATCH] =?UTF-8?q?tiff=E5=A2=9E=E5=8A=A0=E5=8D=95=E8=89=B2?= =?UTF-8?q?=E5=9B=BE=E5=83=8F=E5=8E=8B=E7=BC=A9=E6=96=B9=E5=BC=8FCCITTFAX4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/imgfmt/HGTiff.cpp | 27 +-------------------------- modules/imgfmt/HGTiff.h | 11 ++++++----- 2 files changed, 7 insertions(+), 31 deletions(-) diff --git a/modules/imgfmt/HGTiff.cpp b/modules/imgfmt/HGTiff.cpp index d836bb5d..b460c549 100644 --- a/modules/imgfmt/HGTiff.cpp +++ b/modules/imgfmt/HGTiff.cpp @@ -321,36 +321,11 @@ HGResult HGAPI HGImgFmt_SaveImageToTiffWriter(HGTiffWriter writer, HGImage image TIFFSetField(tif, TIFFTAG_IMAGELENGTH, height); TIFFSetField(tif, TIFFTAG_BITSPERSAMPLE, bitsPerSample); TIFFSetField(tif, TIFFTAG_SAMPLESPERPIXEL, samplesPerPixel); - TIFFSetField(tif, TIFFTAG_PHOTOMETRIC, (1 == samplesPerPixel) ? PHOTOMETRIC_PALETTE : PHOTOMETRIC_RGB); + TIFFSetField(tif, TIFFTAG_PHOTOMETRIC, (1 == samplesPerPixel) ? PHOTOMETRIC_MINISBLACK : PHOTOMETRIC_RGB); TIFFSetField(tif, TIFFTAG_PLANARCONFIG, PLANARCONFIG_CONTIG); TIFFSetField(tif, TIFFTAG_ROWSPERSTRIP, height); TIFFSetField(tif, TIFFTAG_ORIENTATION, ORIENTATION_TOPLEFT); - if (HGBASE_IMGTYPE_BINARY == type) - { - uint16 rTable[2], gTable[2], bTable[2]; - //#pragma omp parallel for - for (int32_t i = 0; i < 2; ++i) - { - rTable[i] = i * 255; - gTable[i] = i * 255; - bTable[i] = i * 255; - } - TIFFSetField(tif, TIFFTAG_COLORMAP, rTable, gTable, bTable); - } - else if (HGBASE_IMGTYPE_GRAY == type) - { - uint16 rTable[256], gTable[256], bTable[256]; - //#pragma omp parallel for - for (int32_t i = 0; i < 256; ++i) - { - rTable[i] = i; - gTable[i] = i; - bTable[i] = i; - } - TIFFSetField(tif, TIFFTAG_COLORMAP, rTable, gTable, bTable); - } - if (NULL != info) { TIFFSetField(tif, TIFFTAG_COMPRESSION, info->compression); diff --git a/modules/imgfmt/HGTiff.h b/modules/imgfmt/HGTiff.h index f0f43311..7a316825 100644 --- a/modules/imgfmt/HGTiff.h +++ b/modules/imgfmt/HGTiff.h @@ -10,13 +10,14 @@ HG_DECLARE_HANDLE(HGTiffReader); HG_DECLARE_HANDLE(HGTiffWriter); /* 压缩方式 */ -#define HGIMGFMT_TIFFCOMP_NONE 1L -#define HGIMGFMT_TIFFCOMP_LZW 5L -#define HGIMGFMT_TIFFCOMP_JPEG 7L +#define HGIMGFMT_TIFFCOMP_NONE 1L +#define HGIMGFMT_TIFFCOMP_CCITTFAX4 4L +#define HGIMGFMT_TIFFCOMP_LZW 5L +#define HGIMGFMT_TIFFCOMP_JPEG 7L /* 分辨率单位 */ -#define HGIMGFMT_TIFFRESUNIT_NONE 1L -#define HGIMGFMT_TIFFRESUNIT_INCH 2L /* 英寸 */ +#define HGIMGFMT_TIFFRESUNIT_NONE 1L +#define HGIMGFMT_TIFFRESUNIT_INCH 2L /* 英寸 */ #define HGIMGFMT_TIFFRESUNIT_CENTIMETER 3L /* 厘米 */ typedef struct