Esempio n. 1
0
        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();
        }
Esempio n. 2
0
        //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);
        }
Esempio n. 3
0
        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);
			}
		}
Esempio n. 5
0
        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);
        }
Esempio n. 6
0
        CIImage Apply(CIImage input, ModifyFilter filter)
        {
            var f = new CISepiaTone()
            {
                Image     = input,
                Intensity = filter.Intensity
            };

            return(f.OutputImage);
        }
Esempio n. 7
0
        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]));
        }
Esempio n. 8
0
 public static UIImage ToSepia(UIImage source)
 {
     using (var filter = new CISepiaTone()
     {
         Intensity = 0.8f
     })
     {
         return(ColorSpaceTransformation.ToFilter(source, filter));
     }
 }
Esempio n. 9
0
        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));
                 }
 }
Esempio n. 11
0
 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;
        }
Esempio n. 14
0
        /// <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;
        }
 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;
 }
		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;
		}
Esempio n. 17
0
		public CIImage SepiaTone ()
		{
			var sepia = new CISepiaTone () {
				Image = flower,
				Intensity = .8f
			};
			return sepia.OutputImage;
		}