唔,相关资料比较少,还在摸索中,可能有不对的或者不全面的地方,把已经做的记下来
一、安装GDAL
安装有多种方法,我根据GDAL官网Mac安装说明选择了比较简单的一个方法:用homebrew下载安装。
1.安装homebrew
在终端如入如下命令:
$ ruby -e "$(curl --insecure -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2.下载并安装GDAL
在终端如入如下命令:
$ brew install gdal
安装完成后可以输入如下命令来检测是否安装成功:
$ gdalinfo --version
二、Qt Creator里配置GDAL
1.找到GDAL的下载目录
找到保存GDAL的文件夹,这个文件夹默认隐藏,直接搜索是搜不到的。可以打开Finder,按快捷键CMD+SHIFT+G
,输入/usr/local/Cellar/gdal
,找到里面包含lib
和include
的文件夹,复制到项目目录下。
2.工程项目里配置
在Qt界面里的项目文件夹上右击add library
,选择External library
,Library file
选择lib文件下的libgdal.1.dylib
,Include path
选择include
文件夹。
Qt会自动在.pro文件里加入如下代码:
win32:CONFIG(release, debug|release): LIBS += -L$$PWD/gdal/lib/release/ -lgdal.1
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/gdal/lib/debug/ -lgdal.1
else:unix: LIBS += -L$$PWD/gdal/lib/ -lgdal.1
INCLUDEPATH += $$PWD/gdal/include
DEPENDPATH += $$PWD/gdal/include
在Widget.cpp文件里加入如下代码
#include "gdal_priv.h"
3.测试是否配置成功
(1)新建一个push button
(2)新建QLabel
(3)在push button 的trigger槽中输入代码
GDALAllRegister();
CPLSetConfigOption("GDAL_FILENAME_IS_UTF8", "NO"); //支持中文路径
GDALDataset* img = (GDALDataset *)GDALOpen("/Users/Celina/Task/HJ/picture/1.tiff", GA_ReadOnly);//根据自己的图像路径填写
if (img == nullptr)
{
ui->label->setText(tr("图像读取失败"));
}
int imgWidth = img->GetRasterXSize();//图像宽度
ui->label->setText(QString::number(imgWidth));
如果没有问题的话,运行后点击按钮会显示图像宽度。