【问题标题】:tif files and C#tif 文件和 C#
【发布时间】:2014-01-10 23:50:44
【问题描述】:

我正在用 C# 编写 tif 文件。

代码:

System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(800, 1000); //Creates Bitmap
using(Graphics g = Graphics.FromImage(bitmap))
 {
    RectangleF rect = new RectangleF(new PointF(0, 700), new SizeF(200,200)); 
    StringFormat drawFormat = new StringFormat();
    drawFormat.Alignment = StringAlignment.Near;
    g.DrawString("Comment: " + CommentBox.Text, outputFont, Brushes.Black, rect, drawFormat); }

但是,第 3 方应用程序很难查看这些 tif 文件。我可以直接导航到保存这些文件的存储库并打开它们进行查看。

第 3 方软件无法查看的我的 C# tif 文件的位深度 = 32,压缩为 ''(猜测这是默认设置)

可由第 3 方软件查看(而不是由我的 C# 代码创建)的 tif 文件具有位深度 = 1 和压缩 = 'CCITT T.6'

谁能向我解释一下区别是什么,以及为什么我的文件无法被第 3 方软件查看?

【问题讨论】:

  • 没有您在该代码中的何处创建 TIFF 图像。向我们展示您是如何编码图像的。
  • 好的。文件名 = 保存目录 + id + 计数器 + '.tif'
  • 创建一个字符串,它不保存图像。
  • bitmap.Save(fileName);
  • 文件属性中的文件类型信息仅基于文件扩展名,而不是文件实际包含的内容。保存图片时指定文件格式:bitmap.Save(fileName, ImageFormat.Tiff);.

标签: c# tiff


【解决方案1】:

图像之间的区别在于,您从 C# 创建的图像是具有三个 8 位颜色通道 (RGB) 和一个 8 位 Alpha 通道的未压缩彩色图像,而第 3 方软件使用单色传真图像。该软件很可能无法打开全彩图像。

这里的答案应该可以帮助您创建单色图像,然后第三方软件可能可以打开它:Converting a bitmap to monochrome

【讨论】:

  • 有没有办法将我的文件直接保存为 Tiff 单色而不是位图或使用这种转换方法?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-04
  • 2020-12-04
相关资源
最近更新 更多