c# – 旋转文本进行打印
发布时间:2020-12-15 06:19:37 所属栏目:百科 来源:网络整理
导读:我正在使用PrintDocument打印页面.有一点我想旋转文字90度并打印它,即垂直打印文字.有任何想法吗 ??? g.RotateTransform(90); 不适用于OnPaint. 解决方法 当您调用RotateTransform时,您需要注意坐标系结束的位置.如果运行以下代码,则“倾斜文本”将显示在
我正在使用PrintDocument打印页面.有一点我想旋转文字90度并打印它,即垂直打印文字.有任何想法吗 ???
g.RotateTransform(90); 不适用于OnPaint. 解决方法
当您调用RotateTransform时,您需要注意坐标系结束的位置.如果运行以下代码,则“倾斜文本”将显示在左边缘的左侧;所以它是不可见的:
e.Graphics.Clear(SystemColors.Control); e.Graphics.DrawString("Normal text",this.Font,SystemBrushes.ControlText,10,10); e.Graphics.RotateTransform(90); e.Graphics.DrawString("Tilted text",10); 由于您已将图面倾斜90度(时钟),所以y坐标现在将沿着左/右轴(从您的角度)移动,而不是向上/向下移动.更大的数字在左边.所以要将倾斜的文本移动到表面的可见部分,您将需要减小y坐标: e.Graphics.Clear(SystemColors.Control); e.Graphics.DrawString("Normal text",-40); 默认情况下,坐标系的起点位于表面的左上角,因此RotateTransform会旋转曲面. 这是一个说明这个的图像黑色是在调用RotateTransform之前,红色后调用RotateTransform(35): (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |