Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
Delphi 12 Athens
|
Re: PictureToString ?
31. Mär 2006, 22:07
@ichbins
meinst du nicht, daß sowas extrem langsam ist ... die vielen Stringoperationen?
z.B. für pf8bit:
Delphi-Quellcode:
s := inttohex(b.width, 8) + inttohex(b.height, 8);
for y := 0 to b.height - 1 do
s := s + toHexBE(b.ScanLine[y], b.width);
z.B. für pf24bit:
Delphi-Quellcode:
s := inttohex(b.width, 8) + inttohex(b.height, 8);
for y := 0 to b.height - 1 do
s := s + toHexBE(b.ScanLine[y], 3 * b.width);
//oder
s := inttohex(b.width, 8) + inttohex(b.height, 8)
+ toHexBE(b.ScanLine[y], 3 * b.width * b.height);
Delphi-Quellcode:
Function toHexBE(Data: Pointer; Size: LongInt): String;
Const H: Array[0..15] of Char = ' 0123456789ABCDEF';
Var i: Integer;
R: Char;
Begin
SetLength(Result, Size * 2);
R := PChar(Result);
While Size > 0 do Begin
R^ := H[PByte(Data)^ shr 4];
Inc(R);
R^ := H[PByte(Data)^ and $0F];
Inc(R);
Inc(Integer(Data));
Dec(Size);
End;
End;
//i hof ma ich hab's richtig übersetzt °_°
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
|
|
Zitat
|