Hi,
hier ein einfaches Beispiel, wie du das ganze mit einem Stream machen könntest:
Delphi-Quellcode:
procedure saveToFile(const FileName : String);
var stream : TMemoryStream;
s : String;
stringLength : Integer;
begin
s := 'Dies ist ein Mehrzeiliger' + chr(13) + chr(10) + 'Text';
stringLength := length(s);
stream := TMemoryStream.Create;
try
stream.Position := 0;
stream.Write(stringLength, sizeOf(Integer));
stream.Write(s[1], stringLength);
stream.SaveToFile(FileName);
finally
stream.Free;
end;
end;
function loadFromFile(const FileName : String) : String;
var stream : TMemoryStream;
stringLength : Integer;
begin
result := '';
stream := TMemoryStream.Create;
try
stream.LoadFromFile(fileName);
stream.Position := 0;
stream.read(stringLength, sizeOf(Integer));
if stringLength > -1 then
begin
setLength(result, stringLength);
stream.read(result[1], stringLength);
end;
finally
stream.Free;
end;
end;
Das ganze solltest du dann ohne Probleme auch auf ein Canvas mehrzeilig zeichnen können
Gruß Der Unwissende