Example #1
0
        /// <summary>
        /// 导出Pdf
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="name">名称,不带文件后缀名</param>
        /// <param name="pdfWidth">pdf页面宽度</param>
        /// <param name="isView">是否是在线浏览</param>
        /// <param name="pdfHeight">pdf页面高度</param>
        /// <param name="sourceDatas">数据源</param>
        public static void ExportToPdf <T>(string name, List <T> sourceDatas, bool isView = false, int pdfWidth = 0, int pdfHeight = 0) where T : class
        {
            if (!sourceDatas.AnyOne())
            {
                return;
            }
            var book        = GetWorkBook(sourceDatas);
            var pdfDocument = new PdfDocument
            {
                PageSettings =
                {
                    Orientation = PdfPageOrientation.Landscape
                }
            };

            //设置宽度和高度
            if (pdfWidth > 0)
            {
                pdfDocument.PageSettings.Width = pdfWidth;
            }
            if (pdfHeight > 0)
            {
                pdfDocument.PageSettings.Height = pdfHeight;
            }
            var settings = new PdfConverterSettings
            {
                TemplateDocument  = pdfDocument,
                FitSheetToOnePage = FitToPageType.ScaleWidthDifferentFactor
            };

            pdfDocument = book.SaveToPdf(settings);
            pdfDocument.SaveToHttpResponse(name + ".pdf", System.Web.HttpContext.Current.Response,
                                           isView ? HttpReadType.Open : HttpReadType.Save);
        }
 public FileUploadController(IOptions <PdfConverterSettings> settings)
 {
     this.settings = settings.Value;
     Directory.CreateDirectory(this.settings.TempFilePath);
     Directory.CreateDirectory(this.settings.PdfDownloadPath);
     this.fileConverter = new FileToPdfUtil(settings);
 }
Example #3
0
        private void btnRun_Click(object sender, System.EventArgs e)
        {
            Workbook workbook = new Workbook();

            workbook.LoadFromFile(@"..\..\..\..\..\..\Data\DataTableSample.xls");

            PdfConverter         pdfConverter = new PdfConverter(workbook);
            PdfDocument          pdfDocument  = new PdfDocument();
            PdfConverterSettings settings     = new PdfConverterSettings();

            settings.EmbedFonts       = true;
            settings.TemplateDocument = pdfDocument;
            pdfDocument = pdfConverter.Convert(settings);

            pdfDocument.SaveToFile("sample.pdf");
            pdfDocument.Close();
            ExcelDocViewer("sample.pdf");
        }
        private void button1_Click(object sender, EventArgs e)
        {
            // load Excel file
            Workbook workbook = new Workbook();

            workbook.LoadFromFile("D:\\MyExcel.xlsx");
            // Set PDF template
            PdfDocument pdfDocument = new PdfDocument();

            pdfDocument.PageSettings.Orientation = PdfPageOrientation.Landscape;
            pdfDocument.PageSettings.Width       = 970;
            pdfDocument.PageSettings.Height      = 850;
            //Convert Excel to PDF using the template above
            PdfConverter         pdfConverter = new PdfConverter(workbook);
            PdfConverterSettings settings     = new PdfConverterSettings();

            settings.TemplateDocument = pdfDocument;
            pdfDocument = pdfConverter.Convert(settings);
            // Save and preview PDF
            pdfDocument.SaveToFile("MyPDF.pdf");
            System.Diagnostics.Process.Start("MyPDF.pdf");
        }
Example #5
0
        public static MemoryStream ConvertXLSXtoPDF(MemoryStream stream)
        {
            // Result Stream
            MemoryStream pdfMemoryStream = new MemoryStream();

            // Spire.XLS to open XLSX workbook stream created by EPPlus
            Workbook workbook = new Workbook();
            workbook.LoadFromStream(stream, ExcelVersion.Version2013);

            // Spire.PDF to convert XLSX to PDF, I read it has limited functionality (total pages, rows, etc...).
            PdfConverter pdfConverter = new PdfConverter(workbook);

            PdfConverterSettings settings = new PdfConverterSettings();

            settings.FitSheetToOnePage = FitToPageType.ScaleWithSameFactor;

            workbook.SaveToStream(pdfMemoryStream, FileFormat.PDF);
            //PdfDocument pdfDocument = pdfConverter.Convert(settings);          
            //pdfDocument.SaveToStream(pdfMemoryStream);

            return pdfMemoryStream;
        }
Example #6
0
 public FileToPdfUtil(IOptions <PdfConverterSettings> settings)
 {
     this.settings = settings.Value;
 }
 public UploadedFilesViewComponent(IOptions <PdfConverterSettings> settings)
 {
     this.settings = settings.Value;
 }
Example #8
0
		private void btnRun_Click(object sender, System.EventArgs e)
		{
			Workbook workbook = new Workbook();

            workbook.LoadFromFile(@"..\..\..\..\..\..\Data\DataTableSample.xls");

            PdfConverter pdfConverter = new PdfConverter(workbook);
            PdfDocument pdfDocument = new PdfDocument();
            PdfConverterSettings settings = new PdfConverterSettings();
            settings.EmbedFonts = true;
            settings.TemplateDocument = pdfDocument;
            pdfDocument = pdfConverter.Convert(settings);

            pdfDocument.SaveToFile("sample.pdf");
            pdfDocument.Close();
            ExcelDocViewer("sample.pdf");
		}