草庐IT

new_image

全部标签

c# - 在 C# 中使用带有 `new` 运算符的值类型的困境

当operatornew()与引用类型一起使用,实例的空间在堆上分配,引用变量本身放在堆栈上。除此之外,在堆上分配的引用类型实例中的所有内容都被清零。例如这里是一个类:classPerson{publicintid;publicstringname;}在以下代码中:classPersonDemo{staticvoidMain(){Personp=newPerson();Console.WriteLine("id:{0}name:{1}",p.id,p.name);}}p变量在堆栈上并且是Person的创建实例(它的所有成员)都在堆上。p.id将是0和p.name将是null.这是因为在

c# - 从 System.Drawing.Image.RawFormat 获取 ImageFormat

此代码在尝试调用Image.Save(MemoryStream,ImageFormat)时失败。我得到异常:aValuecannotbenull.Parametername:encoder"ImageFormatformat=generatedImage.RawFormatasImageFormat;image.ImageData=generatedImage.Save(format);如果我直接传入ImageFormat对象,它会起作用,例如ImageFormat.Jpeg.将rawformat转换为ImageFormat的最佳方法是什么(最好不要使用switch语句或大量if语句)

c# - 如何在 C# 中使用鼠标选择 PictureBox.Image 上的区域

我只是想在我的picturebox.image上进行选择,但这比一些烦人的情况更糟。我想到了主图片框上的另一个图片框,但对我来说这似乎太懒惰了。我需要知道是否有办法在我要用鼠标绘制的picturebox.image上创建一个选择区域(这将是半透明的蓝色区域)并且它不应该改变我正在处理的图像。示例://StartRectangle//privatevoidpictureBox1_MouseDown(objectsender,System.Windows.Forms.MouseEventArgse){//Determinetheinitialrectanglecoordinates...R

c# - WCF,BasicHttpBinding : Stop new connections but allow existing connections to continue

.NET3.5、VS2008、使用BasicHttpBinding的WCF服务我在Windows服务中托管了一个WCF服务。当Windows服务关闭时,由于升级、定期维护等,我需要优雅地关闭我的WCF服务。WCF服务的方法最多可能需要几秒钟才能完成,典型的数量是每秒2-5次方法调用。我需要以允许任何先前调用方法完成的方式关闭WCF服务,同时拒绝任何新调用。通过这种方式,我可以在大约5-10秒内达到安静状态,然后完成Windows服务的关闭周期。调用ServiceHost.Close似乎是正确的方法,但它会立即关闭客户端连接,而无需等待任何正在进行的方法完成。我的WCF服务完成了它的方法

c# - 质量和压缩与 system.drawing.imaging 之间的区别?

我对ASP.NET中的图像处理完全陌生。我非常熟悉Photoshop,并且在某种程度上了解图像魔术。我试图找出质量和压缩之间的区别,因为其他应用倾向于将它们视为相同。对于system.drawing.imaging,有质量和压缩设置。http://msdn.microsoft.com/en-us/library/system.drawing.imaging.encoder.quality.aspx读取:“质量类别指定图像的压缩级别。”http://msdn.microsoft.com/en-us/library/bb882583.aspx阅读:“质量级别0对应最大压缩,质量级别100对

c# - Image.FromStream() 方法返回 Invalid Argument 异常

我正在从智能相机成像器捕获图像,并通过套接字编程从相机接收字节数组(.NET应用程序是客户端,相机是服务器)。问题是我在运行时遇到System.InvalidArgument异常。privateImagebyteArrayToImage(byte[]byteArray){if(byteArray!=null){MemoryStreamms=newMemoryStream(byteArray);returnImage.FromStream(ms,false,false);/*lastargumentissupposedtoturnImagedatavalidationoff*/}retu

c# - new FileInfo(path).Name 与 Path.GetFileName(path)

哪个更好用,为什么?我的意思是这两个命令在哪些方面不同以及如何不同?性能、可读性……newFileInfo(path).Name或Path.GetFileName(path) 最佳答案 因为您不必为使用Path.GetFilename()创建新对象,所以性能会更好。这是两者的比较:代码:Path.GetFileName("G:\\u.png")IL:IL_0000:ldstr"G:\u.png"IL_0005:callSystem.IO.Path.GetFileName代码:newFileInfo("G:\\u.png").Name

c# - Unity中Image的onClick事件

是否可以在Unity中为图像(Canvas的一个组件)添加“onClick”功能?varobj=newGameObject();ImageNewImage=obj.AddComponent();NewImage.sprite=Resources.Load(a+"/"+obj.name)asSprite;obj.SetActive(true);obj.AddComponent();如何为“onClick”事件添加Action? 最佳答案 假设ClickAction是您的脚本,您可以通过以下方式实现OnClick功能:usingUnit

c# - 当 new-able 使用 new T(),否则使用 default(T)

我正在研究C#泛型函数。错误时,如果泛型类型可以是new-able,返回newT(),否则返回default(T)。代码如下:privateTFunc(){try{//trytodosomething...}catch(Exceptionexception){if(Tisnew-able)//我知道对于那些使用newT()的人来说,它需要whereT:new()。这个问题是,如何在运行时判断这个? 最佳答案 您只需要检查该类型是否具有无参数构造函数。您可以通过以空类型作为参数调用Type.GetConstructor方法来实现。va

c# - Windows 窗体 : add new line to label if text is too long

我正在使用C#。有时,从Web服务返回的文本(我在标签中显示)太长,会在表单边缘被截断。如果表单不适合标签,是否有简单的方法向标签添加换行符?谢谢 最佳答案 如果您将标签设置为autosize,它会随着您放入其中的任何文本自动增长。为了使其以特定宽度自动换行,您可以设置MaximumSize属性。myLabel.MaximumSize=newSize(100,0);myLabel.AutoSize=true;经过测试并有效。如果您希望始终能够看到数据,可以将Label容器的AutoScroll属性设置为true。