有了解图像格式的吗? CCITT 格式的图像要怎么打开?

或者怎样转为未压缩的 TIFF?或者 emacs 可以显示 CCITT 压缩的 tiff 图像吗?

Emacs 显示 TIFF 用的 libtiff (如果编译时开了的话)是支持 CCITT 标准的。

http://libtiff.org/support.html

同理,其它用 libtiff 的应用也都支持 CCITT,比如 imagemagick,GIMP。

1 个赞

我从 pdfimages 提取出来的图片文件 ccitt 和 参数文件,看样子参数是 Libtiff 的参数,但是怎样才能转化为 tiff 图片呢?

我用命令

fax2tiff -4 -X 700 -B -M fig-004.ccitt

但是会报 empty input file,我用的是参数文件里的参数。但是 fig-004 明明不是空的

这问题网上讨论的真少啊,Google 只有两三条相关的

CCITT 就是 TIFF 格式标准的一种啊。所以己经是 TIFF 格式了,fax2tiff 并不会识別。

TIFF 本身就沒有什么未压缩格式,符合标准的 TIFF 程式都应該能打开才对。

我打不开啊,大佬,能不能说一个小白能懂的程序

用什麼开的啊?先把后缀改 .tiff 了。

系统自带的图像浏览器,我也不知道是什么名字

那就是不支持啊,下个 imagemagick 啊。然後 display [file] 就行了。

1 个赞
display: no decode delegate for this image format `CCITT' @ error/constitute.c/ReadImage/509.

magick -version 看看有沒有 tiff 。沒有就是包管理器提供的不支持,要么自己编绎了。

用的啥 distro 啊。

Version: ImageMagick 7.0.7-23 Q16 x86_64 2018-02-19 http://www.imagemagick.org
Copyright: © 1999-2018 ImageMagick Studio LLC
License: http://www.imagemagick.org/script/license.php
Features: Cipher DPC HDRI Modules OpenCL OpenMP 
Delegates (built-in): bzlib cairo fontconfig freetype gslib jng jp2 jpeg lcms lqr ltdl lzma openexr pangocairo png ps raw rsvg tiff webp wmf x xml zlib

Arch linux

file 看看文件是什麼类型的。我沒用過 pdfimages,Pkgsrc 和 Gentoo 也都沒提供。查了下沒看到 pdfimages 支持 TIFF 和 CCITT,反而用的是 ppm 格式。ccitt 估計是只是生成 PDF 时的用文件名,和导出格式无关。

ppm 要装 tiff 包,用 ppm2tiff 转成 TIFF 格式。另外 netpbm 提供 ppmtojpegppmtobmp


发到 pdfimages 在 poppler 包里,试了下,果然用 ccitt 选項导出的根本不是 TIFF,而是 ppm 格式。

我这里用 ImageMagick 是可以打开的。似乎 Arch 要用 imagemaigck-full 才行。

1 个赞

十分感谢,原来是这样

大佬能不能推荐一下从 pdf 提取图片的库或者脚本?我用 pdfimages 有时候得到的图片黑白颜色相反。

算了,我把所有的图像都直接转为 PNG,不折腾了

沒有。別家的都是付費的。

pdfimages 出来的应该是 pbm 文件。

 -png           : change the default output format to PNG
 -tiff          : change the default output format to TIFF
 -j             : write JPEG images as JPEG files
 -jp2           : write JPEG2000 images as JP2 files
 -jbig2         : write JBIG2 images as JBIG2 files
 -ccitt         : write CCITT images as CCITT files
 -all           : equivalent to -png -tiff -j -jp2 -jbig2 -ccitt

-ccitt 是说原本是 ccitt 文件,就写成 ccitt 文件,否则是缺省格式。具体的看 man

pbm is ASCII plain text file, while ppm is binary format. They are both low level bitmap formats.