[英]c# Function Converting 2D Array to Image Problem
I Made this Function: 我做了这个功能:
public Image intArrayToImage(int[] inputarray)
{
MemoryStream ms = new MemoryStream(inputarray);
Image returnImage = Image.FromStream(ms);
return returnImage;
}
And in the main function: 并在主要功能中:
Color[,] finalarray= new Color[1600, 1600];
finalarray = intingArrayToImage(grayscale_map));
where grayscale_map is a 2d array "grayscale_map[1600x1600]" 其中grayscale_map是2d数组“ grayscale_map [1600x1600]”
But There is an error like this: 但是有这样的错误:
CS1503 C# Argument 1: cannot convert from 'int[ *, * ]' to 'int[ ]' CS1503 C#参数1:无法从'int [*,*]'转换为'int []'
What should i do... 我该怎么办...
The problem is that intArrayToImage
has as an argument an array of integers (one dimensional) and you pass a two dimensional array of integers. 问题在于
intArrayToImage
具有一个整数数组(一维)作为参数,并且您传递了一个二维整数数组。
You could re-declare your method, intArrayToImage
as below: 您可以重新声明您的方法
intArrayToImage
,如下所示:
public Image TwoDimensionalArrayToImage(int[,] twoDimensionalArray)
{
var binaryFormatter = new BinaryFormatter();
using(var memoryStream = new MemoryStream())
{
binaryFormatter.Serialize(memoryStream, twoDimensionalArray);
return Image.FromStream(memoryStream);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.