我正在使用libtiff.net库来编码来自twain投诉扫描器的字节,并带有以下标签。
扫描仪设置
_twain32.SetCap(TwCap.IUnits, TwUnits.Inches);
_twain32.SetCap(TwCap.IPixelType, TwPixelType.BW);
_twain32.SetCap(TwCap.BitDepth, 1);
Tiff设置
_tiffOutput = Tiff.Open(fileName, "w");
_tiffOutput.SetField(TiffTag.IMAGEWIDTH, width);
_tiffOutput.SetField(TiffTag.IMAGELENGTH, length);
_tiffOutput.SetField(TiffTag.IMAGEWIDTH, width);
_tiffOutput.SetField(TiffTag.SAMPLESPERPIXEL, 1);
_tiffOutput.SetField(TiffTag.BITSPERSAMPLE, 1);
_tiffOutput.SetField(TiffTag.ROWSPERSTRIP, length);
_tiffOutput.SetField(TiffTag.XRESOLUTION, dpiX);
_tiffOutput.SetField(TiffTag.YRESOLUTION, dpiY);
_tiffOutput.SetField(TiffTag.SUBFILETYPE, 0);
_tiffOutput.SetField(TiffTag.RESOLUTIONUNIT, ResUnit.INCH);
_tiffOutput.SetField(TiffTag.PLANARCONFIG, PlanarConfig.CONTIG);
_tiffOutput.SetField(TiffTag.PHOTOMETRIC, Photometric.MINISWHITE);
_tiffOutput.SetField(TiffTag.COMPRESSION, Compression.CCITTFAX4);
_tiffOutput.SetField(TiffTag.GROUP4OPTIONS, Group3Opt.FILLBITS);
_tiffOutput.SetField(TiffTag.FILLORDER, FillOrder.LSB2MSB);
我遇到的问题是_tiffOutput.SetField(TiffTag.GROUP4OPTIONS, Group3Opt.FILLBITS);
它没有填充到字节边界,正如根据
https://bitmiracle.github.io/libtiff.net/html/e00d6851-cf09-287f-638b-fc62c498351a.htm和https://bitmiracle.github.io/libtiff.net/html/004b29cb-3828-19ac-b924-95671b477f08.htm。
查看时图像显示正确,不会产生错误。我还使用AWare Systems TiffTagViewer来验证处理后的tiff图像。压缩[组4传真(CCITTFAX4)]和Group4Options [4(FILLBITS)]已经过验证,但ImageWidth和ImageLength没有落在字节边界上。
有人能看到我错过的东西吗?