In fastreport, you may encounter the problem of displaying normally on the interface. After you disable Delphi, the Chinese part in the fastreport interface may not be printed.
This problem has plagued me for a long time, whether it is a version change or fastreport studio.
One day when I browsed the Internet, I suddenly saw someone raise this question. My tears filled my eyes. I finally found you. Why am I so stupid? I have never been online to look for it! Suffering ......
What is the solution? Do you want? Do you want to hear it? Haha... it's not telling you!
It's actually very easy to joke with friends!
Copied from the network, not my own skills.
Delphi itself does not support utf8 very well (I found that adding more than two utf8 format strings sometimes causes errors ), so I changed the persistence function of widestrings to remove the utf8 conversion part and solved the problem.
Under the frxunicodeutils unit:
Remove the utf8 conversion from the readdataw and writedataw functions of the twidestrings class.
Specifically:
Readdataw:
// Add (utf8decode (reader. readstring ));
Add (reader. readstring );
Writedataw:
// Writer. writestring (utf8encode (get (I )));
Writer. writestring (get (I ));
Conclusion: the reason for the abnormal display of fastreport Chinese memo is That Delphi encountered a problem when saving fastreport's report control in the DFM file. If the report is not saved in the DFM file, this problem will not occur.
Record the above information for you to learn and forget with your colleagues who have encountered or will encounter similar problems. If you have other good solutions, please leave me a message!