"景先生毕设|www.jxszl.com

将Control控件转化成PDF文件C#代码样例

2023-12-15 12:58编辑: www.jxszl.com景先生毕设
        /// <summary>
        /// 将Control控件转化成PDF文件C#代码样例
        /// </summary>
        /// <param name="exportControl">要导出PDF的控件</param>
        public void ExportPDF(Control exportControl)
        {
            //定义宽高变量
            int exportWidth = 0;
            int exportHeight = 0;

            //宽高赋值
            exportHeight = exportControl.Height;
            exportWidth = exportControl.Width;

            //图片临时保存路径
            string tempImagePath = Application.StartupPath + @"\TempIamge.bmp";

            //如果图片文件已存在删除
            if (File.Exists(tempImagePath))
            {
                File.Delete(tempImagePath);
            }

            //导出图片
            Classes.Print printManagement = new Print();
            printManagement.SaveAsFile(exportControl, tempImagePath, exportWidth, exportHeight);

            //导出PDF文件
            iTextSharp.text.Document Mydoc = new iTextSharp.text.Document();
            iTextSharp.text.Image MyImage;

            //通过窗口选择保存路径
            SaveFileDialog saveDialogExportPathSeleter = new SaveFileDialog();
            saveDialogExportPathSeleter.InitialDirectory = Application.StartupPath;
            saveDialogExportPathSeleter.Filter = @"*.pdf(PDF文件)|*.pdf";
            saveDialogExportPathSeleter.FileName = "NeusoftExportPDF";
            if (saveDialogExportPathSeleter.ShowDialog() == DialogResult.OK)
            {
                PdfWriter.GetInstance(Mydoc, new FileStream(saveDialogExportPathSeleter.FileName, FileMode.Create));
                Mydoc.Open();
                MyImage = iTextSharp.text.Image.GetInstance(tempImagePath);
                Mydoc.Add(MyImage);
                Mydoc.Close();
            }

            //如果图片文件已存在删除
            if (File.Exists(tempImagePath))
            {
                File.Delete(tempImagePath);
            }
        }


原文链接:http://www.jxszl.com/biancheng/C/556426.html