gpt4 book ai didi

asp.net - C#:GDI+ : OverWriting an Image using Save Method of Bitmap

转载 作者:行者123 更新时间:2023-12-04 04:48:10 24 4
gpt4 key购买 nike

我有一个ASP.NET C#页面,在这里我正在调整文件夹中图像的大小。我正在使用GDI +执行此操作。我想调整图像的大小并替换为旧图像。所以当我尝试使用现有名称保存时,Save方法将引发错误。但是,如果我使用不同的名称,它将被保存。但是我想为新创建的调整大小后的图像使用相同的文件名,因为我需要用调整后大小的新文件覆盖现有文件。任何想法如何前进。
我的代码是

     oldImagePath= oldImagePath.Replace(".jpg", "NEW.jpg");

try
{
ImageCodecInfo[] Info = ImageCodecInfo.GetImageEncoders();
EncoderParameters Params = new EncoderParameters(1);
Params.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 100L);
target.Save(oldImagePath, Info[1], Params);
}

如果我注释为目标文件创建新名称的第一行,则它将无法正常工作,否则它将无法正常工作。但是我想使用相同的名称。 ?提前致谢

最佳答案

您需要先删除原始文件。进行区分很重要-在.NET中使用图像处理时,您正在使用内存中对象,该对象的字节是通过读取原始图像来填充的。您没有使用实际的原始图像。因此,当您保存这个全新的对象(恰好使用现有图像中的数据),并尝试使用已在使用中的路径时,将会出现异常。

您还需要确保此时仍未打开原始文件。确保处理掉用于填充要处理的Image对象的原始文件流。然后删除,然后保存。

关于asp.net - C#:GDI+ : OverWriting an Image using Save Method of Bitmap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1036115/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com