PDFsharp modifier un fichier pdf

Environnement - PDFsharp Bibliothèque, Visual Studio 2012 et visual C# comme langage.

Je suis en train d':

  1. lire Test1.pdf (Largeur = 17 pouces, la Hauteur est de 11 pouces) avec 1 page
  2. ajouter du texte
  3. l'enregistrer sous un autre fichier (Test2.pdf)

Je suis en mesure d'effectuer toutes les opérations suivantes. Mais quand j'ai ouvert le fichier Test2.pdf la taille de la page réduction de la Largeur = 11 pouces, Hauteur 11 cm.
Ces fichiers PDF que j'utilise sont des Fiches techniques des Produits que j'ai téléchargé à partir d'internet. Je crois que ce qui se passe sur certains types de fichier et je ne suis pas sûr de savoir comment différencier ces fichiers.

Code donné ci-dessous:

//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");

J'ai téléchargé le fichier ici Test1.pdf

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

Comme suggéré par le PDFsharp Équipe le code doit être comme suit:

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");
Essayez de modifier la page de PDFNewDoc.Pages (pas PDFDoc.Pages) - ou de prendre de la page renvoyée par AddPage().
J'ai essayé d'exécuter ce code.Son dit PdfReader n'existe pas dans le contexte actuel?

OriginalL'auteur Yuvi Dagar | 2013-07-15