Git Product home page Git Product logo

pdftilecut's Introduction

Build Static Binaries

pdftilecut lets you sub-divide a PDF page(s) into smaller pages so you can print them on small form printers. This operation is sometimes called posterizing (related to printing large posters on home printers) and tile cropping.

Installation

Latest statically linked binaries are available on releases page.

Alternatively, you can install it:

  • on macOS with homebrew: brew install pdftilecut
  • on ArchLinux from AUR: yay -S pdftilecut

Features

  • Statically compiled Go binaries with no OS dependencies.
  • Multi page PDF support. Each page can be of arbitrary size.
  • Each output page has appropriate PDF bleed and trim boxes set (so you can give it to a printing house and get back correctly trimmed pages).
  • Print marks to assist with accurate trimming and arranging.

Usage

We want to print mars.pdf from the beautiful NASA posters collection, which comes in 20x30 inch size, on A4 papers:

$ pdftilecut -tile-size A4 -in mars.pdf -out mars_a4.pdf

Warning: if printing, ensure your print settings are not re-scaling the output (e.g. Scale to fit option must be off, and scale set to 100%). Always start with a single page and ensure dimensions are correct before printing all tiles.

Below on the left is the original poster, and two of its tiles on the right:

Poster before and after

The header contains the original page number and a tile reference for easier arranging:

Tile heading

Build & Development

You need yasm, cmake, automake, autogen, git, go >= 1.18, coreutils and C compiler.

Build using make and the static binary will be output to bin/pdftilecut.

Credits

The amazing QPDF library is used to parse and write back modified PDF files. QPDF relies on libz and libjpeg. Library sources are not included in this repo and must be downloaded separately.

pdftilecut's People

Contributors

oxplot avatar pysco68 avatar 0xflotus avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.