首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >C# POS机回执打印问题

C# POS机回执打印问题
EN

Stack Overflow用户
提问于 2016-06-20 15:43:50
回答 1查看 2.7K关注 0票数 0

我用c#写了一个代码,用图形对象在POS机上打印收据(爱普生TM-T82 -纸卷:80X297毫米)。

示例代码如下

代码语言:javascript
代码运行次数:0
运行
复制
Graphics graphic = e.Graphics;
Font regularFont = new Font("Courier New", 8);
Font titleFont = new Font("Courier New", 14);
SolidBrush drawBrush = new SolidBrush(Color.Black);
float fontHeight = regularFont.GetHeight();
float startX = 10.0F;
float startY = 5.0F;
int offset = 40;
graphic.DrawString("----------------------------------------", regularFont, drawBrush, new PointF(startX, startY+offset), StringFormat.GenericTypographic);
offset = offset + (int)fontHeight + 5;
string header = "Item Name".PadRight(30) + "Price";
graphic.DrawString(header, regularFont, drawBrush, , new PointF(startX, startY+offset), StringFormat.GenericTypographic);
offset = offset + (int)fontHeight;
graphic.DrawString("----------------------------------------", regularFont, drawBrush, new PointF(startX, startY+offset), StringFormat.GenericTypographic);

以此类推...

现在的问题是,当导出到".XPS“时,它显示得很完美。但在POS打印机收据上打印时,它会剪切列。这意味着它没有打印整行字符串。我试图通过在graphic.DrawString中传递RectangleF来解决这个问题,根据在互联网上找到的建议,但也存在同样的问题。

请看附件中的.XPS和POS机收据截图

在这里,在屏幕截图中,收据边框标记为黑色。在.XPS中,该行打印完成(采用全页宽度),但在POS机收据中,该行未采用全宽(请参阅从剪切字符到右侧边框的空格)

如果有人能在这里帮助我,我到底做错了什么。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2016-06-26 08:06:54

请使用列宽属性

代码语言:javascript
代码运行次数:0
运行
复制
 FlowDocument doc = new FlowDocument();     doc.ColumnWidth = 700;     doc.PagePadding = new Thickness(20, 0, 0, 0);

我希望这能帮助到其他人。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37917026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档