系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 系统教程 > Linux教程 > 详细页面

netcore在CentOS7 下使用处理图片的问题

时间:2020-02-21来源:系统城作者:电脑系统城

请看代码,当你在centos下要把图片转为Base64的时候

复制代码
 1             MemoryStream ms = new MemoryStream();
 2             try
 3             {
 4                 Bitmap bmp = new Bitmap(filePath);
 5                 bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
 6 
 7                 byte[] arr = new byte[ms.Length];
 8                 ms.Position = 0;
 9                 ms.Read(arr, 0, (int)ms.Length);
10                 return Convert.ToBase64String(arr);
11             }
12             catch (Exception ex)
13             {
14                 Core.Helpers.Log4NetHelper.WriteError(typeof(string),ex);
15                 return "";
16             }
17             finally
18             {
19                 ms.Close();
20             }
复制代码

明明你在本地或windows服务器是正常的,可是在linux下就会抛出如下异常:

复制代码
System.TypeInitializationException: The type initializer for 'Gdip' threw an exception. ---> System.DllNotFoundException: Unable to load DLL 'libgdiplus': The specified module could not be found.
   at System.Runtime.InteropServices.FunctionWrapper`1.get_Delegate()
   at System.Drawing.SafeNativeMethods.Gdip.GdiplusStartup(IntPtr& token, StartupInput& input, StartupOutput& output)
   at System.Drawing.SafeNativeMethods.Gdip..cctor()
   --- End of inner exception stack trace ---
   at System.Drawing.SafeNativeMethods.Gdip.GdipCreateBitmapFromFile(String filename, IntPtr& bitmap)
   at System.Drawing.Bitmap..ctor(String filename, Boolean useIcm)
复制代码

看了报错信息知道 linux没有 libgdiplus

解决方案:

#locate libdl
#cd /usr/lib64 #ln -s libdl-2.17.so libdl.so
如果 locate libdl 报以下错误:
-bash: locate: command not found

其原因是没有安装mlocate这个包

安装一下包:#yum  -y install mlocate

再更新一下库:#updatedb

最后最关键的是安装一下 libgdiplus 库,搞定!

 

yum install libgdiplus-devel
分享到:

相关信息

  • linux 文件权限怎么解析

    常用权限linux系统内有档案有三种身份 u:拥有者 g:群组 o:其他人这些身份对于文档常用的有下面权限:r:读权限,用户可以读取文档的内容,如用cat,more查看w:写权限,用户可以编辑文档x...

    2024-07-07

  • 如何使用WPSeku找出 WordPress 安全问题?

    然而,如果我们遵循通常的 WordPress 最佳实践,这些安全问题可以避免。在本篇中,我们会向你展示如何使用 WPSeku,一个 Linux 中的 WordPress 漏洞扫描器,它可以被用来找出你安装...

    2024-07-03

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载