Txt 2 RTF

Convert text to RTF

Contributor: ROBERT CRAM





Why not use the TRichEdit Control to do the work for you? I created an

extended RichEdit control with a RTFText property that you can read and

write to. To do conversions, just set the text property of the control,

and read the RTFtext and vice versa.



  TAXRichEdit = class(TRichEdit)

  private

    { Private declarations }

    FStream: TMemoryStream;

    procedure SetRTFText(RichText: string);

    function GetRTFText: string;

  public

    { Public declarations }

    constructor Create(AOwner: TComponent); override;

    destructor Destroy; override;

  published

    { Published declarations }

    property RTFText: string read GetRTFText write SetRTFText;

  end;



implementation



constructor TAXRichEdit.Create(AOwner: TComponent);

begin



  Inherited Create(AOwner);



  FStream := TMemoryStream.Create;



end;



destructor TAXRichEdit.Destroy;

begin



  FStream.Free;



  inherited Destroy;



end;





procedure TAXRichEdit.SetRTFText(RichText: string);

begin



  FStream.Clear;

  FStream.WriteBuffer(RichText[1], Length(RichText));

  FStream.Position := 0;

  Lines.LoadFromStream(FStream);



end;





function TAXRichEdit.GetRTFText: string;

begin



  FStream.Clear;

  Lines.SaveToStream(FStream);

  Result := PChar(FStream.Memory);



end;





HTH,

Robert Cram

rcram@knoware.nl

 

Share this article!

Follow us!

Find more helpful articles: