小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Delphi獲取JPG圖片的高度、寬度

 dwbboy 2018-01-15
{ Copyright Kingron 2002 }
function GetJPEGSize(FileName: string; var Width, Height: WORD): Boolean;
const
  JPEG_FLAG_BEGIN = $D8FF;
  JPEG_FLAG_END = $D9FF;
  JPEG_FRAME = $C0FF;
var
  FS: TFileStream;
  Flag1, Flag2: WORD;
  B: Byte;



  procedure SeekForFrame;
  type
    TSegHeader = packed record
      Flag: WORD;
      LenHi, LenL Byte;
    end;
  var
    Seg: TSegHeader;
  begin
    with Seg, FS do
      repeat
        Read(Seg, SizeOf(Seg));
        if Flag <> JPEG_FRAME then
          Position := Position + MakeWord(LenLo, LenHi) - 2;
      until (Position >= Fs.Size) or (Seg.Flag = JPEG_FRAME);
  end;



begin
  FS := TFileStream.Create(FileName, fmOpenRead);
  try
    { JPEG 文件開頭必須為 FF D8,文件尾必須為 FF D9 }
    FS.Read(Flag1, SizeOf(Flag1));
    FS.Position := FS.Size - 2;
    FS.Read(Flag2, SizeOf(Flag2));
    result := (Flag1 = JPEG_FLAG_BEGIN) and (Flag2 = JPEG_FLAG_END);
    if not result then exit; { 不是合法的JPEG文件則退出 }



    FS.Position := 2;
    SeekForFrame; { 尋找JPEG的Frame段,即圖像數(shù)據(jù)區(qū) }
    FS.Read(B, SizeOf(B)); { Frame段段頭后第一個Byte為數(shù)據(jù)精度 }



    FS.Read(B, SizeOf(B)); { 高度高字節(jié) }
    WordRec(Height).Hi := B;
    FS.Read(B, SizeOf(B)); { 高度低字節(jié) }
    WordRec(Height).Lo := B;



    FS.Read(B, SizeOf(B)); { 寬度高字節(jié) }
    WordRec(Width).Hi := B;
    FS.Read(B, SizeOf(B)); { 寬度低字節(jié) }
    WordRec(Width).Lo := B;
  finally
    FS.Free;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  W, H: Word;
begin
  with OpenDialog1 do
    if Execute then
      if GetJPEGSize(FileName, W, H) then
        Caption := Format('Yes,W:%d,H:%d', [W, H])
      else Caption := 'No';
end;
//該代碼片段來自于: http://www./codes/delphi/8989

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多