2013-07-15 4 views
13

環境 - PDFsharpライブラリ、Visual Studio 2012、およびC#を言語として使用します。PDFharp pdfファイル

私がしようとしています: - 1ページと

  • (別のファイルとして保存、
  • にいくつかのテキストを追加

    1. はTest1.pdf(11インチ幅= 17インチ、高さ)を読み出し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

    PDFNewDoc.Pages(ないPDFDoc.Pages)からページを変更してみます - またはのaddPage(から返されるページを取ります)。 –

    +0

    私はこのコードを実行しようとしました.ItsはPdfReaderが現在のコンテキストに存在しないと言いますか? –

    答えて

    8

    ドキュメントを変更する代わりに、新しいドキュメントを作成し、古いドキュメントのドキュメントを新しいドキュメントにコピーしてください。コードはPDFsharpフォーラムで、この記事で見つけることができ

    サンプル:
    http://forum.pdfsharp.net/viewtopic.php?p=2637#p2637

    +0

    PDFsharpチーム、返信いただきありがとうございます。私はこの方法で自分のコードを再構築しようとし、これに戻ります。 –

    +0

    PDFsharpチーム、私は自分のコードを再構成しました。私はまだいくつかの問題に直面しています。私が上に投稿した再構成されたコードを見てください。 –

    +0

    すべての指示に従った後、私は自分の問題を解決することができました。 PDFsharpチームに感謝します。 –