2013-08-18 2 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? отличное GR32_Text расширение

Sample Wavy Text

+0

Вы можете точно определить, что вы ищете. Текст горизонтальный? Или текст под углом к ​​синусоидальному касанию. И почему у вас есть это пространство в строке. Вам это не нужно! –

+0

На самом деле мне нужно, чтобы какой-то текст перемещался слева направо волнами, т. Е. Волнистым текстом. 100%! Мне это нужно. – user2612109

+1

Самый простой способ - это, очевидно, рисование текста на холсте с использованием алгоритма. Проведите некоторое исследование по этому вопросу, а затем вернитесь и опубликуйте то, что вы пробовали до сих пор. – Peter

ответ

0

Angus Джонсона к тонкой библиотеке graphics32, кажется, делать то, что вам нужно. Демонстрации, которые вы можете скачать из приведенной выше ссылки, показывают только тот эффект, который вы просите. Осталось только оживить текст в краске или аналогичном элементе управления.