маскируйте и сохраняйте растровое изображение только один раз, если растровое изображение уже сохранено в моем пути к строке C# .Net

#c# #string #bitmap #byte

#c# #строка #растровое изображение #байт

Вопрос:

 if (!String.IsNullOrEmpty(profileImage)) {  try  {  string logoAddress = profileImage.Remove(0, profileImage.LastIndexOf('/')   1);  logoAddress = PathW   @"Contentgenerateexitlogo"   logoAddress;  bool fileExists = File.Exists(logoAddress);  byte[] imageBytes = fileExists ? File.ReadAllBytes(logoAddress) : webClient.DownloadData(profileImage);  if (!fileExists)  File.WriteAllBytes(logoAddress, imageBytes);   MemoryStream ms = new MemoryStream(imageBytes);  Bitmap OrgImg = new Bitmap(ms);   NewImg = new Bitmap(OrgImg.Width, OrgImg.Height);  for (int y = 0; y lt;= OrgImg.Height - 1; y  )  {  for (int x = 0; x lt;= OrgImg.Width - 1; x  )  {  if ((Math.Pow(x - (OrgImg.Width / 2), 2)   Math.Pow(y - (OrgImg.Width / 2), 2)) lt; Math.Pow(OrgImg.Width / 2, 2))  NewImg.SetPixel(x, y, Color.FromArgb(255, OrgImg.GetPixel(x, y).R, OrgImg.GetPixel(x, y).G, OrgImg.GetPixel(x, y).B));   else  NewImg.SetPixel(x, y, Color.Empty);  }  }  logoAddress = logoAddress.Replace(".png", "rounded.png");  NewImg.Save(logoAddress);  NewImgsample = PdfImage.FromFile(logoAddress);   ms.Dispose();  NewImg.Dispose();  foreach (PdfPage page in doc.Pages)  {  page.Graphics.DrawImage(NewImgsample, 686.211f, 247.0f, 101.389f, 101.389f);  }  }  catch  {   } }  

Привет Я пытаюсь сначала сохранить растровое изображение в путь из данных, затем сохраненное изображение сначала нужно замаскировать, а затем сохранить его с другим расширением. Мне нужно замаскироваться, только если картинка еще не замаскирована. теперь в моем коде сохранена битовая карта из базы данных , если она не сохранена, она будет сохранена, затем после сохранения замаскируйте другое растровое изображение, а затем сохраните новое растровое изображение. Мне нужно замаскироваться только один раз, как я могу проверить, уже ли это изображение замаскировано ?
этот код маскирует мое изображение каждый раз, даже если замаскированное изображение уже есть. мой код таков :

Комментарии:

1. Вы можете использовать одну bool переменную, проверить, имеет ли она значение false , а затем установить ее в true

2. или вы можете использовать if(!File.Exists(path)) ...

3. Я использовал как bool, так и if(!Файл. Существует(путь), когда я сохранил изображение через базу данных, но на этот раз в конце кода, когда я замаскировал изображение, я сохранил «округленный.png» вместо этого, этот «округленный.png» сохранен . я не могу разработать эти два способа для загрузки обратно 2d-изображения. мне нужно, чтобы этот цикл выполнялся только тогда, когда округлое изображение не находится в пути …..

4. проверьте это, я имею в виду логоадрес = логоадрес. Заменить(«.png», «округленный.png»); NewImg.Сохранить(логоадрес); NewImgsample = PdfImage. Из файла(логоадрес);

5. дело в том, что я сначала замаскировал изображение, а затем сохранил его, этот файл причины. Существует и bool не может работать