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

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

?? unit1.pas

?? 一個加密解密算法
?? PAS
字號:
unit unit1;

interface

uses
   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
   ExtCtrls, StdCtrls, ExtDlgs, Buttons;

type
   TFormCrypt = class(TForm)
      ButtonLoad: TButton;
      ButtonEncrypt: TButton;
      ButtonDecrypt: TButton;
      ButtonSave: TButton;
      CheckBoxStretch: TCheckBox;
      SavePictureDialog: TSavePictureDialog;
      OpenPictureDialog: TOpenPictureDialog;
    GroupBox1: TGroupBox;
    ImageOriginal: TImage;
    ImageEncrypted: TImage;
    ImageDecrypted: TImage;
    GroupBox2: TGroupBox;
    Image1: TImage;
    Image2: TImage;
    Image3: TImage;
    Button1: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
      procedure FormDestroy(Sender: TObject);
      procedure FormMouseMove(Sender: TObject);
      procedure ButtonLoadClick(Sender: TObject);
      procedure ButtonEncryptClick(Sender: TObject);
      procedure ButtonDecryptClick(Sender: TObject);
      procedure CheckBoxStretchClick(Sender: TObject);
      procedure EditSeedEncryptChange(Sender: TObject);
      procedure EditSeedDecryptChange(Sender: TObject);
      procedure EditNumericKeyPress(Sender: TObject; var Key: Char);
      procedure ButtonSaveClick(Sender: TObject);
   private
      BitmapOriginal: TBitmap;
      BitmapEncrypted: TBitmap;
      procedure DecryptImage;
      procedure EncryptImage;
   public
      { Public declarations }
   end;

var
   FormCrypt: TFormCrypt;

implementation
{$R *.DFM}

uses
   ShellAPI;


procedure TFormCrypt.FormMouseMove (Sender:TObject);
begin
FormCrypt.repaint;
FormCrypt.Canvas.pen.color:=clRed;
FormCrypt.Canvas.pen.width:=10;
FormCrypt.Canvas.polyline([point(0,0),point(FormCrypt.width-10,0),point(FormCrypt.width-10,FormCrypt.height-30),point(0,FormCrypt.height-30),point(0,0)]);
end;

procedure TFormCrypt.EncryptImage;
var
   i: INTEGER;
   j: INTEGER;
   rowIn: pByteArray;
   rowOut: pByteArray;
   ScanlineByteCount: INTEGER;
begin
   if Assigned(BitmapEncrypted)
      then BitmapEncrypted.Free;
   BitmapEncrypted := TBitmap.Create;
   BitmapEncrypted.Width := BitmapOriginal.Width;
   BitmapEncrypted.Height := BitmapOriginal.Height;
   BitmapEncrypted.PixelFormat := BitmapOriginal.PixelFormat;
    if BitmapOriginal.PixelFormat in [pf1bit, pf4bit, pf8bit]
      then BitmapEncrypted.Palette := CopyPalette(BitmapOriginal.Palette);

    ScanlineByteCount := ABS(Integer(BitmapOriginal.Scanline[1]) -
      Integer(BitmapOriginal.Scanline[0]));

   for j := 0 to BitmapOriginal.Height - 1 do

      begin

         RowIn := BitmapOriginal.Scanline[j];
         RowOut := BitmapEncrypted.Scanline[j];

         for i := 0 to ScanlineByteCount - 1 do
         begin
           if (j mod 2 =0)
           then
            begin
               if(i mod 4=0 )
               then
               RowOut[i] := (RowIn[i]+10000) mod 256
              else if(i mod 4=1 )
               then
               RowOut[i] := (RowIn[i]+20000) mod 256
               else if(i mod 4=2 )
               then
               RowOut[i] := (RowIn[i]+30000) mod 256
               else if(i mod 4=3 )
               then
               RowOut[i] := (RowIn[i]+40000) mod 256
               end
               else
               begin
               if(i mod 4=0 )
               then
               RowOut[i] := (RowIn[i]+500) mod 256
              else if(i mod 4=1 )
               then
               RowOut[i] := (RowIn[i]+700) mod 256
               else if(i mod 4=2 )
               then
               RowOut[i] := (RowIn[i]+100) mod 256
               else if(i mod 4=3 )
               then
               RowOut[i] := (RowIn[i]+1000) mod 256
            end
            end

      end;
   ImageEncrypted.Picture.Graphic := BitmapEncrypted;
   ButtonDecrypt.Enabled := TRUE;
   ButtonSave.Enabled := TRUE
