void monovoid() { byte[] ImageConv = new byte[0]; var imageData = NSData.FromArray(ImageConv); CIImage flower = CIImage.FromCGImage(UIImage.LoadFromData(imageData).CGImage); var sepia = new CISepiaTone() { Image = flower, Intensity = 0.9f }; CIContext ctx = CIContext.FromOptions(null); var output = sepia.OutputImage; var cgImage = ctx.CreateCGImage(output, output.Extent); CGSize size = new CGSize(400, 400); //modify as necessary UIGraphics.BeginImageContext(size); CGRect rect = new CGRect(CGPoint.Empty, size); UIImage.FromImage(cgImage).Draw(rect); UIImage image = UIGraphics.GetImageFromCurrentImageContext(); //NSData jpegData = image.AsJPEG(1); NSData jpegData = image.AsPNG(); UIGraphics.EndImageContext(); byte[] bt = jpegData.ToArray(); }
//public byte[] Sepia(Stream imageStream) //{ // byte[] ImageConv = new byte[0]; // var imageData = NSData.FromStream(imageStream); // CIImage flower = CIImage.FromCGImage(UIImage.LoadFromData(imageData).CGImage); // //var flower = UIImage.LoadFromData(imageData); // var sepia = new CISepiaTone() // { // Image = flower, // Intensity = .8f // }; // CIImage output = sepia.OutputImage; // var context = CIContext.FromOptions(null); // var cgimage = context.CreateCGImage(output, output.Extent); // //-------------------Return // CGSize size = new CGSize(100, 100); //modify as necessary // UIGraphics.BeginImageContext(size); // CGRect rect = new CGRect(CGPoint.Empty, size); // UIImage.FromImage(cgimage).Draw(rect); // UIImage image = UIGraphics.GetImageFromCurrentImageContext(); // NSData jpegData = image.AsJPEG(); // UIGraphics.EndImageContext(); // byte[] dataBytes = new byte[jpegData.Length]; // System.Runtime.InteropServices.Marshal.Copy(jpegData.Bytes, dataBytes, 0, Convert.ToInt32(jpegData.Length)); // return dataBytes; //} public byte[] Sepia(byte[] imageIos) { byte[] ImageConv = new byte[0]; var imageData = NSData.FromArray(imageIos); CIImage ImageOriginal = CIImage.FromCGImage(UIImage.LoadFromData(imageData).CGImage); var sepia = new CISepiaTone() { Image = ImageOriginal, Intensity = 1.0f }; CIContext ctx = CIContext.FromOptions(null); var output = sepia.OutputImage; var cgImage = ctx.CreateCGImage(output, output.Extent); //--------- CGSize size = new CGSize(400, 400); //Tamaño que se desplegará la imagen UIGraphics.BeginImageContext(size); CGRect rect = new CGRect(CGPoint.Empty, size); //UIImage.FromImage(flower).Draw(rect); UIImage.FromImage(cgImage).Draw(rect); UIImage image = UIGraphics.GetImageFromCurrentImageContext(); //NSData jpegData = image.AsJPEG(1); NSData jpegData = image.AsPNG(); UIGraphics.EndImageContext(); byte[] iamgenEnSepia = jpegData.ToArray(); return(iamgenEnSepia); }
void DarkenImage() { var img = image.Image; var ciImage = new CIImage(img); var hueAdjust = new CIHueAdjust(); // first filter hueAdjust.Image = ciImage; hueAdjust.Angle = 2.094f; var sepia = new CISepiaTone(); // second filter sepia.Image = hueAdjust.OutputImage; // output from last filter, input to this one sepia.Intensity = 0.3f; CIFilter color = new CIColorControls() { // third filter Saturation = 2, Brightness = 1, Contrast = 3, Image = sepia.OutputImage // output from last filter, input to this one }; var output = color.OutputImage; var context = CIContext.FromOptions(null); // ONLY when CreateCGImage is called do all the effects get rendered var cgimage = context.CreateCGImage(output, output.Extent); var ui = UIImage.FromImage(cgimage); image.Image = ui; }
public static UIImage ToSepia(UIImage source) { using (var filter = new CISepiaTone() { Intensity = 0.8f }) { return ColorSpaceTransformation.ToFilter(source, filter); } }
public override void ViewDidLoad() { base.ViewDidLoad(); NavigationItem.Title = "Apply Filter"; //NavigationController.NavigationBar.BackItem.Title = "cancel"; var saveButton = new UIBarButtonItem("Save", UIBarButtonItemStyle.Done, null); var cancelButton = new UIBarButtonItem(); cancelButton.Title = "Cancel"; var set = NavigationItem.RightBarButtonItem = saveButton; NavigationItem.BackBarButtonItem = cancelButton; //CGRect frame = new CGRect(15, 15, View.Frame.Width - 15, View.Frame.Height - 15); int _xCoord = 5; int _yCoord = 5; int _buttonWidth = 70; int _buttonHeight = 70; int _gapBetweenButtons = 5; //int for (int i = 0; i < CIFilterNames.Length; i++) { _itemCount = i; UIButton filterButton = new UIButton(); filterButton.Frame = new CoreGraphics.CGRect(View.Frame.Width - 20, _yCoord, _buttonWidth, _buttonHeight); filterButton.Tag = _itemCount; filterButton.TouchUpInside += (sender, e) => FilterButtonTapped(filterButton); imageView = ResizeUIImage(UIImage.FromBundle("Image"), 350, 350); CIContext ciContext = new CIContext(null); CIImage coreImage = new CIImage((ResizeUIImage(imageView, 70, 70))); var filter = new CISepiaTone(); filter.Image = coreImage; UIImage imageForButton = new UIImage(filter.Image.CreateByFiltering(CIFilterNames[i])); filterButton.SetBackgroundImage(imageForButton, UIControlState.Normal); _yCoord += _buttonHeight + _gapBetweenButtons; scrollview.AddSubview(filterButton); } scrollview.ContentSize = new CoreGraphics.CGSize(_buttonHeight * (float)_itemCount + 2, _xCoord); }
CIImage Apply(CIImage input, ModifyFilter filter) { var f = new CISepiaTone() { Image = input, Intensity = filter.Intensity }; return(f.OutputImage); }
public void FilterButtonTapped(UIButton button) { button = button as UIButton; var filter = new CISepiaTone(); CIImage coreImage = new CIImage((ResizeUIImage(imageView, 500, 500))); filter.Image = coreImage; image.Image = new UIImage(filter.Image.CreateByFiltering(CIFilterNames[button.Tag])); }
public static UIImage ToSepia(UIImage source) { using (var filter = new CISepiaTone() { Intensity = 0.8f }) { return(ColorSpaceTransformation.ToFilter(source, filter)); } }
public CIImage SepiaTone() { var sepia = new CISepiaTone() { Image = flower, Intensity = .8f }; return(sepia.OutputImage); }
public static UIImage ToSepia(UIImage source) { using (var effect = new CISepiaTone() { Image = source.CGImage }) using (var output = effect.OutputImage) using (var context = CIContext.FromOptions(null)) using (var cgimage = context.CreateCGImage(output, output.Extent)) { return(UIImage.FromImage(cgimage)); } }
public static NSImage ToSepia(NSImage source) { using (var inputImage = CIImage.FromCGImage(source.CGImage)) using (var filter = new CISepiaTone() { Image = inputImage }) using (var resultImage = new NSCIImageRep(filter.OutputImage)) { var nsImage = new NSImage(resultImage.Size); nsImage.AddRepresentation(resultImage); return(nsImage); } }
CIImage Apply(ModifyFilter modifyFilter, CIImage input, bool dirty) { if (modifyFilter == null || !modifyFilter.Active || !dirty) { return(null); } CIFilter filter = new CISepiaTone { Image = input, Intensity = modifyFilter.Intensity, }; return(filter.OutputImage); }
public static void ApplySepia(string imagePath, UIImageView imgview) { var uiimage = UIImage.FromFile (imagePath); var ciimage = new CIImage (uiimage); var sepia = new CISepiaTone(); sepia.Image = ciimage; sepia.Intensity = 0.8f; var output = sepia.OutputImage; var context = CIContext.FromOptions(null); var cgimage = context.CreateCGImage (output, output.Extent); var ui = UIImage.FromImage (cgimage); imgview.Image = ui; }
/// <summary> /// Purchaseable feature. This function can't be called until the /// user has purchased the Sepia Filter in-app product. /// </summary> public static void ApplySepia(string imagePath, UIImageView imgview) { var uiimage = UIImage.FromFile(imagePath); var ciimage = new CIImage(uiimage); var sepia = new CISepiaTone(); sepia.Image = ciimage; sepia.Intensity = 0.8f; var output = sepia.OutputImage; var context = CIContext.FromOptions(null); var cgimage = context.CreateCGImage(output, output.Extent); var ui = UIImage.FromImage(cgimage); imgview.Image = ui; }
CIImage Apply(ModifyFilter modifyFilter, CIImage input, bool dirty) { if (modifyFilter == null || !modifyFilter.Active || !dirty) return null; CIFilter filter = new CISepiaTone { Image = input, Intensity = modifyFilter.Intensity, }; return filter.OutputImage; }
public CIImage SepiaTone () { var sepia = new CISepiaTone () { Image = flower, Intensity = .8f }; return sepia.OutputImage; }