关于UNITY中System.Drawing引用失败的处理方法
关于UNITY中System.Drawing引用失败的处理方法
今天在使用EPPlus中,遇到一个处于This type has been forwarded to assembly ‘System.Drawing,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a’ .
You must add a reference to assembly ‘System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’.的问题。
目的是要在UNITY中使用C#更改Excel中字体或者边框的颜色,但是在颜色这里遇到了两边版本不一致的问题。以下是我做的处理操作即Debug。
问题代码如下(以设置单元格边框为例)
网上找到使用EPPlus设置Excel单元格边框有两种方式
//第一种
//worksheet.Cells[i + 7, 10].Style.Border.BorderAround(ExcelBorderStyle.Thin, Color.FromArgb(191, 191, 191));//设置单元格所有边框
worksheet.Cells[i + 7, 10].Style.Border.BorderAround(ExcelBorderStyle.Thin, System.Drawing.Color.Black);//设置单元格所有边框
//第二种
worksheet.Cells[i + 7, 10].Style.Border.Top.Style = ExcelBorderStyle.Thin;
worksheet.Cells[i + 7, 10].Style.Border.Bottom.Style = ExcelBorderStyle.Thin;
worksheet.Cells[i + 7, 10].Style.Border.Left.Style = ExcelBorderStyle.Thin;
worksheet.Cells[i + 7, 10].Style.Border.Right.Style = ExcelBorderStyle.Thin;//worksheet.Cells[i + 7, 10].Style.Border.Top.Color.SetColor(Color.FromArgb(191, 191, 191));
//worksheet.Cells[i + 7, 10].Style.Border.Bottom.Color.SetColor(Color.FromArgb(191, 191, 191));
//worksheet.Cells[i + 7, 10].Style.Border.Left.Color.SetColor(Color.FromArgb(191, 191, 191));
//worksheet.Cells[i + 7, 10].Style.Border.Right.Color.SetColor(Color.FromArgb(191, 191, 191));worksheet.Cells[i + 7, 10].Style.Border.Top.Color.SetColor(System.Drawing.Color.Black);
worksheet.Cells[i + 7, 10].Style.Border.Bottom.Color.SetColor(System.Drawing.Color.Black);
worksheet.Cells[i + 7, 10].Style.Border.Left.Color.SetColor(System.Drawing.Color.Black);
worksheet.Cells[i + 7, 10].Style.Border.Right.Color.SetColor(System.Drawing.Color.Black);
以上代码是两种设置单元格边框格式的方法,经测试都可以使用,但要注意在UNITY中会提示Color有两个命名空间都存在需要指定一个,所以我这里采用的是System.Drawing.Color.Black。
屏蔽处为原文。
之后查看了一下System.Drawing的版本,在我这里的是4.X所以就是开头说的问题,需要添加2.X版本。
在Unity的安装路径下D:\unity\2018.4.31f1\Editor\Data\Mono\lib\mono\2.0(因个人而异)找到
添加到项目的Plugins文件夹下即可(没有就自己新建一个也行)。
问题到此解决,很多原理东西我也不是很明白,这里关于C#使用EPPlus访问更改Excel的代码参考一个14年关于EPPlus的说明博文。
关于UNITY中System.Drawing引用失败的处理方法相关推荐
- Unity中的资源管理-引用计数
本文分享Unity中的资源管理-引用计数 在前面的文章中, 我们一起学习了对象池的基本原理和几种实现, 今天和大家继续聊聊另一个资源管理中比较重要的技术: 引用计数. GC的基础知识 GC(Garba ...
- php的email函数发送失败,php中mail函数发送邮件失败的解决方法_php技巧
本文实例讲述了php中mail函数发送邮件失败的解决方法.分享给大家供大家参考.具体分析如下: php中mail函数是一个自带的发邮件的函数,但是如果你真的要使用mail函数来发邮件那必须是要给你系统 ...
- 在 unity中可以使用的直接设置音量大小的方法
参考网址 在unity中很多的音量控制dll都没有办法使用,调用"user.dll"话只是模拟电脑的快捷键,而且不能够直接设置对应的数值. 需要使用C++创建Dll 生成C++ d ...
- (C#脚本)Unity中角色移动的几种实现方法,以及心得。(适合新手入门)
目录 1.对Unity脚本写入有一定的思维了解. 2.分析需求,观察了解要实现的项目的条件在Unity中的外在表现. 3.开始通过代码实现功能. 4.一个整体的代码实现 5.学习心得 PS:首先我们要 ...
- 计算机定时关机计划任务失败,电脑无法创建任务计划怎么办|电脑中创建任务计划失败的解决方法...
如果我们要实现定时关机或者关机自动清理系统垃圾等功能,可以借助电脑系统中的任务计划程序来设置.首先就是要创建任务计划,刚开始的前几个步骤还可以正常完成,到最后一步就会弹出无法创建任务计划的提示.所 ...
- Unity中使用射线查询MeshCollider背面的方法
之前遇到一个问题要从MeshCollider背面方向发出射线,直至检测到该射线与MeshCollider的相交点为止. 后来我用双面MeshCollider的方法解决了http://www.cnblo ...
- 深入理解C++中的循环引用问题及解决方法
循环引用问题在C++中是指当两个或多个对象互相持有对方的引用(通常是通过智能指针),导致它们的引用计数永远不会降为零,从而导致内存泄漏的情况.这种问题在使用shared_ptr时尤为突出,因为shar ...
- Unity中获取本机IP地址的方法
做OptiTrack局域网数据通信时,需要设置本地IP和动捕数据服务器IP,来实现获取动捕数据.由于局域网搭建时需要手动设置电脑IP,因此想到如果可以获取本机IP,服务器IP通常设置固定后不会更改,如 ...
- html 图片显示一块一块加载失败,页面中图片加载失败的优化方法
网站当中经常会遇到图片加载失败的问题,img中有地址,但是地址打开是错误的.情况如下: 不同浏览器处理错误图片是不一样的,有的干脆就显示差号,例如IE,有的显示一张破碎的图片,有的则是给一张高度比较大 ...
最新文章
- 深入分析Linux内核源码oss.org.cn/kernel-book/
- velodyne显示点云中grid的单位_led显示屏怎么选择点间距
- LeetCode 784. 字母大小写全排列(位运算回溯)
- Objective-C 2.0 with Cocoa Foundation---对象的初始化以及实例变量的作用域(1)
- 自定义View之HenCoder学习笔记
- 随机森林-科比生涯数据集分析与预测
- 关联规则:一款在策略挖掘中必不可少的算法
- Visual Studio Code 安装Vim插件后,复制(Ctrl C)等快捷键变成Insert 模式的问题
- 教育平台用户注册模块
- Introduce·哲学友好投稿核心期刊推荐《云南社会科学》
- iShot--长截图的首选工具
- 深度学习课程资源整理
- 支付宝Html授权,网页版的支付宝授权登录(vue+java)
- iPad刷机的简洁教程(忘记密码怎么办?)
- 求助,如何理解单相逆变器中的电压电流双闭环PI控制
- UNCTF2022部分题解
- 我用三年见证拼多多的“黑化史”
- 【2019华为笔试】召唤师的技能——圆排列,翻转和项链排列
- 如何实现欧姆龙PLC的在线编程和远程上下载
- 802.1X(Dot1x)认证原理