Greetings,
Is there any way to set the "DefaultTabWidth" in a TRichView or TppRichView component without using TRuler?
I am loading RTF text into a TppRichView component. If there are tab characters in the document I want it to honor whatever the current default tab setting is in the RTF text (which I can easily obtain).
I did try TRuler with a TRichViewEdit component and set the DefaultTabWidth to 2 inches in code, called Format, and the tab stops were still about 0.5 inches.
Note that custom tab settings come across fine. It is only the default tabs that are the problem.
Michael Philbrick
DefaultTabWidth
-
- Site Admin
- Posts: 17604
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
-
- Posts: 27
- Joined: Mon Aug 29, 2005 7:08 pm
Sergey,
Problem partially solved. When I load the RTF into TRichView and set the Style.DefTabWidth the tabs are correct.
However, I then transfer the data from the TRichView component to the TppRichView component and I lose the new default tab settings when the report prints:
procedure TdlgPrintPreview.CopyCustomRVFText(src, dst: TCustomRichView);
var
Stream: TMemoryStream;
begin
Stream := TMemoryStream.Create;
src.SaveRVFToStream(Stream, False);
Stream.Position := 0;
dst.LoadRVFFromStream(Stream);
Stream.Free;
end;
I attached the same style to the TppRichView instance, attached a new style to the TppRichView instance and set (and verified) the DefTabWidth setting, called TppRichView.Format and nothing seems to help.
What is the solution?
Problem partially solved. When I load the RTF into TRichView and set the Style.DefTabWidth the tabs are correct.
However, I then transfer the data from the TRichView component to the TppRichView component and I lose the new default tab settings when the report prints:
procedure TdlgPrintPreview.CopyCustomRVFText(src, dst: TCustomRichView);
var
Stream: TMemoryStream;
begin
Stream := TMemoryStream.Create;
src.SaveRVFToStream(Stream, False);
Stream.Position := 0;
dst.LoadRVFFromStream(Stream);
Stream.Free;
end;
I attached the same style to the TppRichView instance, attached a new style to the TppRichView instance and set (and verified) the DefTabWidth setting, called TppRichView.Format and nothing seems to help.
What is the solution?
-
- Site Admin
- Posts: 17604
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
ppRichView uses its own TRVStyle, accessible as ppRichView.RichView.Style.
DefTabWidth is not stored in RVF. So the only option is reassigning ppRichView.RichView.Style.DefTabWidth. Unfortunately, this value will not be stored with ppRichView (you can store it yourself, using ppRichView.RichView.DocProperties)
DefTabWidth is not stored in RVF. So the only option is reassigning ppRichView.RichView.Style.DefTabWidth. Unfortunately, this value will not be stored with ppRichView (you can store it yourself, using ppRichView.RichView.DocProperties)