Como grabar Ink de WPF como BitMap

Hola, aparte de los enlaces interesantes que voy poniendo, seguiré con cosas de mi cosecha, lo siguiente me surgió en un proyecto y resumidamente tenemos un bitmap al cual le habíamos puesto un objeto Ink para que el usuario pintase por encima y a la hora de grabar grabase el Bitmap con lo dibujado por el usuario encima del Bitmap, es decir incrustar lo dibujado en el Bitmap creando un Bitmap nuevo (me explico como las gallinas)

 

Al grano, es muy sencillo aquí tenéis el código que renderiza como bitmap la problemática anterior

 

  1. // Renderiza el arbol visual de  InkCanvas’ a RenderTargetBitmap
  2.             RenderTargetBitmap targetBitmap =
  3.                 new RenderTargetBitmap((int)inkCanvas1.ActualWidth,
  4.                                        (int)inkCanvas1.ActualHeight,
  5.                                        96d, 96d,
  6.                                        PixelFormats.Default);
  7.             targetBitmap.Render(inkCanvas1);
  8.             
  9.             BmpBitmapEncoder encoder = new BmpBitmapEncoder();
  10.             encoder.Frames.Add(BitmapFrame.Create(targetBitmap));
  11.             // Salva el fichero a disco
  12.             FileStream fs = File.Open(fileName, FileMode.OpenOrCreate);
  13.             encoder.Save(fs);

Espero que os sirva

Un comentario sobre “Como grabar Ink de WPF como BitMap”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *