private bool ImposeCover(List <CockleFilePdf> imposedFiles, string imposedCover) { var iterCoverFiles = imposedFiles .Where(f => f.FileType == SourceFileTypeEnum.Cover || f.FileType == SourceFileTypeEnum.InsideCv); List <CockleFilePdf> coverFiles = new List <CockleFilePdf>(iterCoverFiles); if ( !PdfUtilities.CombineCoverAndInsideCover(coverFiles, imposedCover) || !PdfUtilities.CropCoverAndInsideCover(imposedCover, CoverLength) || !PdfUtilities.SaddleStitch_LayoutCroppedCoverAndInsideCover(imposedCover, PageCountOfBody, CoverLength)) { return(false); } else { return(true); } }
private bool ImposeBrief(List <CockleFilePdf> imposedFiles, string imposedBody, TypeOfBindEnum bind) { // remove cover, combine body, and add blank pages where needed PdfUtilities.CombineBriefPages_AddingBlanks(imposedFiles, imposedBody, bind); if (// reorder saddlestitch pages !PdfUtilities.SaddleStitch_ReorderPagesForLayout(imposedBody) || // crop pages !PdfUtilities.CropCockleBriefPages(imposedBody) || // layout on B4 pages !PdfUtilities.SaddleStitch_LayoutCroppedBrief(imposedBody)) { return(false); } else { return(true); } }
private void ImposeCover(List <CockleFilePdf> imposedFiles, string imposedCover) { var iterCoverFiles = imposedFiles .Where(f => f.FileType == SourceFileTypeEnum.Cover || f.FileType == SourceFileTypeEnum.InsideCv); List <CockleFilePdf> coverFiles = new List <CockleFilePdf>(iterCoverFiles); if (!PdfUtilities.CombineCoverAndInsideCover(coverFiles, imposedCover)) { } if (!PdfUtilities.CropCoverAndInsideCover(imposedCover, this.CoverLength)) { } if (!PdfUtilities.PerfectBind_LayoutCroppedCoverAndInsideCover(imposedCover, this.CoverLength)) { } }
private void ImposeBrief(List <CockleFilePdf> imposedFiles, string imposedBody, TypeOfBindEnum bind) { // remove cover, combine body, and add blank pages where needed if (!PdfUtilities.CombineBriefPages_AddingBlanks(imposedFiles, imposedBody, bind)) { // problem if returns false } // crop pages if (!PdfUtilities.CropCockleBriefPages(imposedBody)) { // problem if returns false } // layout on B5 pages if (!PdfUtilities.PerfectBind_LayoutCroppedBrief(imposedBody)) { // problem if returns false } }
public NUpCircuitCourtCoverOn11x19(CockleFilePdf _selectedFile) { if (!Utilities.AcrobatJS.AreAcrobatJavascriptsInPlace()) { throw new Exception(); } selectedPdfFile = _selectedFile; // develop new file name var directory = System.IO.Path.GetDirectoryName(selectedPdfFile.FullName); var ticket_atty = selectedPdfFile.TicketPlusAttorney; var _newfilename = PdfUtilities.GenerateFilenameForNewPdf(directory, "nUpOn11x19", ticket_atty); nUpCoverDoc(_newfilename); if (System.IO.File.Exists(_newfilename)) { NewFileCreated = new CockleFilePdf(_newfilename, selectedPdfFile, Utilities.SourceFileTypeEnum.UnrecognizedCentered); } }
private void carryOutImposition(System.IO.MemoryStream orig_ms) { ImposedFilesCreated = new List <CockleFilePdf>(); OriginalPageCount = new iTextSharp.text.pdf.PdfReader(orig_ms.ToArray()).NumberOfPages; // crop and impose switch (BindType) { case TypeOfBindEnum.SaddleStitch: // with SS, assume that if multiple pages + cover == impose everything // cover + 1 page == cover only // no cover == brief only if (OriginalPageCount == 1 && HasCover) // cover only { var cropped_stream = cropTypesetCover(orig_ms); var imposed_stream = imposeTypesetSaddleStitchCover(cropped_stream); NewDocMemStream = imposed_stream; } else if (OriginalPageCount > 1 && HasCover) { // get cover stream var select_cv_stream = extractPages(orig_ms, 1, 1); var cropped_cv_stream = cropTypesetCover(select_cv_stream); var imposed_cv_stream = imposeTypesetSaddleStitchCover(cropped_cv_stream); // check if user inserted blank ??? var imposed_cv_with_blank_icv_stream = addBlankPages(imposed_cv_stream, 1); // account for user option: no blank page after cover or blank page after cover // can only do this with typeset docs: no guarantee text with be identified on camera ready docs var brief_start_page = 2; // check if 2 is blank: user may insert blank here var is_page2_blank = PdfUtilities.IsPdfPageBlank(orig_ms, 2); if (is_page2_blank) { brief_start_page = 3; } // get brief stream var select_br_stream = extractPages(orig_ms, brief_start_page, OriginalPageCount); var cropped_br_stream = cropTypesetBrief(select_br_stream); var numPagesToAdd = 0; var brief_pages = OriginalPageCount - brief_start_page + 1; if ((brief_pages) % 4 != 0) { numPagesToAdd = 4 - ((brief_pages) % 4); } System.IO.MemoryStream imposed_br_stream = null; if (numPagesToAdd != 0) { var added_pages_stream = addBlankPages(cropped_br_stream, numPagesToAdd); var reordered_stream = reorderSaddleStitchBrief(added_pages_stream); imposed_br_stream = imposeTypesetSaddleStitchBrief(reordered_stream); } else { var reordered_stream = reorderSaddleStitchBrief(cropped_br_stream); imposed_br_stream = imposeTypesetSaddleStitchBrief(reordered_stream); } NewDocMemStream = joinTwoStreamsIntoOnePdf(imposed_cv_with_blank_icv_stream, imposed_br_stream); } else if (!HasCover) { var cropped_stream = cropTypesetBrief(orig_ms); // test for % 4 == 0 var numPagesToAdd = 0; if (OriginalPageCount % 4 != 0) { numPagesToAdd = 4 - (OriginalPageCount % 4); } if (numPagesToAdd != 0) { var added_pages_stream = addBlankPages(cropped_stream, numPagesToAdd); var reordered_stream = reorderSaddleStitchBrief(added_pages_stream); var imposed_stream = imposeTypesetSaddleStitchBrief(reordered_stream); NewDocMemStream = imposed_stream; } else { var reordered_stream = reorderSaddleStitchBrief(cropped_stream); var imposed_stream = imposeTypesetSaddleStitchBrief(reordered_stream); NewDocMemStream = imposed_stream; } } break; case TypeOfBindEnum.PerfectBind: if (HasCover) // in this case, is cover { if (OriginalPageCount != 1) { throw new Exception("You are trying to impose a Perfect Bind Cover." + "Perfect Bind Covers can only have 1 page."); } var cropped_stream = cropTypesetCover(orig_ms); var imposed_stream = imposeTypesetPerfectBindCover(cropped_stream); NewDocMemStream = imposed_stream; } else { var cropped_stream = cropTypesetBrief(orig_ms); var imposed_stream = imposeTypesetPerfectBindBrief(cropped_stream); NewDocMemStream = imposed_stream; } break; } }