代码之家  ›  专栏  ›  技术社区  ›  V Falcon

如何使用python将pdf文件的页面合并为一个垂直组合的页面

  •  0
  • V Falcon  · 技术社区  · 2 年前

    我在pypdf和pdfrw中尝试过merge_page方法,但它们将一页堆叠在另一页上,我该如何继续? 下面是我尝试过的代码,与两个模块类似

    from pdfrw import PdfReader, PdfWriter, PageMerge
    
    def merge_pdf_pages(input_file='input.pdf'):
        # Read the input PDF file
        reader = PdfReader(input_file)
        writer = PdfWriter()
        pages = PageMerge()
        for page in reader.pages:
            pages.add(page)
        writer.addpage(pages.render())
        with open("output.pdf",'wb') as file:
            writer.write(file)
    # Example usage
    merge_pdf_pages('input.pdf')
    
    0 回复  |  直到 2 年前
        1
  •  1
  •   K J    2 年前

    将多个PDF混合到一张纸中通常由受过培训的图形艺术家完成,他们了解与计算机化PDF设计相关的编程问题。

    合成器或Imposers会使用多种简单的方法对“Imposition”或“Composition”进行微调,但实际上它只是以不同的比例(或相同的比例)重新打印

    在这里,我可以在浏览器PDF阅读器中以图形方式调整最基本的“N-UP”方法,但使用单个编程命令行的复杂性将相似。

    最复杂的可能是40页的十版,其中矩阵计算将用于LaTeX中使用折叠、狭缝和出血盒的“小册子”生产

    enter image description here

    当为桌面“出版物”设计程序时,数学可能很复杂,但只是重复使用样板。 https://tex.stackexchange.com/a/490408

    既然你在这个问题上几乎没有给出线索?我不得不从“一个在另一个之上”推测,这意味着一幅肖像画上有两幅风景画 enter image description here

    程序和人类作曲家之间的区别可以在这里看到。编程结果在从左到右的位置。但是,人工查看器将通过R2L设置设置这四张图纸。

    enter image description here

    从评论中可以看出,希望能够模仿,输出与连续视图相同的内容。
    在左边,我们看到的页面在查看器中通常间隔开,在中间视图中,PDF查看器可以使用“连续页面模式”(无缝间隔,但仍有4个可控页面),在右边,垂直施加无限页面的输出。

    enter image description here

    在这种情况下,使用的命令是

    cpdf -impose-xy "1 0" fourL.pdf -o Output.pdf
    

    其中cpdf是一个用于二进制命令行应用程序的跨平台应用程序,或者我相信它有一个JavaScript API/SDK接口和一个用于Python的接口( pycpdflib )。看见 https://github.com/coherentgraphics

    具体来说(链接可能已经过时,但目前) https://www.coherentpdf.com/cpdfmanual/cpdfmanualch9.html#x13-860009.2

    推荐文章