📄 pseffect.pas
字号:
{------------------------------------------------------------------------------}
{ }
{ TCustomPicShow v3.08 }
{ by Kambiz R. Khojasteh }
{ }
{ kambiz@delphiarea.com }
{ http://www.delphiarea.com }
{ }
{ Special thanks to: }
{ :: <k3nx@hotmail.com> for help on D5 support. }
{ :: Douglass Titjan <support@delphipages.com> for help on D5 support. }
{ :: Jerry McLain <jkmclain@srcaccess.net> for manual control idea. }
{ :: M. R. Zamani <M_R_Zamani@yahoo.com> for adding 8 effects (110..117). }
{ :: Elliott Shevin <ShevinE@aol.com> for adding 4 effects (123..126). }
{ :: Ken Otto <ken.otto@enviros.com> for adding native JPG support to }
{ TDBPicShow and fixing a memory leak bug. }
{ :: Gary Bond <gary.bond@tesco.net> for name of the transitions. }
{ :: Viatcheslav V. Vassiliev <vvv@spacenet.ru> for optimizing the }
{ thread's termination. }
{ :: Miguel Gastelumendi Dargent <mgd@satelier.com.br> for fixing the }
{ possible off-screen problem on the first time transition. }
{ :: Terry Bogard <voyage_technologies@yahoo.com> for fixing the bug in }
{ choosing transition style by name. }
{ }
{------------------------------------------------------------------------------}
{$I DELPHIAREA.INC}
{$R-}
unit PSEffect;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, JPEG;
const
Bmp32Styles = [118..122];
type
TEffectProc = procedure(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect001(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect002(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect003(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect004(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect005(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect006(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect007(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect008(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect009(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect010(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect011(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect012(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect013(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect014(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect015(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect016(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect017(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect018(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect019(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect020(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect021(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect022(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect023(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect024(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect025(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect026(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect027(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect028(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect029(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect030(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect031(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect032(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect033(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect034(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect035(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect036(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect037(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect038(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect039(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect040(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect041(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect042(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect043(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect044(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect045(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect046(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect047(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect048(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect049(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect050(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect051(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect052(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect053(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect054(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect055(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect056(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect057(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect058(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect059(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect060(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect061(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect062(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect063(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect064(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect065(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect066(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect067(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect068(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect069(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect070(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect071(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect072(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect073(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect074(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect075(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect076(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect077(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect078(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect079(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect080(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect081(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect082(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect083(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect084(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect085(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect086(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect087(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect088(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect089(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect090(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect091(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect092(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect093(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect094(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect095(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect096(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect097(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect098(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect099(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect100(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect101(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect102(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect103(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect104(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect105(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect106(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect107(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect108(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect109(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect110(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect111(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect112(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect113(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect114(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect115(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect116(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect117(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect118(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect119(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect120(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect121(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect122(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect123(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect124(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect125(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect126(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect127(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect128(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect129(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect130(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect131(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect132(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect133(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect134(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect135(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect136(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect137(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect138(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect139(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect140(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect141(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect142(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect143(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect144(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect145(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect146(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect147(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect148(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect149(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
procedure Effect150(Screen, Image: TBitmap; const Rect: TRect;
Step: Integer; Progress: Integer);
type
TEffect = record
Name: String;
Proc: TEffectProc;
end;
const
CustomEffectName = 'Custom';
PSEffects: array[1..150] of TEffect = (
(Name: 'Expand from right'; Proc: Effect001),
(Name: 'Expand from left'; Proc: Effect002),
(Name: 'Slide in from right'; Proc: Effect003),
(Name: 'Slide in from left'; Proc: Effect004),
(Name: 'Reveal from left'; Proc: Effect005),
(Name: 'Reveal from right'; Proc: Effect006),
(Name: 'Expand in from right'; Proc: Effect007),
(Name: 'Expand in from left'; Proc: Effect008),
(Name: 'Expand in to middle'; Proc: Effect009),
(Name: 'Expand out from middle'; Proc: Effect010),
(Name: 'Reveal out from middle'; Proc: Effect011),
(Name: 'Reveal in from sides'; Proc: Effect012),
(Name: 'Expand in from sides'; Proc: Effect013),
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -