我会尽力帮助你翻译。以下是需要翻译的内容:
我得到了:
我正在尝试使用PNGImage库将PNG图像加载到TImage中,
每次我这样做,
Image1.Picture.LoadFromFile('c:\c.png');
我得到了:
现在我猜测这个问题是由PngImage库中的这些行引起的:读取的文件不是有效的“便携式网络图形”图像,因为它包含无效的标头。此文件可能已损坏,请尝试重新获取。
{Characters for the header}
const
PngHeader: Array[0..7] of Char = (#137, #80, #78, #71, #13, #10, #26, #10);
{Loads the image from a stream of data}
procedure TPngObject.LoadFromStream(Stream: TStream);
var
Header : Array[0..7] of Char;
HasIDAT : Boolean;
{Chunks reading}
ChunkCount : Cardinal;
ChunkLength: Cardinal;
ChunkName : TChunkName;
begin
{Initialize before start loading chunks}
ChunkCount := 0;
ClearChunks();
{Reads the header}
Stream.Read(Header[0], 8);
{Test if the header matches}
if Header <> PngHeader then
begin
RaiseError(EPNGInvalidFileHeader, EPNGInvalidFileHeaderText);
Exit;
end;
我尝试将Char更改为AnsiChar,但没有成功。