【发布时间】:2020-02-06 17:33:49
【问题描述】:
我正在从相机接收数据并将每个图像保存为多页 tiff 中的一个页面。我可以设置每个文件都有例如100 页,我正在打电话:
TIFFSetField(out, TIFFTAG_PAGENUMBER, page_number, total_pages);
但是,如果我无法以足够快的速度将数据写入磁盘,我将停止采集。在这一点上,我可能已经将 100 页中的 50 页写入了多页 tiff。现在多页 tiff 文件报告总页数为 100,但实际只写入了 50 页。一些应用程序会报告 100 页,但对于第 51-100 页,将没有数据并且图像将显示为黑色。
因此,当我结束磁盘写入到最后写入页面的值时,我需要更新total_pages 数字。
这完全可以做到吗? total_pages 值是一次写入一个公共标头,我可以通过这种方式更新和修复文件,还是这个值写入每个页面,这意味着我必须编辑已经写入磁盘的每个页面?或者有没有更好的方法来处理这个问题?
【问题讨论】: