.TXTControl .NET23 打印问题 问题比较急
file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\893030680\QQ\WinTemp\RichOle\K1正常打印如下:但是如果将控件设置横向再打印,结果就不正常啦:
操作步骤如下:
我重现了,而且我发现修改Landscape第二次后,PageSize的Width和Height就不变了。我判断是bug。反馈给厂商了。 gw0506 发表于 2017-7-5 17:08
我重现了,而且我发现修改Landscape第二次后,PageSize的Width和Height就不变了。我判断是bug。反馈给厂商 ...
嗯嗯,谢谢,帮忙跟进下 是代码的问题。改了TX的方向,打印的时候也要改printer的方向。
pDocment.PrinterSettings.LandscapeAngle 本帖最后由 KingMan 于 2017-7-7 10:32 编辑
gw0506 发表于 2017-7-6 18:23
是代码的问题。改了TX的方向,打印的时候也要改printer的方向。
pDocment.PrinterSettings.LandscapeAngle
不行,不知道怎么设置,pDocment.PrinterSettings.LandscapeAngle 这个熟悉是只读。
麻烦给个可以的片段代码
我下面的代码看不出有什么问题:
private void button20_Click(object sender, EventArgs e)
{
PrintDocument pDocment = new PrintDocument();
pDocment.DocumentName = "";
pDocment.DefaultPageSettings.PaperSize = new PaperSize("default",
(int)textControl1.PageSize.Width,
(int)textControl1.PageSize.Height);
pDocment.DefaultPageSettings.Margins = new Margins((int)textControl1.PageMargins.Left,
(int)textControl1.PageMargins.Right,
(int)textControl1.PageMargins.Top,
(int)textControl1.PageMargins.Bottom);
pDocment.DefaultPageSettings.Landscape = textControl1.Landscape;
pDocment.PrinterSettings.PrinterName = "Microsoft XPS Document Writer"; //Microsoft XPS Document Writer HP LaserJet Pro MFP M126nw
pDocment.PrinterSettings.PrintRange = PrintRange.SomePages;
pDocment.PrinterSettings.FromPage = 1;
pDocment.PrinterSettings.ToPage = 1;
textControl1.Print(pDocment);
}
pDocment.DefaultPageSettings.Landscape = textControl1.Landscape; 本帖最后由 KingMan 于 2017-7-9 14:42 编辑
gw0506 发表于 2017-7-7 15:21
pDocment.DefaultPageSettings.Landscape = textControl1.Landscape;
这个是起不到效果的,这样我很早就试过啦。
我尝试啦多次,如下面注释掉才可以,可以打印,但是纸张没有旋转过来,没有打印完整。
PrintDocument pDocment = new PrintDocument();
pDocment.DocumentName = "";
//pDocment.DefaultPageSettings.PaperSize = new PaperSize("default",
// (int)textControl1.PageSize.Width,
// (int)textControl1.PageSize.Height);
//pDocment.DefaultPageSettings.Margins = new Margins((int)textControl1.PageMargins.Left,
// (int)textControl1.PageMargins.Right,
// (int)textControl1.PageMargins.Top,
// (int)textControl1.PageMargins.Bottom);
pDocment.DefaultPageSettings.Landscape = textControl1.Landscape;
pDocment.PrinterSettings.PrinterName = "Microsoft XPS Document Writer"; //Microsoft XPS Document Writer HP LaserJet Pro MFP M126nw
pDocment.PrinterSettings.PrintRange = PrintRange.SomePages;
pDocment.PrinterSettings.FromPage = 1;
pDocment.PrinterSettings.ToPage = 1;
textControl1.Print(pDocment);
麻烦帮忙尽快解决一下,这个问题有点急,客户再等着解决问题。
你看一下你后来贴的这段代码。
PageSize和Margins是要封掉,设置了Landscape,这些东西会自动调整。你这个图为啥我不确定,我这边已经正常了。
gw0506 发表于 2017-7-10 10:01
你看一下你后来贴的这段代码。
PageSize和Margins是要封掉,设置了Landscape,这些东西会自动调整。你这 ...
首先,这样很难看出效果的,你尝试下把TXControl 设置横向,并将里面的内容尽量填满,然后在打印出来,看打印出来的是不是有一部分右边是看不到的。如果没有问题,麻烦将你测试的Demo发我一份 gw0506 发表于 2017-7-10 10:01
你看一下你后来贴的这段代码。
PageSize和Margins是要封掉,设置了Landscape,这些东西会自动调整。你这 ...
如下图图片,打印出来不完整,纸张打印出来仍然是按A4纵向打印出来的。
页:
[1]
2