private void combineFilesConvertedToPdf_Ordered() { ModalOverlayIsVisible = false; SetFileOrderModalIsVisible = false; UpdateLabelPdf = ""; try { var combined_file_names = new List <string>(); var combine_files = FilesConvertedToPdf_Ordered.ToList(); var ticket_atty = FilesConvertedToPdf.Where(x => !string.IsNullOrEmpty(x.TicketPlusAttorney)).Select(x => x.TicketPlusAttorney).FirstOrDefault(); var new_file_name = PdfUtilities.GenerateFilenameForNewPdf(DestinationFolderConvertedFiles, "CombinedPdf", ticket_atty); if (StaticSystemTests.IsAdobePdfPrinterAvailable()) { // create combined pdf Models.MergePdf.SimpleMergedPdf simpleMergedPdf; if (!string.IsNullOrEmpty(new_file_name)) { simpleMergedPdf = new Models.MergePdf.SimpleMergedPdf(combine_files, "Acrobat", true, new_file_name); } else { simpleMergedPdf = new Models.MergePdf.SimpleMergedPdf(combine_files, "Acrobat", true); } // add new file to FilesConvertedToPdf collection if (System.IO.File.Exists(simpleMergedPdf?.NewCombinedFile)) { if (!FilesConvertedToPdf.Any(x => x.FullName == simpleMergedPdf.NewCombinedFile)) { FilesConvertedToPdf.Add(new CockleFilePdf(simpleMergedPdf.NewCombinedFile, SourceFileTypeEnum.Combined_Pdf)); UpdateLabelPdf = "Created: " + simpleMergedPdf.NewCombinedFile; } } } else // using PdfSharp or iTextSharp ??? { //combined_file_name = new SimpleMergedPdf(SelectedPdfFiles, "PdfSharp").NewCombinedFile; //var combined_file = new SimpleMergedPdf(SelectedPdfFiles, "iTextSharp").NewFileName; } } catch (Exception ex) { Console.Write(ex.Message); UpdateLabelPdf = ex.Message; } }
private async void executeCenterPdf() { ModalOverlayIsVisible = false; CoverLengthSelectorIsVisible = false; UpdateLabelPdf = ""; try { // get new file name var cv_type = CenteredCoverType.NotSet; var custom_filename_text = string.Empty; if (BookletSelected_CenterPdf) { cv_type = CenteredCoverType.Booklet; custom_filename_text = "CenteredOnBookletSizedPage"; } else if (LetterSelected_CenterPdf) { cv_type = CenteredCoverType.Letter; custom_filename_text = "CenteredOnLetterSizedPage"; } var ticket_atty = FilesConvertedToPdf.Where(x => !string.IsNullOrEmpty(x.TicketPlusAttorney)).Select(x => x.TicketPlusAttorney).FirstOrDefault(); var new_file_name = PdfUtilities.GenerateFilenameForNewPdf(DestinationFolderConvertedFiles, custom_filename_text, ticket_atty); // typeset -- upper left if (UpperLeftPosition_CenterPdf) { // this is a simple typeset centering, done with the one step process int?cv_len = null; if (HasCover_CenterPdf) { // two ways to get cover length: 1) check other files in directory, 2) iText method if (FilesConvertedToPdf.Any(x => null != x.CoverLength)) { cv_len = FilesConvertedToPdf.Where(x => null != x.CoverLength).FirstOrDefault().CoverLength; } else { cv_len = PdfCropAndNUp.StaticUtils.GetCoverLength_FirstPageTypesetPdf(SelectedPdfFile.FullName); } } var c = await System.Threading.Tasks.Task.Run(() => new Models.CenterPdfText.CenterTypesetPdf(SelectedPdfFile, cv_len, new_file_name, cv_type)); if (null != c && null != c.NewFileCreated && System.IO.File.Exists(c.NewFileCreated.FullName)) { if (!FilesConvertedToPdf.Any(x => x.FullName == c.NewFileCreated.FullName)) { FilesConvertedToPdf.Add(c.NewFileCreated); } UpdateLabelPdf = "Created: " + System.IO.Path.GetFileNameWithoutExtension(c.NewFileCreated.FullName); } } // already centered else if (CenterPosition_CenterPdf) { // if already centered, no need to separate out cover Models.CenterPdfText.CenterCameraReadyBrief ctr = null; if (BookletSelected_CenterPdf) { ctr = await System.Threading.Tasks.Task.Run(() => new Models.CenterPdfText.CenterCameraReadyBrief(SelectedPdfFile, new_file_name, CenteredCoverType.Booklet)); } else if (LetterSelected_CenterPdf) { ctr = await System.Threading.Tasks.Task.Run(() => new Models.CenterPdfText.CenterCameraReadyBrief(SelectedPdfFile, new_file_name, CenteredCoverType.Letter)); } if (null != ctr && null != ctr.NewFileCreated && System.IO.File.Exists(ctr.NewFileCreated.FullName)) { if (!FilesConvertedToPdf.Any(x => x.FullName == ctr.NewFileCreated.FullName)) { FilesConvertedToPdf.Add(ctr.NewFileCreated); UpdateLabelPdf = "Created: " + System.IO.Path.GetFileNameWithoutExtension(ctr.NewFileCreated.FullName); } } } // need to develop this: method to crop (find text boundaries) and center else if (NotCentered_CenterPdf) { } } catch (Exception ex) { Console.Write(ex.Message); UpdateLabelPdf = ex.Message; } }