作者:朱金灿

来源:http://blog.csdn.net/clever101

在一次偶然的机会中得知tiff图像时可以存诸颜色表的,心想以后用GeoTiff来保存图像分类图像就十分方便了。于是研究了如何创建带有颜色表的tif图像,写了一段代码。

代码如下:

#include "geotiffio.h"
#include "xtiffio.h"
#include <stdlib.h> void CreateTif()
{
char *fname = "D:\\newgeo.tif";
TIFF *tif=(TIFF*)0; /* TIFF-level descriptor */
GTIF *gtif=(GTIF*)0; /* GeoKey-level descriptor */
// 创建tif图像
tif=XTIFFOpen(fname,"w");
if (!tif)
goto failure; gtif = GTIFNew(tif);
if (!gtif)
{
printf("failed in GTIFNew\n");
goto failure;
}
//设置标签,表明这是索引图像
TIFFSetField(tif, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_PALETTE);
//创建颜色表
uint16 *r, *g, *b;
r = (uint16 *) _TIFFmalloc(sizeof(uint16) * 3 * 256);
g = r + 256;
b = g + 256; for (int i = 255; i >= 0; i--)
{
b[i] = i;
g[i] = i;
r[i] = i;
}
//将颜色表写入到tif图像中
TIFFSetField(tif, TIFFTAG_COLORMAP, r, g, b);
_TIFFfree(r);
return; failure:
printf("failure in makegeo\n");
if (tif) TIFFClose(tif);
if (gtif) GTIFFree(gtif);
return;
}

需要要到的第三方库是:geotiff库和libtiff库。

参考文献:

1.   用libtiff库写标准.tif传真文件

2.   用libtiff 进行图形编程

3. libtiff中的tag标签含义

最新文章

  1. fluent-ffmpeg 常用函数
  2. MSCRM 用户登录日志
  3. 【T电商 3】Nginx的Http(图片)服务器配置+ftp上传使用说明
  4. Linux kernel develop -- Hello World
  5. php练习:每5个商品一排
  6. ArcSoft&#39;s Office Rearrangement---hdu5933
  7. PMP 项目管理
  8. PAT (Basic Level) Practise:1006. 换个格式输出整数
  9. mysql中出现的Data truncated for column
  10. 教程-Delphi操作快捷键
  11. struts2 模型驱动的action赋值优先顺序
  12. 为了树莓派IIraspberrypi安装emacs+ecb+cedet+session+color-theme+cscope+linum
  13. load
  14. springMVC(3)---利用pdf模板下载
  15. VSCode 插件推荐
  16. java获取本机ip地址(写出来的)
  17. Heartbeat详解
  18. Python学习之MacBook Pro中PyCharm安装pip以及itchat
  19. WebView 错误码整理
  20. 6--Python入门--Python基本运算符

热门文章

  1. leetcode -day29 Binary Tree Inorder Traversal &amp;amp; Restore IP Addresses
  2. 最值(min、max)与极值的理解
  3. 35.Node.js GET/POST请求
  4. Android之Socket的基于UDP传输
  5. 新手前端笔记之--初识html标签
  6. webstorm快捷键(觉得有用,喜欢的话可以保存收藏哦)
  7. 巧用数据流让 Word 文档在线阅读
  8. 一起talk C栗子吧(第九回:C语言实例--最大公约数)
  9. UML学习之用例图
  10. canvas画板基础应用的学习