Ejemplo n.º 1
0
 private void onBitmap(IntPtr userData, int channel, string fileId, long timestamp,
                       int currentFrame, int totalFrames,
                       string titles,
                       IntPtr image, int size)
 {
     if (userData == _userData && OnBitmap != null)
     {
         byte[] data = new byte[size];
         Marshal.Copy(image, data, 0, size);
         using (MemoryStream ms = new MemoryStream(data))
         {
             BitmapEventArgs args = new BitmapEventArgs()
             {
                 Image        = new Bitmap(ms),
                 Timestamp    = ToDateTimeFromEpoch(timestamp),
                 Channel      = channel,
                 FileId       = fileId,
                 CurrentFrame = currentFrame,
                 TotalFrames  = totalFrames,
                 Titles       = titles
             };
             OnBitmap(this, args);
         }
     }
 }
Ejemplo n.º 2
0
        protected virtual void OnThresholdReached(BitmapEventArgs e)
        {
            EventHandler <BitmapEventArgs> handler = UpdateEvent;

            if (handler != null)
            {
                handler(this, e);
            }
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Event supported after creating anaglyph.
 /// </summary>
 /// <param name="sender"> sender </param>
 /// <param name="e"> anaglyph created event </param>
 public void EventImageFinished(object sender, BitmapEventArgs e)
 {
     Dispatcher.Invoke(delegate
     {
         this.SetImageOnForm(ImageVersion.ANAGLYPH_IMAGE, e.anaglyphImage);     // set anaglyph image on form
         this.historyLabel.Content = TimerClock.GetTime().ToString() + " [ms]"; // set time measured on form
         e.anaglyphImage.Save("anaglyph.bmp");                                  // save anaglyph on project folder
         this.buttonGenerateAnaglyph.IsEnabled = true;
     });
 }
        private void GeneratorOnBitmapCreated(object sender, BitmapEventArgs args)
        {
            Application.Current.Dispatcher.Invoke(
                new Action(
                    () =>
            {
                try
                {
                    var chr       = args.Chr;
                    var bmp       = args.GeneratedBitmap;
                    var font      = args.CurrentFont;
                    var fontName  = font.FontFamily.Name;
                    var fontSize  = font.Size;
                    var fontStyle = font.Style;
                    var debugDir  = "BmpDebug";

                    var chrEx = chr.ToString();
                    if (char.IsLetter(chr))
                    {
                        chrEx = char.IsUpper(chr) ? $"^{chr}" : $"{chr}";
                    }

                    var chrDir = Path.Combine(debugDir, chrEx);
                    if (!Directory.Exists(chrDir))
                    {
                        Directory.CreateDirectory(chrDir);
                        while (!Directory.Exists(chrDir))
                        {
                            ;
                        }
                    }

                    var debugFileName = $"{fontName} {fontSize} {fontStyle}.png";

                    //bmp.Save(Path.Combine(chrDir, debugFileName), ImageFormat.Png);

                    PreviewImage.Source = BitmapUtils.SourceFromBitmap(bmp);

                    _genImageNumber++;
                    bmp.Dispose();
                    CurrentFont = args.CurrentFont;
                }
                catch (Exception)
                {
                }
            }));
        }