如何调整 PDF 页边距:3 种实用方法

PDF 页边距过窄,会导致页面没有足够的空间用于手写笔记、审阅批注或装订。留白过多则会带来相反的问题:内容未能充分利用页面空间,影响阅读体验。

调整 PDF 页边距可以帮助你准备适合打印的报告,在讲义旁边增加批注区域,或者裁剪扫描页面中过宽的边缘。

你可以使用 桌面编辑器 、在线工具或一段简短的 C# 程序完成这些操作。本指南将介绍这三种方法,包括如何在现有页面周围增加留白,以及如何裁剪多余边缘。

快速导航:

开始之前:增加留白与裁剪边缘的区别

与 Word 不同,PDF 在页面边界发生变化时,通常不会重新排列段落。页面中的文字和图形仍然保持固定的位置关系。

下面的方法通过改变现有内容周围的空间来调整页边距:

操作 页面发生的变化 对内容的影响
增加页边距 页面尺寸增大 文字和图片保持原始大小
减小页边距 页面可见区域缩小 靠近边缘的内容可能被裁剪

此外,还需要区分新增留白与 最终页边距 。如果页面原本就有白边,在四周各增加半英寸空间,会使现有页边距增加半英寸,而不是将最终页边距设置为半英寸。

修改前,请先保存原始文件的副本。如果文档包含不同的页面尺寸或布局,需要检查同一组设置是否适用于所有页面。

方法一:使用 Adobe Acrobat 调整 PDF 页边距

Adobe Acrobat 的设置页面框对话框提供页面裁剪和页面尺寸调整功能。以下操作使用 Acrobat Pro。

增加页边距

  1. 打开 PDF,选择 编辑 PDF → 裁剪页面 。
  2. 在页面上绘制一个矩形,然后双击矩形内部,打开 设置页面框 。
  3. 在应用于下选择剪裁框,然后点击设为零 ,清除裁剪选区。
  4. 在更改页面大小下选择自定义,输入更大的页面尺寸。
    增加页边距
  5. 选择居中,设置页面范围,然后点击 确定。
  6. 将结果另存为新文件。

例如,将 21 × 29.7 厘米的页面扩大为 22 × 30.7 厘米,并使内容居中,即可在每一侧增加半厘米的空间。这样既能保持内容大小,又能提供额外的批注区域。

减小页边距

  1. 选择编辑 PDF → 裁剪页面,框选需要保留的区域。
  2. 双击选区。
  3. 选择剪裁框,调整页边距控制下的四个数值。
    减小页边距
  4. 检查预览和页面范围,然后点击确定。
  5. 保存结果。

你也可以使用删除白边进行自动处理。裁剪数值表示需要从各边裁去的宽度,而不是文字与页面边缘之间的最终距离。

裁剪会隐藏被排除的区域,但不会永久删除其中的底层内容。

方法二:使用 Sejda 在线调整 PDF 页边距

Sejda 将这两种操作分为不同的工具:调整 PDF 大小 用于增加留白,剪裁 PDF 用于裁剪边缘。

使用 “调整 PDF 大小” 增加页边距

  1. 打开 Sejda 调整 PDF 大小 工具,上传文件。
  2. 选择添加页边距和边框边距。
  3. 输入顶部、底部、左侧和右侧需要增加的空间。
    在线增加页边距
  4. 选择英寸或厘米作为单位,并指定需要处理的页面。
  5. 点击调整大小,然后下载结果。

预览会显示页面周围新增的空间。如果每一侧都增加 1 厘米,页面的宽度和高度将分别增加 2 厘米。

使用 “剪裁 PDF” 减小页边距

  1. 打开 Sejda 剪裁 PDF 工具,上传文档。
  2. 选择自动裁剪,或者选择预览页面并选择进行手动调整。
  3. 调整选区,或输入每个边缘的精确裁剪量。
    在线减小页边距
  4. 将裁剪设置应用于所需页面。
  5. 点击剪裁 PDF,然后下载文件。

Sejda 支持为多个页面使用相同的裁剪区域,也支持单独设置每一页的裁剪区域。这对于边缘宽度不一致的扫描文档尤其有用。其裁剪工具会隐藏边界之外的内容,而不是将其彻底删除。

方法三:使用 C# 编程调整 PDF 页边距

手动工具适合偶尔修改文件。如果需要对多个文档重复执行相同的调整,或者将处理流程集成到应用程序中,编程方式会更加实用。

以下示例使用 Spire.PDF for .NET 。代码会创建新文档,将每个原始页面绘制到新页面上,在不主动缩放页面内容的情况下,改变内容周围的空间。

这种方式还便于重复执行:你可以复用相同的尺寸参数,无需每次手动选择区域或输入设置。

通过 NuGet 安装程序包:

1
dotnet add package Spire.PDF

使用 C# 增加 PDF 页边距

要增加留白,可以创建一个更大的页面,然后按照新增的左侧和顶部留白,将原始页面绘制到对应的偏移位置。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System;
using System.Drawing;
using System.IO;

string inputPath = @"E:\Documents\input\sample.pdf";
string outputPath = @"E:\Documents\output\increased-margins.pdf";

Directory.CreateDirectory(Path.GetDirectoryName(outputPath)!);

PdfDocument originalPdf = new PdfDocument(inputPath);
PdfDocument newPdf = new PdfDocument();

