是否可以使用printdocument打印字符串,如下图所示。即在文本保持水平时垂直打印。我垂直打印的所有搜索都涉及旋转旋转字符的字符串。
我的代码效率极低且非常静态,因为它只考虑了PRODUCT这个词。事实上,我很尴尬甚至在这里发布,但你可以在下面看到它。我确定了每个角色的位置。这里的问题是PRODUCT这个词可以动态改变,所以下面的代码不起作用。
是否有任何内置函数可以像e.Graphics.RotateTransform那样为字符串执行此操作?
e.Graphics.DrawString("P", probsoltext, Brushes.Black, new PointF(28, 406));
e.Graphics.DrawString("R", probsoltext, Brushes.Black, new PointF(28, 423));
e.Graphics.DrawString("O", probsoltext, Brushes.Black, new PointF(28, 441));
e.Graphics.DrawString("D", probsoltext, Brushes.Black, new PointF(28, 459));
e.Graphics.DrawString("U", probsoltext, Brushes.Black, new PointF(28, 476));
e.Graphics.DrawString("C", probsoltext, Brushes.Black, new PointF(28, 495));
e.Graphics.DrawString("T", probsoltext, Brushes.Black, new PointF(28, 513));
答案 0 :(得分:0)
希望以下代码有所帮助。
System.Drawing.Graphics formGraphics = this.CreateGraphics();
string drawString = "Product";
System.Drawing.Font drawFont = new System.Drawing.Font("Arial", 16);
System.Drawing.SolidBrush drawBrush = new System.Drawing.SolidBrush(System.Drawing.Color.Black);
float x = 100.0f;
float y = 15.0f;
System.Drawing.StringFormat drawFormat = new System.Drawing.StringFormat(StringFormatFlags.DirectionVertical);
formGraphics.DrawString(drawString, drawFont, drawBrush, x, y, drawFormat);
drawFont.Dispose();
drawBrush.Dispose();
formGraphics.Dispose();
以下行可以解决问题
System.Drawing.StringFormat drawFormat = new System.Drawing.StringFormat(StringFormatFlags.DirectionVertical);