从一个缓冲区加载图像- c# .NET核心

本教程展示了如何使用LEADTOOLS SDK从c# . net Core应用程序的缓冲区中加载图像。

概述
总结 本教程将介绍如何在c# . net核心控制台应用程序中从缓冲区加载图像。
完成时间 30分钟
Visual Studio项目 下载教程项目(1kb)
平台 .NET核心控制台应用程序
IDE Visual Studio 2019, 2022
开发许可 下载LEADTOOLS
用另一种语言试试

所需的知识

步骤熟悉创建项目的基本步骤添加引用和设置License教程,在工作之前从一个缓冲区加载图像- c# .NET核心教程。

创建项目并添加LEADTOOLS引用

中创建的项目的副本开始添加引用和设置License教程。如果您没有该项目,请按照该教程中的步骤创建它。

所需要的参考资料取决于项目的目的。引用可以通过NuGet包添加。

本教程需要以下NuGet包:

有关应用程序需要哪些DLL文件的完整列表,请参阅你的申请中包含的文件

设置License文件

许可证解锁项目所需的特性。它必须在调用任何工具箱函数之前设置。有关详细信息,包括针对不同平台的教程,请参阅设置运行时License

有两种类型的运行时许可证:

请注意

中详细介绍了添加LEADTOOLS NuGet引用和设置许可添加引用和设置License教程。

添加加载图像代码

随着项目的创建、引用的添加和许可的设置,编码就可以开始了。

解决方案资源管理器,打开Program.cs.将下列语句添加到使用块的顶部Program.cs

c#
使用系统;使用先;使用System.Runtime.InteropServices;使用Leadtools;使用Leadtools.Codecs;

下面的代码展示了从缓冲区加载图像的三种方法:

  1. 当图像数据在字节数组中时。
  2. 当图像存储在由指针引用的内存中时。
  3. 当图像被编码为Base64文本字符串时。对于这种情况,提供了一个示例文本文件,可以使用它下载链接

控件中添加一个新方法程序类,命名LoadImageBuffer ().方法中调用此方法Main ()方法,下面调用设置许可代码。将下面的代码添加到新方法中,以上述三种不同的方式从缓冲区加载图像。

c#
不安全的静态无效LoadImageBuffer ()使用(RasterCodecs codecs =RasterCodecs ())字符串文件名=@“C: \ LEADTOOLS22 \资源\ \ image1.cmp图像”字节[] buffer = File.ReadAllBytes(fileName);/ / 1。从字节数组缓冲区加载图像MemoryStream ms =MemoryStream(缓冲);使用(RasterImage image = codecs.Load(ms))控制台。WriteLine ($“图像加载成功!”\nImage大小为{image。ImageWidth}由{image。ImageHeight} \ n”);//加载文件数据到非托管指针IntPtr ptr = Marshal.AllocHGlobal(buffer.Length);元帅。Copy(buffer, 0, ptr, buffer. length);/ / 2。使用非托管指针从内存中加载映像UnmanagedMemoryStream =UnmanagedMemoryStream ((字节*) ptr.ToPointer (), buffer.Length);使用(图像= codecs.Load(unmanagedStream))控制台。WriteLine ($“图像加载成功!”\nImage大小为{image。ImageWidth}由{image。ImageHeight} \ n”);unmanagedStream.Dispose ();Marshal.FreeHGlobal (ptr);//从文本文件加载base-64编码的图像到字符串字符串b64String =文件。ReadAllText (@" base64字符串文件的路径");/ / 3。从Base64编码字符串加载图像如果(b64String ! =字节[] bytes = Convert.FromBase64String(b64String);使用(内存流b64ms =MemoryStream(字节)使用(RasterImage image = codecs.Load(b64ms))控制台。WriteLine ($“图像加载成功!”\nImage大小为{image。ImageWidth}由{image。ImageHeight}”);

请注意

为了能够编译此代码,请选择项目- - - > 属性.导航到构建TAB并启用允许不安全的代码

运行项目

按下运行项目F5,或选择Debug ->开始调试

如果正确地执行了这些步骤,将出现控制台,应用程序将从缓冲区加载指定的映像。应用程序还允许从Base64字符串加载图像的选项。

总结

本教程展示了如何从缓冲区加载图像。此外,它还展示了如何使用RasterCodecs而且RasterImage类。

另请参阅

net
iOS
188金宝搏的网址客服|支持|联系我们|知识产权公告
©1991 - 2022领德科技有限公司版权所有。