c# 打印电子发票

Posted 健康一贴灵

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# 打印电子发票相关的知识,希望对你有一定的参考价值。

 

using System;
using System.Drawing;
using System.Windows.Forms;
using System.Drawing.Printing;
using Spire.Pdf;

namespace InvoicePrint

    public partial class Form1 : Form
    
        public Form1()
        
            InitializeComponent();
        

        private void btnUpload_Click(object sender, EventArgs e)
        
            OpenFileDialog openFileDialog = new OpenFileDialog();

            //设置对话框标题
            openFileDialog.Title = "选择要打印的发票";
            //设置文件类型
            openFileDialog.Filter = "PDF文件|*.pdf|PDF文件|*.PDF";
            //默认加载目录
            openFileDialog.InitialDirectory = @"C:\\";
            //记忆之前打开的对话框
            openFileDialog.RestoreDirectory = true;
            //多选
            openFileDialog.Multiselect = true;

            if (openFileDialog.ShowDialog() == DialogResult.OK)
            

                for (int i = 0; i < openFileDialog.SafeFileNames.Length; i++)
                
                    //openFileDialog.SafeFileNames[i] 文件名扩展名
                    //openFileDialog.FileNames[i] 全路径及文件名
                    //lbFileList.Items.Add(openFileDialog.SafeFileNames[i]);
                    lbFileList.Items.Add(openFileDialog.FileNames[i]);

                


            



        

        private void btnExit_Click(object sender, EventArgs e)
        
            Close();
        

        private void btnPrint_Click(object sender, EventArgs e)
        
            pdfPrint(lbFileList.Items[0].ToString());

        

        void pdfPrint(string pdfFileName)
        
            //加载需要打印的PDF文档
            PdfDocument doc=new Spire.Pdf.PdfDocument();
            doc.LoadFromFile(pdfFileName);

            //获取原文档第一页的纸张大小,这里的单位是Point

            SizeF size = doc.Pages[0].Size;

            //实例化PaperSize对象,设置其宽、高

            //需要特别注意的是这里涉及到单位的转换,PaperSize的宽高参数默认单位是百英寸 

            PaperSize paper = new PaperSize("Custom", (int)size.Width / 210 * 100, (int)size.Height / 72 * 100);

            paper.RawKind = (int)PaperKind.Custom;

            //设置打印的纸张大小为原来文档的大小

            doc.PrintSettings.PaperSize = paper;

            //需要选择FitSize打印模式

            doc.PrintSettings.SelectSinglePageLayout(PdfSinglePageScalingMode.FitSize, true);

            //打印

            doc.Print();
        
    

 

贝宝发送发票不发送电子邮件

【中文标题】贝宝发送发票不发送电子邮件【英文标题】:PayPal Send Invoice does not send email 【发布时间】:2016-07-07 14:33:35 【问题描述】:

我使用 CreateandSendInvoice API 在 Paypal Sandbox 中发送发票。我还包括了付款人的电子邮件 ID。发票是在 Paypal Sandbox 帐户中创建的。但付款人在他的电子邮件中没有收到有关发票的电子邮件。我尝试了不同的电子邮件,但我仍然没有在他的收件箱中收到任何电子邮件。请任何人帮助我。谢谢你

【问题讨论】:

【参考方案1】:

沙盒不发送实际的电子邮件。相反,您将登录到http://developer.paypal.com,单击进入您的沙盒帐户,然后单击通知链接。在其中,您将看到通常会在帐户的真实电子邮件地址中看到的所有电子邮件。

【讨论】:

你好安德鲁,谢谢。但是 live paypal 是否会将实际的发票电子邮件发送到付款人的收件箱? 是的,实时 PayPal 服务器会向收款人发送实际电子邮件。 嗨 Andrew...这非常有帮助。在 Sandbox Paypal 网站中,还提供请求付款功能(不创建发票),我们可以使用电子邮件地址向任何付款人请求付款。这不需要发票。但是 API 中不存在相同的功能。请帮助我。谢谢 任何人将来发现此评论,“请求资金”不是 API 选项。您必须使用发票。

以上是关于c# 打印电子发票的主要内容,如果未能解决你的问题,请参考以下文章

如何在公司打印机上打印手机电子发票

PDF电子发票如何打印

PDF的电子发票,怎么缩小打印?

为啥我的电子发票打印不出来?

惠普打印机411怎么打印a5电子发票呢

C# WPF发票打印