我在Google上搜索了很多,但没找到我真正想要的内容。我得到了以下代码,将打印变量
我的问题是,在打印
聪明的人们,请指点一下我如何修改这些代码?已编辑此代码并更改了场景...请向下移动
name
。我购买了爱普生点阵打印机和滚筒纸(无限连续纸)。我的问题是,在打印
name
之后,纸张会自动进纸到A4
大小。我不希望自动进纸。这个应用程序旨在打印收据,其中包含需要无缝打印(没有分页符)的无限数据。聪明的人们,请指点一下我如何修改这些代码?已编辑此代码并更改了场景...请向下移动
private void pd_PrintPage(object sender, PrintPageEventArgs e)
{
Font Heading2 = new Font("Times New Roman", 13);
StringFormat sf = new StringFormat();
sf.LineAlignment = StringAlignment.Near;
sf.Alignment = StringAlignment.Center;
//e.HasMorePages = false;
PaperSize pkCustomSize1 = new PaperSize("First custom size", 100, 200);
pd.DefaultPageSettings.PaperSize = pkCustomSize1;
e.Graphics.DrawString(name.ToString(), Heading1, Brushes.Black, e.MarginBounds.Left + (e.MarginBounds.Width / 2), e.MarginBounds.Top, sf);
}
编辑1: @Adriano Repetti建议这是与C#打印中的进纸符重复。我从上面的问题中学到的是他想要添加进纸符。但我想要移除进纸符。
编辑2: 通过谷歌搜索,我得到了另一个提示,即将页面高度
设置为行高
将停止进纸,听起来很有前途。我也在努力弄清楚这一点。
编辑3: @Adriano Repetti提供了使用KB链接进行原始打印(直接打印二进制数据)的建议。我在谷歌上搜索了一下,发现它的C#更好的等效paste bin或pastie.org(因为它是一个方便的工具)。起初听起来不错,它可以很好地停止进纸。但最终我遇到了一些问题。
- 在我的代码中,我必须将一些打印引号对齐到中心或对齐到左侧。我只有使用空格和制表符的选项。但是我们无法确定打印机内置字体的格式是否正确。(参考:@syncis的SO问题)
- 其次,我必须将我的应用程序移动到至少具备Unicode(本地语言支持)能力的应用程序中,在一个月左右的时间内。在这种情况下,原始打印无法帮助我,我将不得不再次经历这些面孔。因此,为了避免这种情况,最好让我保持使用Graphics DrawString。为此,我改变了我的代码。
private void pd_PrintPage(object sender, PrintPageEventArgs e)
{
Font Heading2 = new Font("Times New Roman", 13);
// changed following statement to met with new **unicode** criteria
//e.Graphics.DrawString(name.ToString(), Heading1, Brushes.Black, e.MarginBounds.Left + (e.MarginBounds.Width / 2), e.MarginBounds.Top, sf);
TextRenderer.DrawText(e.Graphics, "My name in local language is വിനീത്", Heading2, new Point(0, 0), Color.Black);
}
面临目前的问题,我正在将问题扩展标签重新定义为unicode。
如何使用支持unicode的TextRenderer.DrawText进行打印
而不需要形式上的进纸
? 我认为将纸张高度设置为行高将解决我的问题。如果是这样,请告诉我如何操作,或者建议一个更好的方法来停止纸张进纸。它真的耗费了我很多宝贵的时间......
编辑4:今天我发现了一件非常有趣的事情,就是我的打印机。我甚至无法手动设置自定义纸张大小(不是通过编程...我的意思是控制面板 -> 打印机和传真->爱普生LX-300+->属性->打印首选项->纸张/质量 ->高级 ->纸张大小-> BOOOOOM没有显示我的自定义纸张大小)。我正在使用爱普生LX-300+打印机。你们认为它不支持自定义纸张大小吗?这会导致我的问题吗?