请问有制作“阴影字,边框字,镂空字”等特效字体的程序算法吗?

hyper2k 2003-07-29 11:42:27
在网上找了好久大多是用photoshop实现的方法。有无编程算法实现各种特效字吗?
...全文
232 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoxiao197821 2003-12-01
  • 打赏
  • 举报
回复
以前的帖子有,你找找
gk0205 2003-11-27
  • 打赏
  • 举报
回复
MARK
sunchunqian 2003-08-18
  • 打赏
  • 举报
回复
myling(阿德) :
两个字错开是勾边字,不是阴影字。阴影跟勾边不是同回事。


gz
sunchunqian 2003-08-12
  • 打赏
  • 举报
回复
gz
myling 2003-08-12
  • 打赏
  • 举报
回复
阴影字,两个大小相同的字错开一点,一个黑色,一个灰色,就是阴影字


其余的差不多
CDSoftwareWj 2003-07-31
  • 打赏
  • 举报
回复
1。输出空心字体:

procedure TForm1.Button1Click(Sender: TObject);
begin
Canvas.Font.Name := 'Times New Roman'; //这里的字体一定要是TrueType Font
Canvas.Font.size := 72;
Canvas.Font.style := [fsItalic,fsBold];
beginpath(canvas.handle); //开始捕获 Canvas上绘制的轮廓
SetBkMode( Canvas.Handle, TRANSPARENT );
canvas.TextOut(20,40,'Hello');
endpath(canvas.handle); //结束捕获

Canvas.Pen.Color := clred;
StrokePath(canvas.handle); //将捕获的轮廓用当前的Pen画到Canvas上
end;

2。用字体开透明窟窿:
procedure TForm1.Button1Click(Sender: TObject);
begin
canvas.Font.Name := 'Times New Roman';
canvas.Font.size := 72;
canvas.Font.style := [fsItalic,fsBold];
beginpath(canvas.handle);
SetBkMode(Canvas.Handle, TRANSPARENT ); //试验一下不用这行语句,会得到很有意思的结果
canvas.Polygon([Point(0,0),Point(Width,0),
Point(Width,Height),Point(0,Height),
Point(0,0)]); //试验不用该语句看看结果如何
canvas.TextOut(20,40,'Hello');
endpath(canvas.handle);

SetWindowRgn( Handle, PathToRegion(canvas.Handle), true );
end;



procedure TForm1.Button1Click(Sender: TObject);
Var
MyMsg : String;
TextW : Integer;
begin
Image1.Canvas.Font.Style := [fsItalic, fsBold];
Image1.Canvas.Brush.Style := bsClear;
Image1.Canvas.Font.Name := 'Arial Rounded MT Bold';
Image1.Canvas.Font.Size := 32;
MyMsg := Edit1.Text;
TextW := Image1.Width div 2 - (Image1.Canvas.TextWidth(MyMsg) div 2);
With Image1.Canvas Do
Begin
Font.Color := clBlack;
TextOut(TextW, 10, MyMsg);
Font.Color := clGray;
TextOut(TextW - 1, 9, MyMsg);
Font.Color := clGray;
TextOut(TextW - 2, 8, MyMsg);
Font.Color := clSilver;
TextOut(TextW - 3, 7, MyMsg);
Font.Color := clSilver;
TextOut(TextW - 4, 6, MyMsg);
Font.Color := clRed;
TextOut(TextW - 5, 5, MyMsg);
End;
end;


  • 打赏
  • 举报
回复
UP

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi GAME,图形处理/多媒体
社区管理员
  • GAME,图形处理/多媒体社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