Esempio n. 1
0
        public string Convert(List <PDFInfo> listPDFInfo, string outputFolder, string outputFilename)
        {
            List <string> listFileTemp = new List <string>();

            try
            {
                PdfSharp.Pdf.PdfDocument outputPDFDocument = new PdfSharp.Pdf.PdfDocument();
                string fileCombine = outputFolder + @"\" + (!string.IsNullOrWhiteSpace(outputFilename) ? outputFilename.Trim() : Guid.NewGuid().ToString()) + ".pdf";
                listPDFInfo = listPDFInfo.OrderBy(x => x.Order).ToList();

                if (!Directory.Exists(outputFolder))
                {
                    Directory.CreateDirectory(outputFolder);
                }

                ConvertToPDF convertToPDF = new ConvertToPDF();
                foreach (var item in listPDFInfo)
                {
                    string fileTemp = outputFolder + @"\" + Guid.NewGuid().ToString() + Path.GetFileName(item.FilePDF);
                    File.Copy(item.FilePDF, fileTemp);
                    listFileTemp.Add(fileTemp);
                    if (item.Rotate != 0)
                    {
                        convertToPDF.RotatePDF(fileTemp, item.Rotate);
                    }
                    PdfSharp.Pdf.PdfDocument inputPDFDocument = PdfSharp.Pdf.IO.PdfReader.Open(fileTemp, PdfSharp.Pdf.IO.PdfDocumentOpenMode.Import);
                    outputPDFDocument.Version = inputPDFDocument.Version;
                    foreach (PdfSharp.Pdf.PdfPage page in inputPDFDocument.Pages)
                    {
                        outputPDFDocument.AddPage(page);
                    }
                }
                outputPDFDocument.Save(fileCombine);

                return(fileCombine);
            }
            catch (Exception ex)
            {
                throw;
            }
            finally
            {
                if (listFileTemp.Count > 0)
                {
                    listFileTemp.ForEach(item => { if (File.Exists(item))
                                                   {
                                                       File.Delete(item);
                                                   }
                                         });
                }
            }
        }
Esempio n. 2
0
        private List <string> PdfConvertImage(int nBit, string outputFolder, string fileName, string baseFileName, int DPI = 96, string fileExtension = "pdf", bool multiPage = false)
        {
            List <string> filePDFTemp = new List <string>();

            try
            {
                PDFToImage    convert = new PDFToImage();
                List <string> result  = new List <string>();
                if (!multiPage)
                {
                    ConvertToPDF pdf = new ConvertToPDF();
                    filePDFTemp = pdf.SplitPDF(outputFolder, fileName, baseFileName);
                    filePDFTemp.ForEach(item => { result.Add(convert.Convert(item, Path.GetDirectoryName(outputFolder), 10, fileExtension, DPI)); });
                }
                else
                {
                    if (fileExtension.ToLower().Contains("tif"))
                    {
                        if (string.IsNullOrWhiteSpace(baseFileName))
                        {
                            baseFileName = Path.GetFileNameWithoutExtension(fileName);
                        }
                        List <string> ImageTemp = new List <string>();
                        ConvertToPDF  pdf       = new ConvertToPDF();
                        filePDFTemp = pdf.SplitPDF(outputFolder, fileName, baseFileName);
                        filePDFTemp.ForEach(item => { ImageTemp.Add(convert.Convert(item, Path.GetDirectoryName(outputFolder), 10, "jpg", DPI)); });
                        result.Add(NImageToTiff(Path.GetDirectoryName(outputFolder), ImageTemp, baseFileName, nBit));
                    }
                    else
                    {
                        result.Add(convert.Convert(fileName, Path.GetDirectoryName(outputFolder), 10, fileExtension, DPI));
                    }
                }

                return(result);
            }
            finally
            {
                filePDFTemp.ForEach(item => { if (File.Exists(item))
                                              {
                                                  File.Delete(item);
                                              }
                                    });
            }
        }
Esempio n. 3
0
        public void SplitFile()
        {
            ConvertToPDF pdf = new ConvertToPDF();

            pdf.SplitPDF(@"D:\Temp", @"D:\Temp\Enter1243657669_20171005165258883.pdf", "ABCDE");
        }