也许只是我的疏忽,但我无法理解:
using System.Drawing;
但是,如果我尝试使用位图,则会得到以下错误:
错误CS0246无法找到类型或名称空间名称“Bitmap”(您是缺少使用指令还是程序集引用?)
to 19-IntelliSense建议安装包System.Drawing.Common
,但是如果我这样做,我会收到另一个错误,声明:
在名称空间'System.Drawing‘中找不到类型名称'Bitmap’。此类型已转发给程序集'System.Drawing。
如何解决这个问题以实际使用Bitmap
类?
发布于 2021-12-03 08:42:07
将System.Drawing.dll
从C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0
复制到您的团结项目文件夹中。我把我的放在Assets/Plugins/System.Drawing.dll
下。
此版本将包含Bitmap
类。编辑器中仍然会出现错误,但是一切都会很好地编译,并且应该能够在Visual中使用位图。
在使用这个dll中的某些类型(例如Color
、RectangleF
)时,您可能会遇到一个问题,即统一在4.0和2.0版本的dll文件之间出现了混淆。我找到的解决这个问题的唯一解决方案是将Api compatibility Level
从.NET Standard 2.0
更改为Edit
> Project Settings...
> Player
下的4.0
。。
如果您选择不这样做,您将发现System.Drawing
在C:/Program Files/Unity/Hub/Editor/2020.2.0f1/Editor/Data/NetStandard/ref/2.0.0/netstandard.dll
中。删除此dll将导致Unity抱怨,直到您恢复为止。
有些解决方案建议修改C:\Program Files\Unity\Hub\Editor\2020.2.0f1\Editor\Data\NetStandard\compat\2.0.0\shims\netfx\System.Drawing.dll
或C:\Program Files\Unity\Hub\Editor\2020.2.0f1\Editor\Data\MonoBleedingEdge\lib\mono\4.5\System.Drawing.dll
,但我建议不要这样做,因为它会影响使用相同统一版本的其他项目。
https://stackoverflow.com/questions/60168061
复制相似问题