예제 #1
0
        private void createPdf02(System.Web.HttpResponseBase Response)
        {
            if (FlushInBrowser)
            {
                _pdfRptData.PdfStreamOutput = new MemoryStream();
            }

            //var stream = _pdfRptData.PdfStreamOutput;
            //initPdfWriter02(Response, stream);
            initPdfWriter02(Response, null);
            initSettings();
            _pdfDocumentSettings.ApplyBeforePdfDocOpenSettings();
            _pdfDocumentSettings.SetEncryption();
            PdfDoc.Open();
            _pdfConformance.SetColorProfile();

            if (_pdfRptData.MainTableEvents != null)
            {
                _pdfRptData.MainTableEvents.DocumentOpened(new EventsArguments {
                    PdfDoc = PdfDoc, PdfWriter = PdfWriter, ColumnCellsSummaryData = ColumnSummaryCellsData, PageSetup = _pdfRptData.DocumentPreferences, PdfFont = _pdfRptData.PdfFont, PdfColumnsAttributes = _pdfRptData.PdfColumnsAttributes
                });
            }

            _pdfDocumentSettings.ApplySettings();
            _pdfDocumentSettings.AddFileAttachments();
            addMainTable();
            //_pdfDocumentSettings.ApplySignature(stream);
            _pdfDocumentSettings.ApplySignature(Response.OutputStream);

            if (_pdfRptData.MainTableEvents != null)
            {
                //_pdfRptData.MainTableEvents.DocumentClosing(new EventsArguments { PdfDoc = PdfDoc, PdfWriter = PdfWriter, PdfStreamOutput = stream, ColumnCellsSummaryData = ColumnSummaryCellsData, PageSetup = _pdfRptData.DocumentPreferences, PdfFont = _pdfRptData.PdfFont, PdfColumnsAttributes = _pdfRptData.PdfColumnsAttributes });
                _pdfRptData.MainTableEvents.DocumentClosing(new EventsArguments {
                    PdfDoc = PdfDoc, PdfWriter = PdfWriter, PdfStreamOutput = Response.OutputStream, ColumnCellsSummaryData = ColumnSummaryCellsData, PageSetup = _pdfRptData.DocumentPreferences, PdfFont = _pdfRptData.PdfFont, PdfColumnsAttributes = _pdfRptData.PdfColumnsAttributes
                });
            }

            flushFileInBrowser02();
        }
예제 #2
0
        private byte[] createPdf()
        {
            if (FlushInBrowser || OutputAsByteArray)
            {
                _pdfRptData.PdfStreamOutput = new MemoryStream();
            }

            var stream = _pdfRptData.PdfStreamOutput;

            initPdfWriter(stream);
            initSettings();
            _pdfDocumentSettings.ApplyBeforePdfDocOpenSettings();
            _pdfDocumentSettings.SetEncryption();
            PdfDoc.Open();
            _pdfConformance.SetColorProfile();

            if (_pdfRptData.MainTableEvents != null)
            {
                _pdfRptData.MainTableEvents.DocumentOpened(new EventsArguments {
                    PdfDoc = PdfDoc, PdfWriter = PdfWriter, ColumnCellsSummaryData = ColumnSummaryCellsData, PageSetup = _pdfRptData.DocumentPreferences, PdfFont = _pdfRptData.PdfFont, PdfColumnsAttributes = _pdfRptData.PdfColumnsAttributes
                });
            }

            _pdfDocumentSettings.ApplySettings();
            _pdfDocumentSettings.AddFileAttachments();
            addMainTable();
            _pdfDocumentSettings.ApplySignature(stream);

            if (_pdfRptData.MainTableEvents != null)
            {
                _pdfRptData.MainTableEvents.DocumentClosing(new EventsArguments {
                    PdfDoc = PdfDoc, PdfWriter = PdfWriter, PdfStreamOutput = stream, ColumnCellsSummaryData = ColumnSummaryCellsData, PageSetup = _pdfRptData.DocumentPreferences, PdfFont = _pdfRptData.PdfFont, PdfColumnsAttributes = _pdfRptData.PdfColumnsAttributes
                });
            }

            return(flushFileInBrowser());
        }