在PowerShell中将PDF从A3缩小到A4

时间:2016-04-09 22:29:04

标签: powershell pdf scale pdfsharp

我正在尝试使用Powershell和PDFsharp将pdf大小从A3(或其他)更改为A4。
在这个例子中,'test.pdf'是A3图纸,'test2.pdf'是输出,与'test.pdf'完全相同,只是按比例缩小以适合A4尺寸纸张。
我已经设法改变了页面大小,但它只是缩减了一半的文档而没有缩小它。

Import-Module "C:\ProgramData\coolOrange\powerJobs\Modules\PdfSharp.dll"

$PdfReader = [PdfSharp.Pdf.IO.PdfReader]            
$PdfDocumentOpenMode = [PdfSharp.Pdf.IO.PdfDocumentOpenMode] 
$AA = $PdfReader::Open("C:\temp2\test.pdf",$PdfDocumentOpenMode::Modify)
$Array = $AA.Pages
foreach($page in $Array)
{
    $page.Height = 595   
    $page.Width = 842
}

$AA.Save("C:\temp2\test2.pdf")
$AA.Close()  

1 个答案:

答案 0 :(得分:0)

创建一个新页面,然后使用DrawImage将现有页面绘制到新页面并根据需要缩小。使用DrawImage指定目标矩形。

见此样本:
http://pdfsharp.net/wiki/TwoPagesOnOne-sample.ashx

示例是C#并显示在一个横向页面上绘制两个肖像页面,因此它并不完全符合您的需要。但它显示了您需要的技术和方法。