Announcement

Collapse
No announcement yet.

FCL-Formular zur Laufzeit drucken/als Bitmap speichern

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • FCL-Formular zur Laufzeit drucken/als Bitmap speichern

    Hallo,
    VCL-Formulare kann man als Snapshot mit Form1.Print bzw. Form1.GetFormImage drucken oder speichern. Bei FCL-Formularen habe ich so etwas nicht gefunden. Gibt es einen geeigneten Weg dafür?
    Danke! Jürgen

  • #2
    Hallo,
    interessiert dieses Thema niemanden?
    Ich habe inzwischen mit C# Folgendes versucht:
    {
    // Get handle to form.
    IntPtr hwnd = new IntPtr();
    hwnd = this.Handle;
    // Create new graphics object using handle to window.
    Graphics grWindow = Graphics.FromHwnd(hwnd);
    // Create Bitmap und graphics object in the same size
    Bitmap bmp = System.Drawing.Bitmap( this.Width, this.Height,
    System.Drawing.Imaging.PixelFormat.Format24bppRgb );
    grBitmap = System.Drawing.Graphics.FromImage(bmp);
    ////
    <b> // how to copy grWindow >> grBitmap???</b>
    ////
    // save copied graphic
    bmp.Save("Form.bmp");
    }
    Bisher finde ich keinen Weg, den Inhalt eines Graphics-Objektes in ein anderes Graphics-Objekt zu kopieren.
    <i>Bitte entschuldigt die C-Formulierungen: Dieser Weg war mit den SDK-Beispielen schneller.</i>
    Wer kann dies ergänzen oder kennt einen anderen Weg?
    Jürge

    Comment


    • #3
      <u>Ergänzung</u>
      Für VCL-Formulare habe ich eine passende Funktion gefunden in Borland.Vcl.Windows:
      function BitBlt(DestDC: HDC; X, Y, Width, Height: Integer; SrcDC: HDC;
      XSrc, YSrc: Integer; Rop: DWORD): BOOL;
      Diese Funktion benutzt gdi32.dll, arbeitet also mit Win32 statt NET. Aber das müsste doch auch mit NET gehen?!
      Jürge

      Comment

      Working...
      X