用下面的替换文件frxExportPDF.pas中的TfrxPDFFont.GetFontName: AnsiString 中的同名函数即可。
将原代码:
function HexEncode7F(Str: WideString): AnsiString;
var
s: AnsiString;
Index, Len: Integer;
begin
s := '';
Len := Length(Str);
Index := 0;
while Index < Len do
begin
Index := Index + 1;
if Byte(Str[Index]) > $7F then
s := s + '#' + AnsiString(IntToHex(Byte(Str[Index]), 2))
else
s := s + AnsiString(Str[Index]);
end;
Result := s;
end;
替换为以下代码:
function HexEncode7F(Str: WideString): AnsiString;
var
s: AnsiString;
t: AnsiString;
Index, Len: Integer;
begin
s := '';
t := Str;
Len := Length(t);
Index := 0;
while Index < Len do
begin
Index := Index + 1;
if Byte(t[Index]) > $7F then
s := s + '#' + AnsiString(IntToHex(Byte(t[Index]), 2))
else
s := s + AnsiString(t[Index]);
end;
Result := s;
end;
标签:Delphi, FastRepot
另中文的字字体要用中文的字体,比如宋体就可以正常导出了。
改完之后要记得更新frxExportPDF.dcu有的时候原代码和用的地方不一样的
转自:http://hi.baidu.com/esocu/item/cb7e14f69286852e753c4c5d