c# – 旋转文本进行打印

c# – 旋转文本进行打印,第1张

概述我正在使用PrintDocument打印页面.有一点我想旋转文字90度并打印它,即垂直打印文字.有任何想法吗 ??? g.RotateTransform(90); 不适用于OnPaint. 当您调用RotateTransform时,您需要注意坐标系结束的位置.如果运行以下代码,则“倾斜文本”将显示在左边缘的左侧;所以它是不可见的: e.Graphics.Clear(SystemColors.Con 我正在使用Printdocument打印页面.有一点我想旋转文字90度并打印它,即垂直打印文字.有任何想法吗 ???

g.Rotate@R_404_4154@(90);

不适用于OnPaint.

解决方法 当您调用Rotate@R_404_4154@时,您需要注意坐标系结束的位置.如果运行以下代码,则“倾斜文本”将显示在左边缘的左侧;所以它是不可见的:
e.Graphics.Clear(Systemcolors.Control);e.Graphics.DrawString("normal text",this.Font,SystemBrushes.ControlText,10,10);e.Graphics.Rotate@R_404_4154@(90);e.Graphics.DrawString("Tilted text",10);

由于您已将图面倾斜90度(时钟),所以y坐标现在将沿着左/右轴(从您的角度)移动,而不是向上/向下移动.更大的数字在左边.所以要将倾斜的文本移动到表面的可见部分,您将需要减小y坐标:

e.Graphics.Clear(Systemcolors.Control);e.Graphics.DrawString("normal text",-40);

默认情况下,坐标系的起点位于表面的左上角,因此Rotate@R_404_4154@会旋转曲面.

这是一个说明这个的图像黑色是在调用Rotate@R_404_4154@之前,红色后调用Rotate@R_404_4154@(35):

总结

以上是内存溢出为你收集整理的c# – 旋转文本进行打印全部内容,希望文章能够帮你解决c# – 旋转文本进行打印所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1257591.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-07
下一篇2022-06-07

发表评论

登录后才能评论

评论列表(0条)

    保存