end;

procedure TFormCrypt.DecryptImage;
var
   BitmapDecrypted: TBitmap;
   i: INTEGER;
   j: INTEGER;
   rowIn: pByteArray;
   rowOut: pByteArray;
   ScanlineByteCount: INTEGER;
begin
   BitmapDecrypted := TBitmap.Create;
   BitmapDecrypted.Width := BitmapEncrypted.Width;
   BitmapDecrypted.Height := BitmapEncrypted.Height;
   BitmapDecrypted.PixelFormat := BitmapEncrypted.PixelFormat;

   if BitmapEncrypted.PixelFormat in [pf1bit, pf4bit, pf8bit]
      then BitmapDecrypted.Palette := CopyPalette(BitmapEncrypted.Palette);

   ScanlineByteCount := ABS(Integer(BitmapEncrypted.Scanline[1]) -
      Integer(BitmapEncrypted.Scanline[0]));

   for j := 0 to BitmapEncrypted.Height - 1 do
      begin
         RowIn := BitmapEncrypted.Scanline[j];
         RowOut := BitmapDecrypted.Scanline[j];

         for i := 0 to ScanlineByteCount - 1 do

            begin
               if (j mod 2 =0)
               then
                begin
               if(i mod 4=0 )
               then
               RowOut[i] := ( 256+(RowIn[i]-10000) ) mod 256
              else if(i mod 4=1 )
               then
               RowOut[i] := ( 256+(RowIn[i]-20000) ) mod 256
               else if(i mod 4=2 )
               then
              RowOut[i] := ( 256+(RowIn[i]-30000) ) mod 256
               else if(i mod 4=3 )
               then
               RowOut[i] := ( 256+(RowIn[i]-40000) ) mod 256
              end
              else
                if(i mod 4=0 )
               then
               RowOut[i] := ( 256+(RowIn[i]-500) ) mod 256
              else if(i mod 4=1 )
               then
               RowOut[i] := ( 256+(RowIn[i]-700) ) mod 256
               else if(i mod 4=2 )
               then
              RowOut[i] := ( 256+(RowIn[i]-100) ) mod 256
               else if(i mod 4=3 )
               then
               RowOut[i] := ( 256+(RowIn[i]-1000) ) mod 256
            end

      end;
ImageDecrypted.Picture.Graphic := BitmapDecrypted;
end;

procedure TFormCrypt.FormDestroy(Sender: TObject);
begin
   BitmapOriginal.Free;
   BitmapEncrypted.Free
end;


procedure TFormCrypt.ButtonLoadClick(Sender: TObject);
begin
   if OpenPictureDialog.Execute
      then begin
         if Assigned(BitmapOriginal)
            then BitmapOriginal.Free;

         BitmapOriginal := TBitmap.Create;
         BitmapOriginal.LoadFromFile(OpenPictureDialog.Filename);
         ImageOriginal.Picture.Graphic := BitmapOriginal;

         ButtonEncrypt.Enabled := TRUE;
 
      end
end;


procedure TFormCrypt.ButtonEncryptClick(Sender: TObject);
begin
   EncryptImage
end;


procedure TFormCrypt.ButtonDecryptClick(Sender: TObject);
begin
   DecryptImage
end;


