PDFsharp - 更改页面大小和比例内容

时间:2017-11-27 14:48:12

标签: scale pdfsharp

是否可以从例如缩放页面带有PDFsharp的A2到A1? 我可以通过大小,宽度和高度来设置页面的大小。但是如何缩放页面内容呢?

2 个答案:

答案 0 :(得分:0)

您可以使用#!/usr/bin/python import sys pythonparams = sys.stdin.read() # do something 在新的PDF页面上绘制现有的PDF页面。您可以指定目标矩形,因此可以根据需要缩放页面。

使用echo "$param"|./read.py 类访问现有的PDF文件。

有关详细信息,请参阅一页上的两页:
http://www.pdfsharp.net/wiki/TwoPagesOnOne-sample.ashx

答案 1 :(得分:0)

基于Vive的评论以及此处提供的链接,这里是一个使用C#将大小调整为A4的示例:

您必须包括:

    using PdfSharp.Pdf;
    using PdfSharp.Drawing;
    using PdfSharp;

然后:

    // resize this  file from A3 to A4
    string filename = @"C:\temp\A3.pdf";

    // Create the new output document (A4)
    PdfDocument outputDocument = new PdfDocument();
    outputDocument.PageLayout = PdfPageLayout.SinglePage;

    XGraphics gfx;
    XRect box;
    // Open the file to resize
    XPdfForm form = XPdfForm.FromFile(filename);

    // Add a new page to the output document
    PdfPage page = outputDocument.AddPage();

    if (form.PixelWidth > form.PixelHeight)
         page.Orientation = PageOrientation.Landscape;
    else
         page.Orientation = PageOrientation.Portrait;

     double width = page.Width;
     double height = page.Height;

     gfx = XGraphics.FromPdfPage(page);
     box = new XRect(0, 0, width, height);
     gfx.DrawImage(form, box);

     // Save the document...
     string newfilename = @"c:\temp\resized.pdf";
     outputDocument.Save(newfilename);