public byte[] MergePdf(byte[] docto1, byte[] docto2) { Stream ms1 = new MemoryStream(docto1); Stream ms2 = new MemoryStream(docto2); PdfDocument final = new PdfDocument(); final.SerialNumber = HIQPDF_SERIAL; PdfDocument archivoAuxiliar1 = PdfDocument.FromStream(ms1); PdfDocument archivoAuxiliar2 = PdfDocument.FromStream(ms2); try { final.AddDocument(archivoAuxiliar1); final.AddDocument(archivoAuxiliar2); byte[] archivo = final.WriteToMemory(); return archivo; } finally { final.Close(); archivoAuxiliar1.Close(); archivoAuxiliar2.Close(); } }
internal void DownloadViewsToSinglePDFFile(List <ViewItem> viewList, string fileName) { String baseUrl = HttpContext.Current.Request.Url.AbsoluteUri.Substring(0, HttpContext.Current.Request.Url.AbsoluteUri.LastIndexOf("/") + 1); // create an empty PDF document PdfDocument document = new PdfDocument(); document.SerialNumber = Utility.GetAPPSettingKey("HiQPDFSerialNumber"); PdfDocument documentCover = new PdfDocument(); documentCover.SerialNumber = Utility.GetAPPSettingKey("HiQPDFSerialNumber"); PdfDocument documentList = new PdfDocument(); documentList.SerialNumber = Utility.GetAPPSettingKey("HiQPDFSerialNumber"); foreach (ViewItem viewItem in viewList) { if (viewItem.display) { PdfPage page; // add a page to document if (viewItem.viewName == "CoverPage" || viewItem.viewName == "ContentPage") { page = documentCover.AddPage(PdfPageSize.A4, new PdfDocumentMargins(0), PdfPageOrientation.Portrait); //page.DisplayHeader = false; //page.DisplayFooter = false; } else { page = documentList.AddPage(PdfPageSize.A4, new PdfDocumentMargins(20), PdfPageOrientation.Portrait); if (viewItem.viewName != "OrderingInformation") { page.DisplayHeader = true; page.DisplayFooter = true; SetHeader(documentList, fileName); SetFooter(documentList, fileName); } else { page.DisplayHeader = false; page.DisplayFooter = false; } } // layout the HTML from URL PdfHtml html = new PdfHtml(baseUrl + viewItem.viewName); page.Layout(html); } } if (documentCover.Pages.Count > 0) { document.AddDocument(documentCover); } document.AddDocument(documentList); DownloadPDFFile(document.WriteToMemory(), fileName + DateTime.Now.ToShortDateString().Replace("/", "_")); }