亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dibeffect.pas

?? 很好玩的一個DELPHI游戲
?? PAS
字號:
{*******************************************************}
{                Magic Girl                             }
{         版權所有 (C) 2002, 2003 Rainstorey Studio     }
{         ---------------------------------             }
{       DIBEffect unit file modify DXDIBEffect.pas      }
{       by:2006-1-16 14:07:20                           }
{                                                       }
{         E-Mail:Rainstorey@163.com                     }
{         WebSite:http://www.Rainstorey.com             }
{*******************************************************}


unit DIBEffect;

interface

uses
  Windows,SysUtils,
  Math,DIB;

type
  TFilterTypeResample = (ftrBox,ftrTriangle,ftrHermite,ftrBell,ftrBSpline,
    ftrLanczos3,ftrMitchell);
const
  DefaultFilterRadius:array[TFilterTypeResample] of Single = (0.5,1,1,1.5,2,3,2);

type
  TDIBEffect = class(TDIB)
  private
    { Private declarations }
  protected
    { Protected declarations }
  public
    { Public declarations }
  published
    procedure Effect_Lightness(Amount:Integer);
    procedure Effect_Darkness(Amount:Integer);
    procedure Effect_Mosaic(Size:Integer);
    procedure Effect_Emboss;

    { Published declarations }
  end;

implementation

function IntToByte(i:Integer):Byte;
begin
  if i > 255 then
    Result:=255
  else
    if i < 0 then
      Result:=0
    else
      Result:=i;
end;

procedure _Lightness(var clip:TDIB;Amount:Integer);
var
  p0:pbytearray;
  r,g,b,x,y:Integer;
begin
  for y:=0 to clip.height - 1 do
  begin
    p0:=clip.scanline[y];
    for x:=0 to clip.width - 1 do
    begin
      r:=p0[x * 3];
      g:=p0[x * 3 + 1];
      b:=p0[x * 3 + 2];
      p0[x * 3]:=IntToByte(r + ((255 - r) * Amount) div 255);
      p0[x * 3 + 1]:=IntToByte(g + ((255 - g) * Amount) div 255);
      p0[x * 3 + 2]:=IntToByte(b + ((255 - b) * Amount) div 255);
    end;
  end;
end;

procedure Darkness(var src:TDIB;Amount:Integer);
var
  p0:pbytearray;
  r,g,b,x,y:Integer;
begin
  src.BitCount:=24;
  for y:=0 to src.height - 1 do
  begin
    p0:=src.scanline[y];
    for x:=0 to src.width - 1 do
    begin
      r:=p0[x * 3];
      g:=p0[x * 3 + 1];
      b:=p0[x * 3 + 2];
      p0[x * 3]:=IntToByte(r - ((r) * Amount) div 255);
      p0[x * 3 + 1]:=IntToByte(g - ((g) * Amount) div 255);
      p0[x * 3 + 2]:=IntToByte(b - ((b) * Amount) div 255);
    end;
  end;
end;

procedure Mosaic(var Bm:TDIB;Size:Integer);
var
  x,y,i,j:Integer;
  p1,p2:pbytearray;
  r,g,b:Byte;
begin
  y:=0;
  repeat
    p1:=Bm.scanline[y];
    repeat
      j:=1;
      repeat
        p2:=Bm.scanline[y];
        x:=0;
        repeat
          r:=p1[x * 3];
          g:=p1[x * 3 + 1];
          b:=p1[x * 3 + 2];
          i:=1;
          repeat
            p2[x * 3]:=r;
            p2[x * 3 + 1]:=g;
            p2[x * 3 + 2]:=b;
            Inc(x);
            Inc(i);
          until (x >= Bm.width) or (i > Size);
        until x >= Bm.width;
        Inc(j);
        Inc(y);
      until (y >= Bm.height) or (j > Size);
    until (y >= Bm.height) or (x >= Bm.width);
  until y >= Bm.height;
end;

procedure _Emboss(var Bmp:TDIB);
var
  x,y:Integer;
  p1,p2:pbytearray;
begin
  for y:=0 to Bmp.height - 2 do
  begin
    p1:=Bmp.scanline[y];
    p2:=Bmp.scanline[y + 1];
    for x:=0 to Bmp.width - 4 do
    begin
      p1[x * 3]:=(p1[x * 3] + (p2[(x + 3) * 3] xor $FF)) shr 1;
      p1[x * 3 + 1]:=(p1[x * 3 + 1] + (p2[(x + 3) * 3 + 1] xor $FF)) shr 1;
      p1[x * 3 + 2]:=(p1[x * 3 + 2] + (p2[(x + 3) * 3 + 2] xor $FF)) shr 1;
    end;
  end;
end;

procedure Brightness(src,Dst:TDIB;level:Integer);
const
  MaxPixelCount = 32768;
type
  pRGBArray = ^TRGBArray;
  TRGBArray = array[0..MaxPixelCount - 1] of TRGBTriple;
var
  i,j,value:Integer;
  OrigRow,DestRow:pRGBArray;
begin
  // get brightness increment value
  value:=level;
  src.BitCount:=24;
  Dst.BitCount:=24;
  // for each row of pixels
  for i:=0 to src.height - 1 do
  begin
    OrigRow:=src.scanline[i];
    DestRow:=Dst.scanline[i];
    // for each pixel in row
    for j:=0 to src.width - 1 do
    begin
      // add brightness value to pixel's RGB values
      if value > 0 then
      begin
        // RGB values must be less than 256
        DestRow[j].rgbtRed:=Min(255,OrigRow[j].rgbtRed + value);
        DestRow[j].rgbtGreen:=Min(255,OrigRow[j].rgbtGreen + value);
        DestRow[j].rgbtBlue:=Min(255,OrigRow[j].rgbtBlue + value);
      end
      else
      begin
        // RGB values must be greater or equal than 0
        DestRow[j].rgbtRed:=Max(0,OrigRow[j].rgbtRed + value);
        DestRow[j].rgbtGreen:=Max(0,OrigRow[j].rgbtGreen + value);
        DestRow[j].rgbtBlue:=Max(0,OrigRow[j].rgbtBlue + value);
      end;
    end;
  end;
end;

//----------------------
//-------------------------
//----------------------

procedure TDIBEffect.Effect_Lightness(Amount:Integer);
var
  BB:TDIB;
begin
  BB:=TDIB.create;
  BB.BitCount:=24;
  BB.Assign(Self);
  _Lightness(BB,Amount);
  Self.Assign(BB);
  BB.free;
end;

procedure TDIBEffect.Effect_Darkness(Amount:Integer);
var
  BB:TDIB;
begin
  BB:=TDIB.create;
  BB.BitCount:=24;
  BB.Assign(Self);
  Darkness(BB,Amount);
  Self.Assign(BB);
  BB.free;
end;

procedure TDIBEffect.Effect_Mosaic(Size:Integer);
var
  BB:TDIB;
begin
  BB:=TDIB.create;
  BB.BitCount:=24;
  BB.Assign(Self);
  Mosaic(BB,Size);
  Self.Assign(BB);
  BB.free;
end;

procedure TDIBEffect.Effect_Emboss;
var
  BB1,BB2:TDIB;
begin
  BB1:=TDIB.create;
  BB1.BitCount:=24;
  BB1.Assign(Self);
  BB2:=TDIB.create;
  BB2.BitCount:=24;
  BB2.Assign(BB1);
  _Emboss(BB2);
  Self.Assign(BB2);
  BB1.free;
  BB2.free;
end;
end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品久久久久久久99蜜桃| 懂色av一区二区夜夜嗨| 久久久国产精品麻豆| 午夜精品免费在线观看| 欧美午夜精品一区二区蜜桃 | 国产精品高潮久久久久无| 成人美女视频在线观看| 美腿丝袜亚洲综合| 91麻豆精品国产91久久久久 | 亚洲欧美色综合| 在线免费不卡电影| 国产午夜精品一区二区三区嫩草 | 国产亚洲综合色| 久久免费午夜影院| 韩国视频一区二区| 国产精品久久久久久久久免费樱桃| 欧美精品视频www在线观看| 青青草国产成人av片免费| 国产亚洲精品福利| 懂色av一区二区在线播放| 国产成人午夜片在线观看高清观看| 中文字幕日韩av资源站| 3d动漫精品啪啪一区二区竹菊| 欧美日韩久久久| 国产精品18久久久久久久网站| 一区二区三区美女视频| 日韩精品中午字幕| 色婷婷国产精品久久包臀| 日本aⅴ亚洲精品中文乱码| 亚洲一区二区四区蜜桃| 色综合一区二区| 久久久99免费| 91在线云播放| 国产黄色成人av| 亚洲免费电影在线| 亚洲超碰97人人做人人爱| 国产精品久久久久久久久免费丝袜| 中文字幕一区三区| 三级欧美在线一区| 亚洲综合色自拍一区| 麻豆freexxxx性91精品| 国产成人在线网站| 欧美日韩一级片网站| 91久久精品一区二区三区| 成+人+亚洲+综合天堂| 粉嫩蜜臀av国产精品网站| 欧洲一区二区av| 久久免费偷拍视频| 亚洲综合丁香婷婷六月香| 国产一区二区三区综合| 免费在线观看成人| 97成人超碰视| 久久影视一区二区| 久久免费电影网| 亚洲国产精品精华液网站| 一区二区三区鲁丝不卡| 福利一区福利二区| 欧美一二三区在线观看| 日韩免费观看高清完整版| 亚洲啪啪综合av一区二区三区| 精品亚洲成av人在线观看| 国产综合久久久久久鬼色| 在线观看亚洲成人| 国产精品丝袜一区| 亚洲乱码精品一二三四区日韩在线| 椎名由奈av一区二区三区| 亚洲视频免费在线观看| 国产一区二区毛片| 99久久精品国产导航| 国产电影一区二区三区| 91精品国产高清一区二区三区蜜臀| 欧美精品视频www在线观看| 国产精品超碰97尤物18| 国产精品亚洲一区二区三区在线| 日韩欧美在线一区二区三区| 亚洲成va人在线观看| 在线看日本不卡| 亚洲一区二区三区四区的| 9i在线看片成人免费| 欧美日韩国产美女| 亚洲一区二区欧美| 91久久香蕉国产日韩欧美9色| 中文字幕制服丝袜成人av| 国产成人精品网址| 国产精品少妇自拍| 99久久精品免费看国产| 亚洲日本在线观看| 91久久精品日日躁夜夜躁欧美| 亚洲人成精品久久久久| 91老师片黄在线观看| 日韩一级黄色片| 美女视频第一区二区三区免费观看网站| 欧美日韩免费一区二区三区| 色婷婷av一区二区三区软件 | 2023国产精品| 国产在线日韩欧美| 国产精品毛片无遮挡高清| 972aa.com艺术欧美| 亚洲影院免费观看| 91精品国产免费| 国产乱子轮精品视频| 日本一区二区视频在线| 亚洲一区二区欧美| 日韩欧美色综合网站| 国产原创一区二区| 中文字幕中文字幕一区二区| 欧美亚洲国产一区在线观看网站 | 精品日本一线二线三线不卡 | 99综合影院在线| 玉米视频成人免费看| 51精品视频一区二区三区| 久草中文综合在线| 日本一区二区视频在线观看| 欧美在线免费观看亚洲| 丝袜美腿亚洲综合| 国产欧美日韩视频在线观看| 欧美中文字幕亚洲一区二区va在线| 日韩福利视频网| 欧美色图一区二区三区| 蜜臀久久久99精品久久久久久| 国产午夜精品一区二区| 欧美日本乱大交xxxxx| 国产老肥熟一区二区三区| 亚洲一区二区成人在线观看| 欧美第一区第二区| 91国模大尺度私拍在线视频| 激情综合亚洲精品| 亚洲在线成人精品| 国产丝袜美腿一区二区三区| 91精品福利在线| 懂色av中文字幕一区二区三区 | 日韩免费一区二区| 色噜噜狠狠一区二区三区果冻| 精彩视频一区二区三区| 亚洲成国产人片在线观看| 国产精品成人免费在线| 国产色产综合色产在线视频 | 狠狠色丁香婷综合久久| 亚洲一区视频在线观看视频| 国产日产亚洲精品系列| 欧美一区二区三区性视频| 在线精品视频一区二区三四| 成人aaaa免费全部观看| 国产精品白丝jk黑袜喷水| 秋霞av亚洲一区二区三| 亚洲最新视频在线观看| 亚洲国产精华液网站w| 高清不卡一区二区| 国内精品不卡在线| 美女视频网站久久| 五月天激情小说综合| 亚洲一区二区三区中文字幕 | 国产91丝袜在线观看| 亚洲成人动漫av| 亚洲国产精品影院| 樱桃国产成人精品视频| 亚洲三级在线免费| 亚洲少妇最新在线视频| 国产精品久久久久久久岛一牛影视 | 国产精品美女一区二区三区| 久久久久久影视| 久久久精品日韩欧美| 国产无人区一区二区三区| 精品国产精品网麻豆系列| 国产成人在线视频网址| 风间由美中文字幕在线看视频国产欧美| 久久国产精品色| 亚洲精品一二三| 一区二区三区小说| 亚洲高清视频在线| 人禽交欧美网站| 久久福利视频一区二区| 国产毛片精品视频| 国产白丝网站精品污在线入口| 东方欧美亚洲色图在线| 97久久精品人人做人人爽| 91精品1区2区| 欧美一区二区三区四区高清| 日韩美女主播在线视频一区二区三区 | 久久精品日产第一区二区三区高清版| 精品理论电影在线| 欧美韩国日本综合| 亚洲免费在线观看视频| 五月天亚洲婷婷| 国产精品99久| 99精品国产99久久久久久白柏| 欧美制服丝袜第一页| 精品福利一区二区三区| 国产精品久久综合| 亚洲免费在线看| 久久99热狠狠色一区二区| jlzzjlzz亚洲日本少妇| 欧美亚洲一区二区在线| 欧美xxxxxxxx| 亚洲精选一二三| 久久国产精品露脸对白| 不卡的av网站| 日韩欧美在线网站| 亚洲图片欧美激情| 韩国毛片一区二区三区|