2014-09-03 2 views
0

Я объединяю ряд документов Word, преобразовывая каждый из них в PDF с помощью PdfSharp.PDF. В каждом документе Word определен пейджинг (например: «Страница 1 из 2» и т. Д.). Но когда я объединять PDF, я хочу перезаписать пейджинг, чтобы указать страницу # на всех страницах, присутствующих в объединенном документе (т. Е. «Страница 1 из 265» и т. Д.).Как определить последовательный номер страницы в объединенном PDF с помощью PdfSharp.PDF

Я нашел несколько вариантов в Интернете, но с использованием других методов PDF, но можно ли это сделать с помощью PdfSharp.PDF?

Heres код -

PdfDocument outputDocument = new PdfDocument(); 
    PdfDocument currPdf = PdfReader.Open((string)fileName, PdfDocumentOpenMode.Import); 
    foreach (PdfPage p in currPdf.Pages) 
    { 
     outputDocument.AddPage(p); 
    } 
    outputDocument.Save(outputName); 

ответ

1

Перед outputDocument.Save вы можете вставить петлю, которая проходит через все страницы и добавляет номера страниц.

Я не рассматривал вопрос, но это настолько тривиально, что я понимаю, что кто-то другой дал нисходящий сигнал.

Смотрите также:
http://www.pdfsharp.net/wiki/ConcatenateDocuments-sample.ashx
http://www.pdfsharp.net/wiki/CombineDocuments-sample.ashx

+0

Спасибо за ответ. Хотя ссылки полезны при добавлении графики для установки номера страницы, то, что я искал, заключается в замене текущей установки номера страницы на новую. то есть найти диапазон номеров страниц, присутствующих на каждой странице (который будет выравниваться по-разному в нижнем колонтитуле в зависимости от того, является ли он другим текстом, определенным в нем на разных страницах) и заменить его на новый диапазон. Я буду копаться в ссылках дальше и посмотреть, можно ли это достичь. –

+0

Так что проблема не такая тривиальная, как я думал. PDFsharp не был предназначен для извлечения текста из страниц PDF - и извлечение текста может быть очень сложным из-за вложенности и преобразования. Простой хак будет рисовать белый прямоугольник над старым номером страницы, а затем рисовать новый номер страницы (очевидно, это будет работать только в том случае, если вы знаете документы и знаете, где находятся номера страниц). Или, возможно, покройте область (например, 2 см) внизу с полупрозрачным прямоугольником и добавьте небольшой непрозрачный прямоугольник с новым номером страницы. Текст, покрытый полупрозрачным прямоугольником, все еще можно прочитать. –