procedure TFormCrypt.CheckBoxStretchClick(Sender: TObject);
begin
   ImageOriginal.Stretch := CheckBoxStretch.Checked;
   ImageEncrypted.Stretch := CheckBoxStretch.Checked;
   ImageDecrypted.Stretch := CheckBoxStretch.Checked
end;


procedure TFormCrypt.EditSeedEncryptChange(Sender: TObject);
begin
   EncryptImage
end;


procedure TFormCrypt.EditSeedDecryptChange(Sender: TObject);
begin
   DecryptImage
end;

procedure TFormCrypt.EditNumericKeyPress(Sender: TObject;
   var Key: Char);

const
   Backspace = #$08;
begin
   if not (Key in [Backspace, '0'..'9'])
      then Key := #$00
end;


procedure TFormCrypt.ButtonSaveClick(Sender: TObject);
begin
   if SavePictureDialog.Execute
      then BitmapEncrypted.SaveToFile(SavePictureDialog.Filename)
end;


end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区三区日韩| 欧美三级在线看| 欧美综合欧美视频| 亚洲精品一区二区三区99| 亚洲精品免费在线观看| 国产一区二三区好的| 在线电影国产精品| 亚洲天堂久久久久久久| 国产在线精品免费| 欧美日韩在线播放三区四区| 国产精品成人一区二区艾草| 韩国精品主播一区二区在线观看| 欧美日韩亚洲综合在线 | 国产精品乡下勾搭老头1| 欧美日韩一区 二区 三区 久久精品| 国产欧美日韩亚州综合| 国内精品伊人久久久久av影院| 欧美日韩免费不卡视频一区二区三区| 国产精品久久久久久久蜜臀 | 久久久天堂av| 久久国产精品露脸对白| 在线播放91灌醉迷j高跟美女| 中文字幕日韩av资源站| 丰满少妇在线播放bd日韩电影| 日韩亚洲欧美成人一区| 日韩精品1区2区3区| 欧美日韩免费高清一区色橹橹| 亚洲精品国产一区二区精华液| 91丝袜国产在线播放| 综合久久久久久久| 色综合天天视频在线观看| 亚洲欧洲成人精品av97| 91美女精品福利| 一区二区三区中文免费| 欧美日精品一区视频| 午夜精品在线视频一区| 8x福利精品第一导航| 麻豆91精品91久久久的内涵| 精品第一国产综合精品aⅴ| 免费观看在线综合| 久久夜色精品国产噜噜av| 国产99一区视频免费| 国产精品色在线| 一本久久a久久免费精品不卡| 亚洲一区二区三区三| 555www色欧美视频| 国产一区中文字幕| 亚洲国产成人在线| 91国内精品野花午夜精品| 亚洲国产精品天堂| 2022国产精品视频| 色综合久久中文综合久久97| 亚洲国产综合人成综合网站| 日韩一区二区在线看片| 国产精品资源在线观看| 亚洲精品成人少妇| 日韩美女主播在线视频一区二区三区 | 国产精品天干天干在观线| 99re成人精品视频| 天堂一区二区在线| 国产亚洲精品bt天堂精选| 91视频精品在这里| 奇米精品一区二区三区四区| 国产欧美日韩亚州综合 | 国产亚洲欧美在线| 99久久99久久精品免费观看| 天堂精品中文字幕在线| 欧美激情中文不卡| 欧美剧情电影在线观看完整版免费励志电影 | 午夜精品一区在线观看| 成a人片国产精品| 久久亚洲一区二区三区明星换脸| 成人三级伦理片| 日韩在线一区二区三区| 国产精品无人区| 777午夜精品视频在线播放| 国产v日产∨综合v精品视频| 亚洲一区二区在线视频| 久久久国产综合精品女国产盗摄| 欧美午夜在线观看| 波多野结衣精品在线| 麻豆精品一二三| 亚洲女与黑人做爰| 国产三级精品视频| 亚洲激情第一区| 26uuu国产在线精品一区二区| 91久久精品一区二区三| 国产传媒久久文化传媒| 日韩在线卡一卡二| 亚洲免费伊人电影| 国产欧美va欧美不卡在线| 欧美大片拔萝卜| 欧美日韩国产另类一区| 一本在线高清不卡dvd| 国产suv精品一区二区三区| 免费看黄色91| 琪琪一区二区三区| 天堂午夜影视日韩欧美一区二区| 亚洲精品一二三区| 亚洲视频1区2区| 国产精品对白交换视频| 久久久三级国产网站| 欧美精品一区二区三区久久久| 欧美日韩国产电影| 欧美天天综合网| 在线视频欧美精品| 色香色香欲天天天影视综合网| 不卡一区中文字幕| 99国产一区二区三精品乱码| 成人自拍视频在线| 粉嫩欧美一区二区三区高清影视| 久久国产精品色婷婷| 九九精品一区二区| 精彩视频一区二区三区| 精品一区二区在线看| 捆绑紧缚一区二区三区视频| 麻豆精品国产91久久久久久| 麻豆精品在线看| 国产精品亚洲午夜一区二区三区| 国产精品亚洲一区二区三区在线| 国产麻豆视频一区| zzijzzij亚洲日本少妇熟睡| 国产成人精品一区二区三区四区 | 日韩中文字幕亚洲一区二区va在线| 亚洲欧美一区二区三区久本道91| 国产精品成人免费在线| 亚洲欧美aⅴ...| 日韩电影免费在线| 精品一区二区三区免费毛片爱 | 午夜精品国产更新| 日韩经典一区二区| 国产乱妇无码大片在线观看| 成人综合婷婷国产精品久久| 91看片淫黄大片一级在线观看| 色婷婷亚洲一区二区三区| 欧美三级视频在线播放| 这里只有精品99re| 国产日韩欧美一区二区三区综合| 国产精品久久久久7777按摩 | 91久久香蕉国产日韩欧美9色| 欧美亚洲动漫另类| 日韩视频免费观看高清完整版在线观看| 日韩一区二区三区电影| 国产色婷婷亚洲99精品小说| 亚洲人快播电影网| 天天综合日日夜夜精品| 福利一区在线观看| 欧美性受xxxx| 久久人人超碰精品| 一个色在线综合| 激情成人综合网| 在线亚洲+欧美+日本专区| 精品国精品国产| 亚洲一区在线观看视频| 国产一区二区三区在线观看免费视频| 成人不卡免费av| 日韩片之四级片| 亚洲欧美一区二区三区极速播放| 免费看日韩a级影片| 日本精品视频一区二区三区| 精品少妇一区二区三区在线播放| 国产精品初高中害羞小美女文| 免费在线观看日韩欧美| 日本二三区不卡| 欧美韩国日本一区| 视频一区中文字幕| aaa国产一区| 久久亚洲影视婷婷| 青青草原综合久久大伊人精品| 成人爱爱电影网址| ww亚洲ww在线观看国产| 亚洲影院在线观看| 成年人午夜久久久| 久久中文娱乐网| 日本不卡一区二区| 欧美性感一区二区三区| 国产精品久久久久久亚洲毛片| 久久成人精品无人区| 欧美老女人第四色| 亚洲成人777| 日本丶国产丶欧美色综合| 中日韩免费视频中文字幕| 国内精品免费**视频| 日韩欧美中文字幕制服| 天堂一区二区在线| 欧美日韩精品久久久| 一区二区三区四区视频精品免费| 成人小视频免费观看| 日本一区二区三区四区| 国产曰批免费观看久久久| 精品第一国产综合精品aⅴ| 美女视频第一区二区三区免费观看网站| 欧美日韩中文国产| 日日噜噜夜夜狠狠视频欧美人 | 国产欧美日韩亚州综合| 国产在线播精品第三| 久久奇米777| 国产91精品精华液一区二区三区| 日韩免费看的电影| 紧缚奴在线一区二区三区|