Tag: 打印

以横向打印图像?

我正在将控件转换为位图并打印它: using (MemoryStream ms = new MemoryStream()) { chart1.SaveImage(ms, ChartImageFormat.Bmp); Bitmap bm = new Bitmap(ms); PrintDocument doc = new PrintDocument(); doc.PrintPage += (s, ev) => { ev.Graphics.DrawImage(bm, Point.Empty); // adjust this to put the image elsewhere ev.HasMorePages = false; }; doc.Print(); } 如何指定以横向打印?

是什么原因导致System.Drawing.Printing.PrinterSettings.InstalledPrinters抛出Win32Exception“RPC服务器不可用”?

我有一个我正在处理的应用程序,我允许用户在从应用程序打印表单时选择要用作打印机的打印机。 我正在使用.NET 2.0 在设置屏幕中,我打电话 System.Drawing.Printing.PrinterSettings.InstalledPrinters 获取可用打印机列表。 在客户端的计算机上,该属性抛出exception: System.ComponentModel.Win32Exception: The RPC server is unavailable 客户端报告窗口将其打印机显示为“就绪”,客户端可以从打印机打印测试页。 但是,我无法在本地重现这个问题,而且我的想法已经不多了。 有没有人有什么想法会导致这个问题? 任何想法或方向看都会有所帮助。 谢谢

多页PrintDocument中的不同方向(如何)

我有一个包含多个页面的PrintDocument 。 该文档中的一页必须处于横向方向而不是Portrail。 当为文档上的每个页面触发PrintPage事件时…在该事件处理程序的最开始,我将PrintPageEventArgs.PageSettings.Landscape设置为true。 这不适用于那个页面……但是我可以看到Landscape设置为true并在NEXT页面中考虑到了。 我假设某种方式…在某个页面触发事件后,您无法更改页面方向。 如果你认为它,那么逻辑就更少了……但是我怎么能在EVENT在多页PrintDocument中触发之前设置标志? 注意:我事先不知道“下一页”是否真的需要横向方向。

使用C#打印PDF文件和Doc文件

在我的应用程序中,我正在尝试创建一个函数来打印现有的PDF或Doc。 如何在C#中执行此操作并提供一种机制,以便用户可以选择其他打印机或其他属性。 我看过PrintDialog但不确定它试图打印什么文件,如果有的话,b / c输出总是一个空白页面。 也许我只是错过了一些东西。 任何建议,示例或示例代码都会很棒! 以下是我的代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { string printPath = System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop); System.IO.StreamReader fileToPrint; fileToPrint= new System.IO.StreamReader(printPath […]

SetJob()方法总是返回122

我正在编写一个C#程序来改变打印作业的方向。 我是这样做的 •使用OpenPrinter打开打印机() •使用GetJob()获取JOB_INFO_2结构的作业详细信息 •更改JOB_INFO_2结构中的方向 •使用SetJob()设置JOB_INFO_2结构 但是当我调用SetJob()方法时,它总是失败并返回代码122.我用PRINTER_ALL_ACCESS打开打印机。 (我也尝试过PRINTER_ACCESS_ADMINISTER,但没有运气)。 我使用的打印机是本地打印机。 我究竟做错了什么? 这是我的代码 public class PrintJob { #region Native Method Imports [DllImport(“winspool.drv”, EntryPoint = “OpenPrinter”, SetLastError = true, CharSet = CharSet.Unicode, ExactSpelling = false, CallingConvention = CallingConvention.StdCall)] public static extern bool OpenPrinter(string pPrinterName, out IntPtr phPrinter, ref PRINTER_DEFAULTS pDefault); [DllImport(“winspool.drv”, EntryPoint = “ClosePrinter”, SetLastError = true, ExactSpelling […]

PDF Itextsharp打印在打印输出的页面右下角添加边距

我有一个PDF导出函数(ality),当在页面/视图上呈现结果时,我有以下输出 如您所见,表格的内容在页面中心对齐,一切看起来都很完美。 但是在打印时,内容(表格)会略微收缩,输出会略微向左轻微推动,这意味着页面右侧和底部会有额外的空间。 这种扭曲的输出在纸张打印机和文档刻录机打印输出上都显示如下。 我无法确定导致这种情况的原因,因为代码中的一切似乎都很好。 相同的代码用于创建和输出PDF文件,所有内容都显示为完美居中。 从网页打印(第一张图片)是问题所在。 这是一个CSS问题还是XMLworker问题? 我的导出方法如下(不相关的代码修剪) public ActionResult ExportFileToPrint() { var printList = conStrings.GetReport(search); string webgridstyle = style.GetCss(); //Pdf css /*Grid with records data (rows)*/ string gridHtml = style.GetGrid(printList); string exportData = String.Format (“” + “{0}” + “” + “” + “{1}” + “”, “” + webgridstyle + “”, gridHtml); var bytes […]

在多个页面上打印表单

我有3种打印方法:printa,printb和printc(每种打印一种forms)。 所有3个表单都需要跨多个页面打印。 如何打印3页? 我知道我们需要使用事件处理程序并使用currentpage和e.hasmorepages但我不确定如何使用它。

如何打印WPF WebBrowser控件中显示的PDF文件

我有一个WPF应用程序,它使用标准的WebBrowser控件实现一个简单的Web浏览器。 当用户导航到PDF文档时,文档将在MSIE标准Adobe Reader插件的WebBrowser控件中内嵌显示。 现在我需要以编程方式打印文件。 我该怎么做? 我知道Adobe Reader有一个带有print命令的COM接口。 这个界面也可以在MSIE插件中使用吗? 如何从WPF代码访问它,我只能访问WebBrowser控件? 谢谢你的建议!

在C#中创建’标签设计师’

我正在尝试创建一个相当简单的标签打印机,以补充我们网站上提供的服务(使用IPN处理PayPal付款并输出包含可自定义交易信息的CSV文件)。 我的打印机模块大部分已经分类,但我希望该软件的用户能够调整信息的位置,类似于Brother提供的P-Touch软件。 该过程包括加载CSV文件,其中包含各种列标题。 然后,您应该能够移动关于布局的列标题 – 在窗体窗口中间的空格,然后理想情况下,它会捕捉到对齐网格。 之后,用户可以选择打印预览,并根据可用的不同标签尺寸打印标签,其中数据源是CSV文件。 我的主要问题是“标签设计师”,我不知道从哪里开始。 我正在使用Visual Express 2010测试版和C#。

c#RawPrinterHelper将数据发送到打印机,打印机假脱机和状态“打印”但实际上没有打印

我正在使用RawPrinterHelper类,如下所述: https : //support.microsoft.com/en-us/help/322091/how-to-send-raw-data-to-a-printer-by-using-visual- c-.net 我正在使用完全按照示例的代码,它似乎立即工作没有错误 – 除了它没有实际打印。 检查打印队列显示打印作业出现,并立即消失。 如果我更改属性以保留旧打印件,我可以看到它将作业分类为“已打印”。 然而实际上没有印刷过! 我尝试使用Notepad,Word和Excel直接打印到打印机,所有这些都是成功的。 我尝试了3种不同的打印机,甚至在不同的打印机上使用不同的打印机重新完成了工作,但仍然存在同样的问题。 我正在使用Windows 10专业版和VS2017。 任何建议将不胜感激。 private void button1_Click(object sender, EventArgs e) { //Allow the user to select a file. OpenFileDialog ofd = new OpenFileDialog(); if (DialogResult.OK == ofd.ShowDialog(this)) { // Allow the user to select a printer. PrintDialog pd = new PrintDialog(); pd.PrinterSettings = […]