使用命令行工具将pdf a4分割为a5

发布于 2024-12-11 12:31:17 字数 428 浏览 0 评论 0原文

我正在寻找一个免费的命令行工具,能够将 A4 pdf 文档信息拆分为 A5 pdf 文件。

我已经看过 http://www.pdflabs.com/tools/ pdftk-the-pdf-toolkit/ 但它缺乏文档,所以我一直无法使用它。

我的 A4 文档由多页组成,其中一侧始终为空。 原始 A4 PDF 我想最终得到这样的结果。 在此处输入图像描述

首选命令行工具,但也可以接受 C# 解决方案。

I'm looking for a free command line tool able to Split a A4 pdf document info a A5 pdf file.

I have already looked at http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/ But it lacks documentation, so I haven't been able to use it.

My A4 document consist of multiple pages where one side is always empty.
Original A4 PDF
I want to end up with a result like this.
enter image description here

A commandline tool would be preferred, but a solution in C# would also be accepted.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

子栖 2024-12-18 12:31:17

这只是一个例子,使用itextsharp它并不适合A4到A5中最好的
它只是导入一页A4并将其放入A5..

只需设置边距,您就会得到您想要的输出....

我正在使用 itextsharp

var _readerGlobal = new PdfReader(@"c:\temp\bicicleta.pdf");
MemoryStream _thePdfFile = new MemoryStream();

var _documentGlobal = new Document(PageSize.A5, 50, 50, 50, 50);

var _writerGlobal = PdfWriter.GetInstance(_documentGlobal, _thePdfFile);
_writerGlobal.SetFullCompression();

_documentGlobal.Open();

var _cbGlobal = _writerGlobal.DirectContent;
PdfImportedPage page1 = _writerGlobal.GetImportedPage(_readerGlobal, 1);
_cbGlobal.AddTemplate(page1, 1f, 0, 0, 1f, 0, 0);

_documentGlobal.CloseDocument();

var _pdfBytes = _thePdfFile.ToArray();
File.WriteAllBytes(@"c:\temp\bicicletaA5.pdf", _pdfBytes);

It's just an example, with itextsharp it does not fit the A4 to the best in the A5
it just import a page of A4 and put it in A5..

Just set the margins and you will get the output you want....

I'm using itextsharp

var _readerGlobal = new PdfReader(@"c:\temp\bicicleta.pdf");
MemoryStream _thePdfFile = new MemoryStream();

var _documentGlobal = new Document(PageSize.A5, 50, 50, 50, 50);

var _writerGlobal = PdfWriter.GetInstance(_documentGlobal, _thePdfFile);
_writerGlobal.SetFullCompression();

_documentGlobal.Open();

var _cbGlobal = _writerGlobal.DirectContent;
PdfImportedPage page1 = _writerGlobal.GetImportedPage(_readerGlobal, 1);
_cbGlobal.AddTemplate(page1, 1f, 0, 0, 1f, 0, 0);

_documentGlobal.CloseDocument();

var _pdfBytes = _thePdfFile.ToArray();
File.WriteAllBytes(@"c:\temp\bicicletaA5.pdf", _pdfBytes);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文