c# - 如何从位图中计算或获取 ROWSPERSTRIP、STRIPBYTECOUNTS、STRIPOFFSETS 值以在 C# 中进行 tiff 转换
问题描述
将图像转换为具有属性的 tiff 图像。使用位图对象将图像转换为 tiff。在位图对象中,我无法找到 STRIPOFFSETS、ROWSPERSTRIP、STRIPBYTECOUNTS 等值。请帮助我,如何从位图对象获取或计算这些值。
实际上我正在使用下面的代码从位图转换 tiff 图像。
请帮助如何从位图对象获取或计算这些值。
public static void GetTiffImage(string filepath)
{
try
{
using (Bitmap bmp= new Bitmap(filepath))
{
using (Tiff tif = Tiff.Open(filename,'w'))
{
if (tif == null)
return null;
tif.SetField(TiffTag.ORIENTATION, Orientation.TOPLEFT);
tif.SetField(TiffTag.SAMPLESPERPIXEL, 1);
tif.SetField(TiffTag.IMAGEWIDTH, bmp.Width);
//Please help how to get these below values from bitmap
tif.SetField(TiffTag.STRIPOFFSETS, ?);
tif.SetField(TiffTag.ROWSPERSTRIP, ?);
tif.SetField(TiffTag.STRIPBYTECOUNTS, ?);
}
}
............................
.....................
}
}
catch (Exception ex)
{
return null;
}
}
解决方案
ROWSPERSTRIP
将是图像高度。
STRIPBYTECOUNTS
将是图像高度*宽度*颜色深度,其中颜色深度以字节为单位,因此每种颜色的典型 1 字节 0-255 范围将是 3 字节。
推荐阅读
- python - Python 3 属性错误:Statsmodels 没有属性“工具”
- python - 在小程序中使用附加问题
- apache-kafka - 卡夫卡连接。将环境变量添加到自定义转换器配置
- java - 如何在 REST WebService 中实现动态 URL
- java - QueryDSL 内连接:连接的预期路径
- python-3.x - 如何从值是数据类型的熊猫数据框中制作字典?
- python - 使用 python 对 BigQuery API 运行大型查询
- laravel - laravel-5.7:数据未保存到数据库中
- c - 如何在 C 中对不同文件的列求和?
- java - 如何获取所选下拉菜单的文本值