ToBitmapSource() public method

Converts this instance to a BitmapSource.
public ToBitmapSource ( ) : BitmapSource
return BitmapSource
Exemplo n.º 1
0
 private void Drukuj(string text)
 {
     var img = new MagickImage("image.jpg");
     using (var imgText = new MagickImage())
     {
         imgText.FontPointsize = 24;
         imgText.BackgroundColor = new MagickColor(Color.White);
         imgText.FillColor = new MagickColor(Color.Black);
         imgText.AntiAlias = true;
         imgText.FontFamily = "Fake Receipt";
         imgText.Read("label:" + text);
         img.Composite(imgText, Gravity.West);
     }
     image.Source = img.ToBitmapSource();
 }
Exemplo n.º 2
0
        private ImageMagick.MagickImage originalMagickImage = null; // 图层图像修改前的状态
        //点击状态下饱和度调节
        private void MouseButtonDown(object sender, MouseButtonEventArgs args)
        {
            if (down == null)
            {
                return;
            }
            originalMagickImage = new ImageMagick.MagickImage(bitmap);
            ImageMagick.Percentage  brightness = new ImageMagick.Percentage(100);                  // 100%表示不改变该属性
            ImageMagick.Percentage  saturation = new ImageMagick.Percentage(50);
            ImageMagick.Percentage  hue        = new ImageMagick.Percentage(100);                  // 滑动条范围值0%~200%
            ImageMagick.MagickImage newImage   = new ImageMagick.MagickImage(originalMagickImage); // 相当于深复制
            newImage.Modulate(brightness, saturation, hue);

            // 重新给Image控件赋值新图像
            down   = newImage.ToBitmapSource();
            Source = down;
            originalMagickImage.Dispose();
        }
Exemplo n.º 3
0
        public void loaded(object sender, EventArgs args)
        {
            if (originalMagickImage == null)
            {
                up = Source;
                if (down == null)
                {
                    bitmap = ImageSourceToBitmap(this.Source); // img是前台Image控件
                    new Task(new Action(() =>
                    {
                        originalMagickImage = new ImageMagick.MagickImage(bitmap);
                        ImageMagick.Percentage brightness = new ImageMagick.Percentage(100);                  // 100%表示不改变该属性
                        ImageMagick.Percentage saturation = new ImageMagick.Percentage(50);
                        ImageMagick.Percentage hue        = new ImageMagick.Percentage(100);                  // 滑动条范围值0%~200%
                        ImageMagick.MagickImage newImage  = new ImageMagick.MagickImage(originalMagickImage); // 相当于深复制
                        newImage.Modulate(brightness, saturation, hue);

                        // 重新给Image控件赋值新图像
                        down = newImage.ToBitmapSource();
                    })).Start();
                }
            }
        }
Exemplo n.º 4
0
    public void Test_ToBitmapSource()
    {
      byte[] pixels = new byte[600];

      using (MagickImage image = new MagickImage(MagickColors.Red, 10, 10))
      {
        BitmapSource bitmap = image.ToBitmapSource();
        Assert.AreEqual(MediaPixelFormats.Rgb24, bitmap.Format);
        bitmap.CopyPixels(pixels, 60, 0);

        Assert.AreEqual(255, pixels[0]);
        Assert.AreEqual(0, pixels[1]);
        Assert.AreEqual(0, pixels[2]);

        image.ColorSpace = ColorSpace.CMYK;

        bitmap = image.ToBitmapSource();
        Assert.AreEqual(MediaPixelFormats.Cmyk32, bitmap.Format);
        bitmap.CopyPixels(pixels, 60, 0);

        Assert.AreEqual(0, pixels[0]);
        Assert.AreEqual(255, pixels[1]);
        Assert.AreEqual(255, pixels[2]);
        Assert.AreEqual(0, pixels[3]);

        image.AddProfile(ColorProfile.USWebCoatedSWOP);
        image.AddProfile(ColorProfile.SRGB);

        bitmap = image.ToBitmapSource();
        Assert.AreEqual(MediaPixelFormats.Rgb24, bitmap.Format);
        bitmap.CopyPixels(pixels, 60, 0);

        Assert.AreEqual(237, pixels[0]);
        Assert.AreEqual(28, pixels[1]);
        Assert.AreEqual(36, pixels[2]);

        image.HasAlpha = true;

        bitmap = image.ToBitmapSource();
        Assert.AreEqual(MediaPixelFormats.Bgra32, bitmap.Format);
        bitmap.CopyPixels(pixels, 60, 0);

        Assert.AreEqual(36, pixels[0]);
        Assert.AreEqual(28, pixels[1]);
        Assert.AreEqual(237, pixels[2]);
        Assert.AreEqual(255, pixels[3]);
      }
    }
Exemplo n.º 5
0
    public void Test_ToBitmapSource()
    {
      byte[] pixels = new byte[600];

      using (MagickImage image = new MagickImage(Color.Red, 10, 10))
      {
        BitmapSource bitmap = image.ToBitmapSource();
        bitmap.CopyPixels(pixels, 60, 0);

        Assert.AreEqual(255, pixels[0]);
        Assert.AreEqual(0, pixels[1]);
        Assert.AreEqual(0, pixels[2]);

        image.ColorSpace = ColorSpace.CMYK;

        bitmap = image.ToBitmapSource();
        bitmap.CopyPixels(pixels, 60, 0);

        Assert.AreEqual(0, pixels[0]);
        Assert.AreEqual(255, pixels[1]);
        Assert.AreEqual(255, pixels[2]);
        Assert.AreEqual(0, pixels[3]);

        image.AddProfile(ColorProfile.USWebCoatedSWOP);
        image.AddProfile(ColorProfile.SRGB);

        bitmap = image.ToBitmapSource();
        bitmap.CopyPixels(pixels, 60, 0);

        Assert.AreEqual(237, pixels[0]);
        Assert.AreEqual(28, pixels[1]);
        Assert.AreEqual(36, pixels[2]);
      }
    }