PDFsharp редактирование pdf-файла

среда-библиотека PDFsharp, Visual Studio 2012 и C# в качестве языка.

Я пытаюсь:

  1. читать Test1.pdf (ширина = 17 дюймов, высота-11 дюймов) с 1 страницей
  2. добавить текст к нему
  3. сохраните его как другой файл (Test2.формат PDF)

Я могу сделать все следующее. Но когда я открываю файл Test2.pdf Размер страницы уменьшается до ширины = 11 дюймов, высота-11 дюймов. Эти файлы PDF я использую листы спецификации продукта, которые я загрузил из интернета. Я считаю, что это происходит только на определенных типах файлов, и я не уверен, как дифференцировать эти файлы.

код, приведенный ниже:

//File dimentions - Width = 17 inches, Height - 11 inches (Tabloid Format)
PdfDocument pdfDocument = PdfReader.Open(@"D:Test1.pdf", PdfDocumentOpenMode.Modify);

PdfPage page = pdfDocument.Pages[0];
XGraphics gfx = XGraphics.FromPdfPage(page);
XFont font = new XFont("Verdana", 20, XFontStyle.BoldItalic);
gfx.DrawString("Hello, World!", font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), XStringFormats.Center);

//When the file is saved dimentions change to - Width = 11 inches, Height - 11 inches
pdfDocument.Save(@"D:Test2.pdf");

Я загрузил файл здесь Test1.формат PDF

==================================================================================

Как полагает команда PDFsharp код должен быть следует:

PdfDocument PDFDoc = PdfReader.Open(@"D:Test1.pdf", PdfDocumentOpenMode.Import);
PdfDocument PDFNewDoc = new PdfDocument();

for (int Pg = 0; Pg < PDFDoc.Pages.Count; Pg++)
{
    PdfPage pp = PDFNewDoc.AddPage(PDFDoc.Pages[Pg]);

    XGraphics gfx = XGraphics.FromPdfPage(pp);
    XFont font = new XFont("Arial", 10, XFontStyle.Regular);
    gfx.DrawString("Hello, World!", font, XBrushes.Black, new XRect(0, 0, pp.Width, pp.Height), XStringFormats.BottomCenter);
}

PDFNewDoc.Save(@"D:Test2.pdf");

1 ответов


вместо изменения документа создайте новый документ и скопируйте страницы из старого документа в новый документ.

пример кода можно найти в этом посте на форуме PDFsharp:
http://forum.pdfsharp.net/viewtopic.php?p=2637#p2637