Qt tiff的读写与显示


  最近在项目中才接触到tiff格式。去度娘上查了一下,“TIFF为图像文件格式,此图像格式复杂,存储内容多,占用存储空间大,其大小是GIF图像的3倍,是相应JPEG图像的10倍”。看下它的定义:标签图像文件格式(Tagged Image File Format,简写为TIFF)是一种主要用来存储包括照片和艺术图在内的图像的文件格式。
  项目基于QT 4.8,可能需要对tiff格式的影像进行操作,故自己测试了它的基本操作——读写与显示。
  在QT中有多种读写影像的方法,部分代码如下:

 1     char *filename = "F:/0.tif";  2     /*read + write*/
 3  QImage image;  4  QImageReader qReader(filename);  5     image = qReader.read();  6     QImageWriter writer("F:/A.tiff", "tiff");  7  writer.write(image);  8  
 9     /*load + write*/
10  QImage image1; 11  image1.load(filename); 12     QImageWriter writer1("F:/B.tiff", "tiff"); 13  writer1.write(image1); 14  
15     /*load + save*/
16  QImage image2; 17  image2.load(filename); 18     image2.save("F:/C.tiff","tiff"); 19  
20     /*write*/
21     QImage image3 = QImage(filename); 22     QImageWriter writer3("F:/D.tiff", "tiff"); 23     writer3.write(image3);

有图有真相


上面是tiff的读写操作,下面来看看tiff的在QLabel上的显示。TIFF的显示代码也很简单。
显示
1 QString filename = "F:/4.tiff"; 2 QPixmap qimage(filename); 3 qimage = qimage.scaled(800,800); 4 ui->labelPic->setPixmap(qimage); 5 ui->labelPic->show();

有图有真相

 QT 4.84 支持的图片格式有:

bmp
gif
ico
jpeg
jpg
mng
pbm
pgm
png
ppm
svg
svgz
tga
tif
tiff
xbm
xpm

可以用以下代码进行查看

1     QList<QByteArray> aa = QImageReader::supportedImageFormats(); 2     foreach (QByteArray a , aa) 3  { 4  qDebug(a.data()); 5     }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM