zoukankan      html  css  js  c++  java
  • 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     }
  • 相关阅读:
    Webpack笔记(三)——一款破产版脚手架的开发
    Google C++命名规范
    视觉词袋模型(BOVW)
    机器学习之四:决策树
    Zernike不变矩
    互联网产品各阶段的标准流程文档
    机器学习之三:logistic回归(最优化)
    Python
    机器学习之二:K-近邻(KNN)算法
    Python学习之二:Python 与 C 区别
  • 原文地址:https://www.cnblogs.com/ybqjymy/p/15683940.html
Copyright © 2011-2022 走看看