mainform.pas

来自「image convertor prograame Debug version」· PAS 代码 · 共 94 行

PAS
94
字号
{ *********************************************************************** }
{                                                                         }
{ Image convertor                                                         }
{                                                                         }
{ Copyright (c) 2003-2004 Pisarev Yuriy (mail@pisarev.net)                }
{                                                                         }
{ *********************************************************************** }

unit MainForm;

interface

{$B-}
{$WARN SYMBOL_PLATFORM OFF}

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtDlgs, FunThings;

type
  TMyTextConvertor = class(TTextConvertor)
  public
    procedure GetTextProc(Index, HorzIndex, VertIndex: Integer;
      out AText: string; var Continue: Boolean); override;
  end;

  TMain = class(TForm)
    btnConvert: TButton;
    OpenPictureDialog: TOpenPictureDialog;
    SaveDialog: TSaveDialog;
    procedure FormCreate(Sender: TObject);
    procedure btnConvertClick(Sender: TObject);
  private
    FConvertor: TTextConvertor;
  public
    property Convertor: TTextConvertor read FConvertor write FConvertor;
  end;

const
  Numbers = '01';

var
  Main: TMain;

implementation

{$R *.dfm}

{ TMyTextConvertor }

procedure TMyTextConvertor.GetTextProc(Index, HorzIndex,
  VertIndex: Integer; out AText: string; var Continue: Boolean);
begin
  AText := Numbers[Random(2) + 1] + Numbers[Random(2) + 1];
end;

{ TMain }

procedure TMain.FormCreate(Sender: TObject);
begin
  FConvertor := TMyTextConvertor.Create(Self);
end;

procedure TMain.btnConvertClick(Sender: TObject);
var
  Bitmap: TBitmap;
  StringList: TStringList;
  Html: string;
begin
  if not OpenPictureDialog.Execute then Exit;
  Bitmap := TBitmap.Create;
  try
    Bitmap.LoadFromFile(OpenPictureDialog.FileName);
    StringList := TStringList.Create;
    try
      Screen.Cursor := crHourGlass;
      try
        FConvertor.BitmapToHtml(Bitmap, @Html);
      finally
        Screen.Cursor := crDefault;
      end;
      if not SaveDialog.Execute then Exit;
      StringList.Text := Html;
      StringList.SaveToFile(SaveDialog.FileName);
    finally
      StringList.Free;
    end;
  finally
    Bitmap.Free;
  end;
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?