【问题标题】:Generate .bmp image in C# [duplicate]在 C# 中生成 .bmp 图像 [重复]
【发布时间】:2014-02-01 18:55:48
【问题描述】:

我想生成一个二维像素数组,然后将其保存在 .bmp 文件中。我读过 Bitmaps,但我不完全了解如何将 Integer 的 2D 数组转换为 Bitmap image

这就是我已经找到并尝试做的

        // Create array of integers
        int width = 1024;
        int height = 768;
        int[] integers = new int[width * height];

        // Fill array with random values
        Random random = new Random();
        for (int i = 0; i < integers.Length; ++i)
        {
            integers[i] = random.Next(Int32.MaxValue);
        }

        // Copy into bitmap
        Bitmap bitmap;
        unsafe
        {
            fixed (int* intPtr = &integers[0])
            {

            bitmap = new Bitmap(width, height, width, PixelFormat.Format32bppRgb, new IntPtr(&integers[0]));
            }
        }

不过这部分还是没看懂

        // Copy into bitmap
        Bitmap bitmap;
        unsafe
        {
            fixed (int* intPtr = &integers[0])
            {

            bitmap = new Bitmap(width, height, width, PixelFormat.Format32bppRgb, new IntPtr(&integers[0]));
            }
        }
  1. 编译器说 找不到类型或命名空间名称“位图”(您是否缺少 using 指令或程序集引用?)
  2. 如何将其放入 bmp 文件中?

【问题讨论】:

  • 请展示您的尝试

标签: c# arrays bitmap 2d bmp


【解决方案1】:

好老的编译器……你试过他的建议了吗?

在文件顶部添加这一行:

using System.Drawing.Bitmap;

如果你想要更多:检查msdn

顺便说一句,您可以右键单击Bitmap,然后选择Resolve 进行操作。这是简单的方法。

要将图像保存到文件中,有多种方法可以做到。这取决于你是哪个平台。我认为您应该查看WriteableImageExherehere

【讨论】:

  • 不是所有的错误都能通过 VS 的建议解决,但这是正确的答案。
  • 当然,如果您没有参考资料,您可能需要添加参考资料。
  • 谢谢。位图的问题解决了。但是如何将我的位图保存在 .bmp 文件中?
  • 我刚刚编辑了第二个问题的答案。
  • 非常感谢!你帮了我!现在它工作正常)
猜你喜欢
  • 1970-01-01
  • 2015-06-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-26
  • 2012-07-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多