2013-08-18 53 views
-1

我有一個Delphi XE2項目顯示滾動文本。我的代碼如下:如何創建波浪文字動畫?

unit Unit1; 

interface 

uses 
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, 
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Vcl.StdCtrls; 

type 
    TForm1 = class(TForm) 
    Label1: TLabel; 
    Timer1: TTimer; 
    procedure Timer1Timer(Sender: TObject); 
    procedure FormCreate(Sender: TObject); 
    private 
    { Private declarations } 
    public 
    { Public declarations } 
    end; 

var 
    Form1: TForm1; 

implementation 

{$R *.dfm} 

procedure TForm1.FormCreate(Sender: TObject); 
begin 
    Label1.Caption := 'This is right scrolling text '; 
    Timer1.Enabled := true; 
end; 

procedure TForm1.Timer1Timer(Sender: TObject); 
var 
    S: String; 
begin 
    S := Label1.Caption; 
    S := S[Length(S)] + Copy(S, 1, Length(S) - 1); 
    Label1.Caption := S; 
end; 

end. 

在2D沿Y軸使用下面的代碼文本滾動完美。

如何滾動文本Sinusoidal Wave

Sample Wavy Text

+0

您能準確定義您正在尋找的內容嗎?文字水平?或者文字與正弦曲線相切。爲什麼你仍然在弦中有這樣的空間。你不需要它! –

+0

其實我需要一些文字會從左向右移動,即波浪文字。 100%!我需要它。 – user2612109

+1

最簡單的方法顯然是使用算法在畫布上繪製文本。對此進行一些研究,然後再回來發佈迄今已嘗試過的內容。 – Peter

回答

0

安格斯·約翰遜的優秀GR32_Text延伸到精細graphics32庫似乎做你的需要。您可以從上面的鏈接下載的演示只顯示您要求的效果。剩下的就是讓你在一個油漆盒或類似的控制器中對文字進行動畫處理。