Foxtable(狐表)用户栏目专家坐堂 → 請教,文字圍繞圓旋轉有何簡便代碼?


  共有12682人关注过本帖树形打印复制链接

主题:請教,文字圍繞圓旋轉有何簡便代碼?

帅哥哟,离线,有人找我吗?
hhbb
  21楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:等待验证 帖子:386 积分:2482 威望:0 精华:1 注册:2011/5/10 11:13:00
  发帖心情 Post By:2012/3/19 13:10:00 [只看该作者]

高手終於出手!多謝多謝!

 回到顶部
帅哥哟,离线,有人找我吗?
hhbb
  22楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:等待验证 帖子:386 积分:2482 威望:0 精华:1 注册:2011/5/10 11:13:00
  发帖心情 Post By:2012/3/19 13:12:00 [只看该作者]

昏,版本不夠,請gdlgh兄給出代碼.

 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  23楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2012/3/19 13:21:00 [只看该作者]

算法可以参考下这个

http://www.codeproject.com/Articles/13864/Text-on-Path-with-VB-NET


 回到顶部
帅哥哟,离线,有人找我吗?
gdlgh
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:449 积分:3506 威望:0 精华:5 注册:2008/9/1 2:32:00
  发帖心情 Post By:2012/3/19 13:23:00 [只看该作者]

呵。乱蒙的!

Dim s1 As String = e.Form.Controls("TextBox1").value
Dim i,slen As Integer
Dim sc As Char() = s1.ToCharArray
slen = sc.length
Dim xy,yy,bj1,jdn1,jl,jk,jg,jjd As Double
xy = e.Form.Controls("NumericComboBox1").value    '圓心X坐標
yy = e.Form.Controls("NumericComboBox2").value    '圓心Y坐標
bj1= e.Form.Controls("NumericComboBox3").value    '圓半徑
jdn1=e.Form.Controls("NumericComboBox4").value    '起始角度
jl=e.Form.Controls("NumericComboBox5").value   '字间距
jjd=e.Form.Controls("NumericComboBox6").value   '字角度
jk=15 '字宽
jg=15 '字高
Dim doc As New PrintDoc '定义一个报表
Dim rp As New prt.RenderParagraph()
For i=0 To slen
    rp = New prt.RenderParagraph()
    If i<slen Then
        rp.Content.AddText(sc(i))
        rp.Width = jk
        rp.Height = jg
        rp.x = xy-bj1 * math.cos((i / 36 ) * 2 * 3.14*jl/bj1-jdn1/bj1)
        rp.y = yy-bj1 * math.sin(( i / 36 ) * 2 * 3.14*jl/bj1-jdn1/bj1)
        rp.Style.TextAngle = iif(e.Form.Controls("CheckBox1").checked,0,i-jjd)
        doc.Body.Children.Add(rp)   
    End If
Next
Doc.Preview() '预览报表

 回到顶部
总数 24 上一页 1 2 3