相关疑难解决方法(0)

如何将图像转换为字节数组

任何人都可以建议我如何将图像转换为字节数组,反之亦然?

如果有人有一些代码样本来帮助我,那就太好了.

我正在开发一个WPF应用程序并使用流阅读器.

c# wpf

99
推荐指数
8
解决办法
29万
查看次数

从字节数组中获取Image对象

我有一个图像的字节数组(存储在数据库中).我想创建一个Image对象,创建几个不同大小的图像并将它们存储回数据库(将其保存回字节数组).

我并不担心数据库部分或调整大小.但有没有一种简单的方法来加载Image对象而不将文件保存到文件系统,然后在我调整大小时将其放回到字节数组中?如果可以的话,我想在记忆中做到这一点.

Something like:
Image myImage = new Image(byte[]);
or
myImage.Load(byte[]);
Run Code Online (Sandbox Code Playgroud)

.net gdi+ image

15
推荐指数
1
解决办法
3万
查看次数

从字节数组数据中获取图像宽度和高度

我有一个byte []数组,它读取一个本地文件,然后我将它分配给一个单一的Texture2D.使用im.sprite = Sprite.Create()函数分配图像.

我遇到的问题是我需要从字节数组中检测图像的宽度和高度,这样我就可以调整纹理大小,避免在运行时在统一场景上进行图像拉伸.

您知道如何使用库或某种函数来创建图像字节数组中的临时图像,然后在创建精灵并应用纹理之前查看所需的宽度和高度吗?

我已经在Java中找到了解决方案,但是通过适应c#无法实现它的工作.

c# arrays image unity-game-engine

7
推荐指数
1
解决办法
2515
查看次数

.NET核心字节数组到图像

如何byte[]在.NET Core中将其转换为图像?

我发现

using (var ms = new MemoryStream(byteArrayIn))
{
    return Image.FromStream(ms);
}
Run Code Online (Sandbox Code Playgroud)

但似乎Image不存在.NET-Core

.net-core asp.net-core

5
推荐指数
1
解决办法
6031
查看次数

C# - Base64字节数组到Image FAILS无论我尝试什么

我在从base64编码的字节数组中用C#创建一个Image/Bitmap对象时遇到了麻烦.

这是我正在处理的事情:


我有一个前端,用户可以裁剪图像.当用户通过a选择图像时input[type=file],我的javascript代码使用HTML5的FileReader将DataUrl(base64字符串)保存到a hidden field,与作物坐标和尺寸以及其中的所有其他内容一起发布form.

精华:

base64数据,如果你想测试自己:

http://kristianbak.com/test_image.txt

  1. base64字符串发布到操作,并作为参数接收 imageData
  2. 该操作将字符串转换为base64字节数组,如下所示:
  3. byte[] imageBytes = Convert.FromBase64String(imageData.EncodeTo64());

EncodeTo64扩展方法:

public static string EncodeTo64(this String toEncode)
{
    var toEncodeAsBytes = Encoding.ASCII.GetBytes(toEncode);
    var returnValue = Convert.ToBase64String(toEncodeAsBytes);
    return returnValue;
}
Run Code Online (Sandbox Code Playgroud)

将base64字符串转换为字节数组后,我使用以下命令将字节读入内存MemoryStream:

using (var imageStream = new MemoryStream(imageBytes, false))
{
    Image image = Image.FromStream(imageStream); //ArgumentException: Parameter is not valid.
}
Run Code Online (Sandbox Code Playgroud)

我也尝试了以下变化:

一个)

using (var imageStream = new MemoryStream(imageBytes))
{
    Bitmap image = new Bitmap(imageStream); //ArgumentException: Parameter is not …
Run Code Online (Sandbox Code Playgroud)

c# system.drawing image bitmap

4
推荐指数
1
解决办法
7916
查看次数

C# - 来自位图的 RGB 缓冲区与 C++ 不同

我正在使用第三方 DLL,它具有 RGB 缓冲区作为参数。

我使用以下代码读取 RGB 缓冲区Bitmap

private byte[] GetBGRValues(Bitmap bmp)
    {

        // Lock the bitmap's bits. 
        Rectangle rect = new Rectangle(0, 0, bmp.Width, bmp.Height);
        System.Drawing.Imaging.BitmapData bmpData = bmp.LockBits(rect, System.Drawing.Imaging.ImageLockMode.ReadOnly, PixelFormat.Format24bppRgb);

        // Get the address of the first line.
        IntPtr ptr = bmpData.Scan0;
        // Declare an array to hold the bytes of the bitmap.
        int bytes = Math.Abs(bmpData.Stride) * bmp.Height;
        byte[] rgbValues = new byte[bytes];


        // Copy the RGB values into the array.
        System.Runtime.InteropServices.Marshal.Copy(ptr, rgbValues, 0, bytes); 
        bmp.UnlockBits(bmpData); …
Run Code Online (Sandbox Code Playgroud)

.net c# bitmap image-processing

3
推荐指数
1
解决办法
2787
查看次数

如何将二进制数据转换为图像并在Div Tag或img Tag中显示?

我正在将我的图像转换为二进制数据并以二进制格式存储:

byte[] bytes = System.IO.File.ReadAllBytes(@"F:\Image\Img1.jpg");
Run Code Online (Sandbox Code Playgroud)

我存储图像的数据库字段是:Varbinary(Max)

现在我正从我的数据库中读取这个二进制数据,我正在获取二进制数据.

我想在此Div标签中显示图像.

这是我的观点:

 <div class="Image-ad"></div>
Run Code Online (Sandbox Code Playgroud)

我的课:

 public class ImageAdd   
 {
        public Guid ImageAddId { get; set; }
        public byte[] Image { get; set; }
 }
Run Code Online (Sandbox Code Playgroud)

我的控制器:

public ActionResult Index()
{
   var data=db.ImageAdd.ToList();    
   return View(db);
}
Run Code Online (Sandbox Code Playgroud)

如何将此二进制数据转换为图像并在Div标签中显示???

c# asp.net-mvc blob image

1
推荐指数
1
解决办法
6078
查看次数

在Core 2.1中将byte []转换为位图

我在.Net 4.6.2中有一个运行良好的项目,该项目大量使用了将byte []转换为Bitmap的方法。

public static Bitmap ByteArrayToImage(byte[] source)
    {
        TypeConverter tc = TypeDescriptor.GetConverter(typeof(Bitmap));
        return (Bitmap)tc.ConvertFrom(source);
    }
Run Code Online (Sandbox Code Playgroud)

但是,自那时以来,我已经将项目升级到.Net Core 2.1,并且这不再起作用。我读过,有些人有问题,但是努力寻找解决方法。

TypeConverter无法从System.Byte []转换

2.1中是否有办法实现这种转换?看起来https://github.com/SixLabors/ImageSharp可能有用,但是当我在Nuget中搜索它时,没有任何结果。

c# .net-core

1
推荐指数
1
解决办法
1083
查看次数