掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Bitmapの表示色を変更するには (ID:25169)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
手打ちでコンパイルしてないので、タイポがあれば勘弁 function BtoW(bmp8: TBitmap): boolean; var num, i, x, y: integer; pe: array[0..255] of TPaletteEntry; ct: array[0..255] of TRGBQuad; begin result := false; if bmp8.PixelFormat <> pf8bit then exit; try num := GetPaletteEntries(bmp8.Palette,0,256,pe); except exit; end; for i := 0 to num-1 do begin if (pe[i].peRed = 0) and (pe[i].peGreen = 0) and (pe[i].peBlue = 0) then begin ct[i].rgbBlue := 255; ct[i].rgbGreen := 255; ct[i].rgbRed := 255; end else if (pe[i].peRed = 255) and (pe[i].peGreen = 255) and (pe[i].peBlue = 255) then begin ct[i].rgbBlue := 0; ct[i].rgbGreen := 0; ct[i].rgbRed := 0; end else begin ct[i].rgbBlue := pe[i].peBlue; ct[i].rgbGreen := pe[i].peGreen; ct[i].rgbRed := pe[i].peRed; end end; SetDIBColorTable(bmp8.Canvas.Handle,0,num-1,ct) DeleteObject(bmp8.ReleasePalette); result := true; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.