source insertar images imagen icon fondo agregar c# ios xamarin uiimage

c# - insertar - show image xamarin forms



UIImage coloraciĆ³n PNG (1)

Acabo de probar tu código. Todo está bien, pero no eligió el color que desea llenar en su PNG.

Cambio:

// tint image (losing alpha) - the luminosity of the original image is preserved context.SetBlendMode(CGBlendMode.Color); context.FillRect(rect);

a:

// tint image (losing alpha) - the luminosity of the original image is preserved context.SetBlendMode(CGBlendMode.Color); context.SetFillColor(UIColor.Red.CGColor); context.FillRect(rect);

Me gustaría colorear un PNG cuando el usuario hace clic en él.

Encontré un ejemplo en Xcode aquí, pero cuando lo intento en C # no puedo recuperar la imagen.

Aquí está el código que escribí:

public UIImage DrawSelectedBorder(UIImage image) { UIGraphics.BeginImageContextWithOptions(image.Size, false, image.CurrentScale); // for correct resolution on retina, thanks @MobileVet CGContext context = UIGraphics.GetCurrentContext(); context.TranslateCTM(0, image.Size.Height); context.ScaleCTM((System.nfloat)1.0, (System.nfloat)(-1.0)); CGRect rect = new CGRect(0, 0, image.Size.Width, image.Size.Height); context.SetBlendMode(CGBlendMode.Normal); context.SetFillColor(UIColor.Black.CGColor); context.FillRect(rect); // draw original image context.SetBlendMode(CGBlendMode.Normal); context.DrawImage(rect,image.CGImage); // tint image (losing alpha) - the luminosity of the original image is preserved context.SetBlendMode(CGBlendMode.Color); context.FillRect(rect); // mask by alpha values of original image context.SetBlendMode(CGBlendMode.DestinationIn); context.DrawImage(rect, image.CGImage); UIImage coloredImage = UIGraphics.GetImageFromCurrentImageContext(); UIGraphics.EndImageContext(); return coloredImage; }