Printing Forms Problem Solved... sort of :-)

I just wanted to pass this find on to anyone else who might be having
problems printing forms, images etc. I found that when my program
called the Form.Print, certain printers printed either blank pages or
all Black where the form, image should be. I used different methods to
try and solve this problem, one was capturing the form into a bitmap
and printing that. I tried a few different bitmap print procedures. I
also tried the demo of TExecellentPrint. Everything was successful on
some and unsuccessful on others. The TExecellentPrint printed on all
the printers but didn't display some of the controls. (The contents of
a richedit for one, it just came out blank)

Here is how I've solved my printer problems. Using RxRichEdit (
http://www.rxlib.com )

I simply put an invisible RxRichEdit on the form then called
InsertBitmap (Below) and called the RxRichEdit.Print, so far every
computer I've tried this update on prints perfectly.

I just wanted to pass this idea on in case anyone else was having the
same problem. I've noticed a few queries about printer problems on
this newsgroup over the last while. It was a real pain in the {*word*82}for
me. Here she blows:

The InsertBitmap Captures the form in a bitmap then inserts it to the
RxRichEdit. Here's the Procedure I use, it's based on the example that
came with RxRichEdit.

procedure TFormDailyClaimView.InsertBitmap(Sender: TObject);
var
  Pict: TPicture;
  FormImage : TBitMap;
begin
  Pict := TPicture.Create;
  try
    FormImage := GetFormImage;
    Clipboard.Assign(FormImage);
    RxRichEdit1.PasteFromClipboard;
    Pict.Free;
  except
    on E:Exception do
      ShowMessage(E.Message);
  end;
end;

// From the print button click
procedure TFormDailyClaimView.PrintButtonClick(Sender: TObject);
begin
  RxRichEdit.Clear;
  // I changed the form a bit here
  // changed colours etc. for easier printing
  InsertBitmap(Sender);
  RxRichEdit1.Print('Printing Form');
  // change the form back to it's
  // original state here
end;

That's it. This print problem has been driving me crazy on and off for
months. Thank you, thank you, thank you to the creators of Rx Library.

Cheers
Don Walsh

PS. When you play around it becomes really nifty. In another program I
had to print forms that displayed a bitmap of music script (in a
TImage) along with the lyrics (in a RxRichEdit) I simply inserted the
bitmap into the RxRichEdit... called the print and voila.
Thanks again to the Rx Library people