// 新增留白的大小,单位为磅。
float left = 40;
float right = 40;
float top = 40;
float bottom = 40;

for (int i = 0; i < originalPdf.Pages.Count; i++)
{
PdfPageBase originalPage = originalPdf.Pages[i];

SizeF newSize = new SizeF(
originalPage.Size.Width + left + right,
originalPage.Size.Height + top + bottom
);

PdfPageBase newPage = newPdf.Pages.Add(
newSize, new PdfMargins(0)
);

PdfTemplate template = originalPage.CreateTemplate();
template.Draw(newPage, left, top);
}

newPdf.SaveToFile(outputPath, FileFormat.PDF);

originalPdf.Close();
newPdf.Close();

Console.WriteLine($"已保存:{outputPath}");

此示例在每个页面的四周各增加 40 磅的空间。PDF 使用磅作为度量单位,72 磅等于 2.54 厘米,因此 40 磅约为 1.41 厘米。

新页面的绘图页边距设为零,因为代码已通过 left 和 top 明确指定模板的位置。这样可以统一管理内容的定位逻辑。

页面尺寸在循环内部计算,因此,即使文档中的页面尺寸不同,也能为每一页增加相同宽度的留白。

你还可以为各个方向设置不同的数值。例如,只增加 left,就能在页面左侧为装订或笔记预留更多空间,同时避免在其他边缘增加不必要的留白。

使用 C# 减小 PDF 页边距

要裁剪边缘,可以创建一个更小的页面,并将原始内容向左、向上移动。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System;
using System.Drawing;
using System.IO;

string inputPath = @"E:\Documents\input\sample.pdf";
string outputPath = @"E:\Documents\output\decreased-margins.pdf";

Directory.CreateDirectory(Path.GetDirectoryName(outputPath)!);

PdfDocument originalPdf = new PdfDocument(inputPath);
PdfDocument newPdf = new PdfDocument();

// 从各个边缘裁去的宽度,单位为磅。
float left = 20;
float right = 20;
float top = 20;
float bottom = 20;

for (int i = 0; i < originalPdf.Pages.Count; i++)
{
PdfPageBase originalPage = originalPdf.Pages[i];

float width = originalPage.Size.Width - left - right;
float height = originalPage.Size.Height - top - bottom;

if (width <= 0 || height <= 0)
throw new ArgumentException(
$"第 {i + 1} 页的裁剪值过大。"
);

PdfPageBase newPage = newPdf.Pages.Add(
new SizeF(width, height), new PdfMargins(0)
);

PdfTemplate template = originalPage.CreateTemplate();
template.Draw(newPage, -left, -top);
}

newPdf.SaveToFile(outputPath, FileFormat.PDF);

originalPdf.Close();
newPdf.Close();

Console.WriteLine($"已保存:{outputPath}");

在这里,新页面的宽度和高度都比原始页面减少了 40 磅。负数绘图坐标会移动页面内容,使每个边缘各有 20 磅的区域落在新页面之外。

这段代码按固定数值裁剪,不会自动检测空白区域。 请检查输出结果,确保页码、页眉以及其他靠近边缘的内容仍然可见。

对于布局不一致的文档,建议先使用较小的裁剪值。适合文字密集页面的设置,可能会裁掉其他页面中的通栏表格或图示。

这些示例通过模板重建页面外观。如果文档包含交互式表单、批注、链接或书签,请在采用此方案前,单独验证这些功能是否得到保留。

应该选择哪种方法?

方法 适用场景 主要考虑因素
Adobe Acrobat 通过可视化控件手动调整 需要具备相应编辑工具的使用权限
Sejda 偶尔修改文件,不希望安装软件 在线处理需要上传文档
C# 与 Spire.PDF 重复处理及应用程序集成 需要开发并验证输出结果

如果只处理一个文件,可视化工具便于你在保存前检查结果。如果需要经常执行此类任务,C# 方案可以提供一致的尺寸设置,并且能够进一步扩展为批量处理整个文件夹中的 PDF。

无论选择哪种方法,都应在调整后检查多个页面,尤其是页面布局或尺寸不一致的文档。

如果 PDF 必须保持 A4 或 Letter 尺寸以便打印,需要注意:通过扩大页面来增加留白,会改变纸张尺寸。此时可以考虑在固定尺寸的页面内缩放内容,判断这种方式是否更符合最终输出要求。

常见问题

能否在不改变页面尺寸的情况下调整 PDF 页边距?

可以,但需要采用其他方式,例如在现有页面内缩放或重新定位内容。本指南中的示例通过扩大页面或裁剪页面边界来调整页边距。

增加页边距会让文字变小吗?

使用本文介绍的页面扩大方法不会。它们会在原始内容周围增加空间,而不是缩小内容。

能否调整扫描版 PDF 的页边距?

可以。无需 OCR,你就能在扫描页面周围增加空间,或者裁剪页面边缘。不过,如果裁剪范围过大,扫描图像中的文字也可能被裁掉。

能否将相同的页边距设置应用于 PDF 的所有页面?

可以。Acrobat 和 Sejda 都允许将修改应用于所有页面,而 C# 示例会循环处理整个文档。不过,如果页面尺寸或布局不同,需要仔细预览结果:适用于某一页的裁剪设置,可能会裁掉另一页中的内容。