以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- GDI+如何绘制竖排文字? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=56955) |
-- 作者:pyh6918 -- 发布时间:2014/9/15 22:30:00 -- GDI+如何绘制竖排文字? Dim p As WinForm.Painter = e.Form.Controls("Painter1")
这段代码绘制的结果是:我爱狐表
如何达到竖向排列的结果:
我 爱 狐 表
谢谢! |
-- 作者:有点甜 -- 发布时间:2014/9/15 22:36:00 -- Dim p As WinForm.Painter = e.Form.Controls("Painter1") Dim g As Graphics = p.Graphics Dim fnt As New Font("宋体",16) Dim msg As String = "我" & vbcrlf & "爱" & vbcrlf & "狐" & vbcrlf & "表" g.DrawString(msg,fnt,Brushes.Red,10,10) p.Repaint() [此贴子已经被作者于2014-9-15 22:35:45编辑过]
|
-- 作者:pyh6918 -- 发布时间:2014/9/15 22:43:00 -- 网上找了个StringFormatFlags.DirectionVertical方法,不知道怎么用?
说是把这个做为参数放到位置的后面,但没成功。 [此贴子已经被作者于2014-9-15 22:45:58编辑过]
|
-- 作者:pyh6918 -- 发布时间:2014/9/15 22:45:00 -- 多谢甜版,这是个变通的方法。
这要重新整理字符串才行。 |
-- 作者:有点甜 -- 发布时间:2014/9/15 22:59:00 -- Dim p As WinForm.Painter = e.Form.Controls("Painter1") Dim g As Graphics = p.Graphics Dim fnt As New Font("宋体",16) Dim msg As String = "我爱狐表" Dim newmsg As String = "" For Each s As String In msg newmsg &= s & vbcrlf Next g.DrawString(newmsg,fnt,Brushes.Red,10,10) p.Repaint() |
-- 作者:pyh6918 -- 发布时间:2014/9/15 23:05:00 -- 多谢甜版,非常好! |
-- 作者:逛逛 -- 发布时间:2014/9/16 9:09:00 -- Dim p As WinForm.Painter = e.Form.Controls("Painter1")
Dim fns As System.Drawing.StringFormat = New System.Drawing.StringFormat
|