BSOne.SFC/EM.Lib/ImageEn_SRC/Demos/FullApps/PhotoEn3/HiddenText.pas

71 lines
1.4 KiB
Plaintext

unit HiddenText;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;
type
TfrmHiddenText = class(TForm)
Panel1: TPanel;
Button1: TButton;
Button2: TButton;
Memo1: TMemo;
Panel2: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
implementation
uses
Main, Childwin;
{$R *.DFM}
// read
procedure TfrmHiddenText.Button1Click(Sender: TObject);
var
ss: TMemoryStream;
begin
Memo1.Clear;
ss := TMemoryStream.Create;
with MainForm.ActiveMDIChild as TMDIChild do
begin
ss.Size := ImageEnView1.Proc.ReadHiddenData(nil, 0);
ImageEnView1.Proc.ReadHiddenData(ss.memory, ss.Size);
end;
Memo1.Lines.LoadFromStream(ss);
ss.free;
end;
// write
procedure TfrmHiddenText.Button2Click(Sender: TObject);
var
ss: TMemoryStream;
begin
ss := TMemoryStream.Create;
Memo1.Lines.SaveToStream(ss);
with MainForm.ActiveMDIChild as TMDIChild do
ImageEnView1.Proc.WriteHiddenData(ss.memory, ss.size);
ss.free;
end;
procedure TfrmHiddenText.FormActivate(Sender: TObject);
begin
Memo1.Clear;
with MainForm.ActiveMDIChild as TMDIChild do
label3.Caption := IntToStr(ImageEnView1.Proc.GetHiddenDataSpace);
end;
end.