jjzjj

c# - 如何将 PictureBox.Image 保存到文件?

我使用以下代码将jpgImage写入PictureBox.Image。varjpgImage=newByte[jpgImageSize];...pictureBox.Image=newBitmap(newMemoryStream(jpgImage));我可以使用下面的代码将字节数组写入文件using(varbw=newBinaryWriter(File.Open(filename,FileMode.Create,FileAccess.Write,FileShare.None))){bw.Write(jpgImage);}但是如何从PictureBox.Image中获取jpgImage字

c# - 更改照片的 "DateTaken"

我刚从美国旅行回来,在编辑所有照片后,我注意到相机使用的是以色列时区,而不是美国时区。有7个小时的时差,所以这对我来说是个大问题。我有175GB的照片,但我“只”关心350张照片。我无法手动编辑它们的EXIF,所以我考虑使用C#。这个想法是,它将读取每张照片的EXIF,获取时间,并将原始照片中的时间设置为负7小时。我尝试使用Image类,但它不起作用。我尝试使用bitmapMetadate,它成功了!我设法抽出时间做了零下七个小时,但我不知道如何节省时间。我该怎么做?谢谢!publicstaticstringPhotoToBeEdited(FileInfof){FileStreamfs

c# - 如何将 Image 对象与 C# .NET 进行比较?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion我们可以用C#比较两个Image对象吗?例如,检查它们是否相等,甚至更好地检查它们的像素有多相似?如果可能,怎么做?

c# - GDI+ System.Drawing.Bitmap 间歇性地给出错误参数无效

我在ASP.Net应用程序中有一些C#代码可以执行此操作:位图bmp=新位图(1184,1900);偶尔会抛出异常“参数无效”。现在我一直在谷歌搜索,显然GDI+因抛出随机异常而臭名昭著,很多人都遇到过这个问题,但没有人能解决它!我检查了系统,它有足够的RAM和交换空间。现在在过去,如果我执行“iisreset”,那么问题就会消失,但几天后又会出现。但我不相信我造成了内存泄漏,因为正如我上面所说,有大量的ram+swap空闲。谁有解决办法? 最佳答案 停止使用GDI+并开始使用WPF成像类(.NET3.0)。这些是GDI+类的主要清

c# - WPF:如何高效地每秒更新图像 30 次

我正在编写一个使用组件的WPF应用程序,该组件返回一个指向位图像素(步长*高度)的指针(IntPtr)。我事先知道位图是一个24位的rgb,它的宽度和高度。用这些位图更新图像控件构成了一个视频给用户,但我不确定最有效的方法是什么,大多数时候CPU使用率达到75%+,内存从40mb变化到500mb,我认为GC开始工作,然后再次下降到40mm。该应用开始没有响应。我该怎么办?谢谢! 最佳答案 您很可能正在分配新的位图,这些位图不是一次性的。您应该分配一个WriteableBitmap并更新它。链接的文档描述了锁定、更新和解锁Writea

C#加载JPG文件,提取BitmapImage

我正在尝试从JPG中提取BitmapImage。这是我的代码:FileStreamfIn=newFileStream(sourceFileName,FileMode.Open);//sourceJPGBitmapdImg=newBitmap(fIn);MemoryStreamms=newMemoryStream();dImg.Save(ms,ImageFormat.Jpeg);image=newBitmapImage();image.BeginInit();image.StreamSource=newMemoryStream(ms.ToArray());image.EndInit();

c# - .NET 以与加载时相同的质量保存 jpeg

我有一个cannon数码相机,我将它设置为拍摄超精细质量的照片,它输出一个3兆大小的.jpg文件。如果我在ASP.NET中这样加载它(这对于更改它的dpi分辨率或裁剪它或其他任何东西很有用)imgPicture=Image.FromFile(Config.WorkDirectory+this.TempPhotoName);bmpPicture=newBitmap(imgPicture);然后我像这样再次保存它:bmpModified.Save(Config.WorkDirectory+this.TempPhotoName,System.Drawing.Imaging.ImageForm

c# - 在类库 (.NET Standard) 中找不到位图类

我想制作一个类库(.NET标准)并且我正在使用System.Drawing,但是我得到了错误:CS0246C#Thetypeornamespacename'Bitmap'couldnotbefound(areyoumissingausingdirectiveoranassemblyreference?)我正在使用.NETStandard2.0。 最佳答案 我是CoreCompat.System.Drawing的作者。如果您使用的是.NETCore2.0,我建议您转到System.Drawing.Common相反,这是Microsof

c# - 将两个图像合并为一个新图像

我有两个不同尺寸的JPEG文件:图像1(宽度1,高度1)图像2(宽度2,高度2)我想创建Image3(Width3,Height3),左边是Image1,右边是Image2。 最佳答案 像这样的东西会给你一个新的图像,两个原始图像并排。Bitmapbitmap=newBitmap(image1.Width+image2.Width,Math.Max(image1.Height,image2.Height));using(Graphicsg=Graphics.FromImage(bitmap)){g.DrawImage(image1,

c# - 使用 C# 在位图上锐化

我想在图像上放置锐化滤镜。我找到了一个网站withshorttutorial.我试着用C#来做,所以这是我的代码。无论如何,我试图找出它不起作用的原因。我不知道我是否做错了什么,如果是,请告诉我该怎么做才能让它正常工作。谢谢publicstaticBitmapsharpen(Bitmapimage){BitmapsharpenImage=newBitmap(image.Width,image.Height);intfilterWidth=3;intfilterHeight=3;intw=image.Width;inth=image.Height;double[,]filter=newd