请参考EzCreateFont,LOGFONT的SDK文档。
或者在北京大学出版社的《Windows程序设计》下册975页参考有关文章。
其思路是创建一个逻辑字体,然后把它选进DC的设置中。

解决方案 »

  1.   

    不要用字,用图形,再用bitblt(大概是这个名字吧)API函数.
      

  2.   

    Windows的逻辑字体(LogFont)可以使用CreateFont或CreateFontIndirect这两个Windows API函数来定义任何想要的字体,由于CreateFont所需的参数太多通常我们使用CreateFontIndirect来建立所需的逻辑字体,这个API函数在Delphi中的声明为function CreateFontIndirect(const p1: TLogFont): HFONT; stdcall;  在Delphi 4 的Windows.pas中TLogFont的定义在第12407开始。对于其中lfItalic、lfUnderline、lfStrikeOut的值,如果非0则分别表示采用斜体字、加上下划线、加上删除线,反之则用正常字体.实例如下:
        新建一个Delphi工程,在窗体上加入一个TButton控件,双击Button1,完成如下代码:
        procedure TForm1.Button1Click(Sender: TObject);
        var
          r:string;
          LogFont:TLogFont;
          NewFont,OldFont:THandle;
        begin
          SetBkMode(Canvas.Handle,Transparent);
          LogFont.lfHeight :=60; {lfHeight指定以逻辑单位标定的字体高度,取值可为正负或零,对于需要随意定义字体高度的情况下通常取负值,以保证获得实际尺寸的字体。} 
          LogFont.lfWidth :=30;  {lfWidth用于指定字体的平均宽度,由于Windows系统下的大多数字体都是比例字体因而采用平均宽度这个表示方法。若指定为0,则系统会自动根据适当的比例自动处理宽度。} 
          LogFont.lfEscapement :=400; {指定输出方向与当前坐标系X轴之间的以十分之一度为单位的角度,这里就是40度了。} 
          LogFont.lfWeight :=0;
          LogFont.lfItalic :=0; 
          LogFont.lfUnderline :=0; 
          LogFont.lfStrikeOut :=0;  
          LogFont.lfCharSet :=DEFAULT_CHARSET;  
          r :='宋体'#0;
          move(r[1],LogFont.lfFaceName[0],length(r)+1);
          NewFont :=CreateFontIndirect(LogFont);
          OldFont :=SelectObject(Canvas.Handle,NewFont);
          Canvas.TextOut(10,200,'测试字体');{输出内容是“测试字体”}
          SelectObject(Canvas.Handle,OldFont);{用完以后还要还原字体}
          DeleteObject(NewFont);
        end;
        这样就可以按F9运行了,按Button1,得到图示窗体,是不是字体已经倾斜输出了?
        应当注意:在SelectObject的过程中,操作系统会按照一定的原则在现有字体中寻找最佳匹配的字体,作为将来描绘文字的真正字体。在Windows环境下,每种字体具体输出为何种形式取决于很多因素,需要对以上这些参数进行有效的组合才能达到所要的效果。
      

  3.   

    其实买一本《Delphi4开发大全》(网上有下的),该论坛的一些部分的问题上面都有!
    对了【汉字转动】是平面还是立体转动?请说清楚!
      

  4.   

    to lixiaolei:
        您能给出平面转动和垂直转动的思路吗!图形是否也可以?
      

  5.   

    装载支持Gif动画的控件,CSDN上可以下载的啊!(如果你没买的话!),Abcfordelphi控件很好用的!何必若若编代码?
      

  6.   

    I give you my solution by E-mail.