Coherent PDF Command Line Tools Version 2.7

New features:

o Split files to max size with -split-max
o Spray splits a file to multiple outputs by alternating pages
o List document and page info in JSON format
o List page labels in JSON format
o List fonts in JSON format
o Identify PDF/A, PDF/X, PDF/E, PDF/VT, PDF/UA in -info
o Identify AcroForm in -info
o Extract font files from a document
o List images on a page with -list-images[-json]
o Chop pages up into sections with -chop
o Build PDF files from JBIG2 streams, including globals
o Reprocess images within PDFs to further compress them
o Extract streams to disk
o Explore PDFs by printing objects
o Shift page boxes with -shift-boxes

Extended features:

o -list-images-used[-json] extends -image-resolution
o Use -raw with -extract-images to get PNMs
o -extract-images can extract JBIG2 images and their globals
o More PNGs – greyscale 1, 2, 4, 8, 16bpp and RGB 16bpp
o Report number of annotations in -page-info
o Specify image based only on file extension
o -squeeze updates old compression methods
o Show page size summary in -info
o Add -no-process-struct-trees to prevent merging of structure trees

Available here: https://www.coherentpdf.com/

Posted in Uncategorized | Comments Off on Coherent PDF Command Line Tools Version 2.7

Coherent PDF Command Line Tools Version 2.6

New features:

o Create new PDF documents or draw on existing ones with -draw
o Embed TrueType fonts with -font-ttf
o Embed the 14 standard fonts if requested
o Add links to parts of text with -add-text as %URL[|]
o Convert JPEGs and PNGs to PDFs with -jpeg and -png
o Export, import, and thereby round-trip annotations via JSON
o Show composition of PDF with -composition[-json]
o Use page labels like and in page specifications

Extended features:

o Allow -utf8 with -split-bookmarks -o @B.pdf to produce UTF8 filenames
o -merge-add-bookmarks now works with unicode filenames
o Better transformation of some annotation types
o -list-annotations[-json] now respects page range
o Merge now merges structure trees (tagged PDF)
o Merge now rewrites clashing name tree entries
o Preserve /GoTo actions in bookmarks when merging
o UTF8 option for JSON output
o -info now shows object stream, /ID data, page mode and layout
o More options for viewer preference control
o More default colours, by using the CSS colour list

Available here: https://www.coherentpdf.com/

Posted in Uncategorized | Comments Off on Coherent PDF Command Line Tools Version 2.6

New: How Computers Make Books

John Whitington has published a new book with Manning on the topic of book production, based in part on his experiences with PDF.

From the publisher: “How Computers Make Books introduces what’s wonderful about computer science by telling the story of how computers have transformed the ancient art of publishing books. Author and publishing software developer John Whitington takes readers on a journey through the computer processes needed to create this very book. Each chapter explores the elegance of modern digital printing, from how a computer knows where to place ink, to reproducing shades of gray, to laying out paragraphs on the page.”

https://www.manning.com/books/how-computers-make-books

Here are some free codes for the eBook. Once they’re gone, they’re gone:
howcom-ED6C
howcom-7761
howcom-A70C

Posted in Uncategorized | Comments Off on New: How Computers Make Books

Coherentpdf.js: a PDF API for Node and the Browser

Coherent Graphics Ltd announced Coherentpdf.js., a PDF API in pure JavaScript for Node.js and the browser, which features all of the functionality of our command line tools and other APIs. It can be used both server side in node, and client side – so PDF files can be processed entirely in the browser.

A single JavaScript file with no dependencies, coherentpdf.js can be used to process PDF files entirely within the browser. You can see a simple demonstration (loads in new window), which allows the user to select a PDF file, processes it entirely in the browser, and allows it to be downloaded.

Coherentpdf.js may be installed with npm. It has an npm page. Coherentpdf.js also has a Github page.

Features:

  • Quality Split and Merge, keeping bookmarks. Extract pages. Split on Bookmarks.
  • Impose files n-up
  • Create new PDFs. Convert text files to PDF
  • Losslessly squeeze files to reduce their size
  • Encrypt and Decrypt (including AES 128 and AES 256 encryption)
  • Read and set info and metadata from a PDF file. Set and read XMP Metadata.
  • Scale, rotate, crop and flip pages. Scale pages to fit.
  • Copy, Remove and Add bookmarks. Build table of contents from bookmarks.
  • Stamp logos, shapes, watermarks, page numbers and multiline text. Transparency.
  • List, copy or remove annotations
  • Add and remove file attachments to document or page. Extract attachments.
  • Thicken hairlines, blacken text, make draft documents
  • Reconstruct malformed files
  • Detect missing fonts, low resolution images. Remove images. Extract images.
  • Add printer’s marks
  • Add, modify, remove, or print page labels.
  • Export PDF file to / Import PDF file from JSON.
  • Manipulate optional content groups
Posted in Uncategorized | Comments Off on Coherentpdf.js: a PDF API for Node and the Browser

Coherent PDF Command Line Tools and C/C++/Python/.NET/Java API Version 2.5

New features and improvements:

New features:

o Can read as well as write PDFs in JSON format with -j
o New operation -typeset typesets a text file as a PDF
o New operation -table-of-contents makes table of contents from bookmarks
o New operations -impose and -impose-xy for document imposition
o New operation -print-font-table gives (charcode, unicode, glyph name) triples
o New -print-dict-entry operation prints values for a given key
o New -replace-dict-entry function to search & replace e.g URLs
o Prepend e.g 2DUP to a page range to make 1,2,3 –> 1,1,2,2,3,3 etc.
o Prepend NOT to a page range to invert it
o Output annotations in JSON form with -list-annotations-json
o Output bookmarks in JSON format with -list-bookmarks-json
o Load bookmarks in JSON format with -add-bookmarks-json
o New option -collate to collate pages when merging
o Text added in existing fonts is now encoding-aware (plus new raw mode)

Extended features:

o Extend -remove-dict-entry to allow search
o Annotation /QuadPoints processed in addition to /Rect when transforming pages
o When adding text or graphics, may choose CYMK or Grey instead of RGB
o The -list-fonts operation now obeys the range
o Can now search for a font by real name with -font
o Basic merging of AcroForms when merging documents
o Add -idir-only-pdfs to restrict -idir to just files ending in .pdf
o Option -debug-force now properly documented as -decrypt-force

And, of course, many bug fixes since the previous release. Available here:

http://coherentpdf.com/

Posted in Uncategorized | Comments Off on Coherent PDF Command Line Tools and C/C++/Python/.NET/Java API Version 2.5

New: Coherent PDF Python API v2.4

A Python interface to our popular PDF command line tools has been released for sale. It provides a single static or shared library containing our whole PDF library and CPDF interface. Pre-built binaries are available for Windows, Linux and MacOS.

Download evaluation copy: http://www.coherentpdf.com/

Documentation: http://www.coherentpdf.com/pycpdflibmanual.pdf

Quick API Docs: https://python-libcpdf.readthedocs.io/en/latest/

Posted in Uncategorized | Comments Off on New: Coherent PDF Python API v2.4

New: Coherent PDF C API v2.4

A C interface to our popular PDF command line tools has been released for sale. It provides a single static or shared library containing our whole PDF library and CPDF interface. Pre-built binaries are available for Windows, Linux and MacOS.

Download evaluation copy: http://www.coherentpdf.com/

Documentation: http://www.coherentpdf.com/cpdflibmanual.pdf

Posted in Uncategorized | Comments Off on New: Coherent PDF C API v2.4

Coherent PDF Command Line Tools 2.4

CPDF Command Line Tools 2.4 is now available.

New features and improvements:

o New operation -extract-images
o New operation -output-json et al. to export PDF files in JSON format
o New operations to manipulate Optional Content Groups
o New operation -stamp-as-xobject to add one PDF as an xobject in another
o Optional Content Groups now preserved when merging / stamping pages
o Listing, coalescing and modifying Optional Content Groups.
o New -labels-progress option to improve page labels interface
o Appearance streams transformed when transforming annotations
o Bookmark destination positions transformed when transforming pages

And, of course, many bug fixes since the previous release. Available here:

http://coherentpdf.com/

Posted in Uncategorized | Comments Off on Coherent PDF Command Line Tools 2.4

New book: Python from the Very Beginning

A new introductory book on Python has been published, patterned after the successful books OCaml from the Very Beginning and Haskell from the Very Beginning. It can be obtained on the book’s own website, in electronic form, or from Amazon in Paperback and Kindle form.

https://www.pythonfromtheverybeginning.com

https://www.amazon.com/Python-Very-Beginning-exercises-answers/dp/0957671156/

In Python from the Very Beginning John Whitington takes a no-prerequisites approach to teaching the basics of a modern general-purpose programming language. Each small, self-contained chapter introduces a new topic, building until the reader can write quite substantial programs. There are plenty of questions and, crucially, worked answers and hints.

Python from the Very Beginning will appeal both to new programmers, and to experienced programmers eager to explore functional languages such as Haskell. It is suitable both for formal use within an undergraduate or graduate curriculum, and for the interested amateur.

Posted in Uncategorized | Comments Off on New book: Python from the Very Beginning

New book: Haskell from the Very Beginning

The book Haskell from the Very Beginning, has now been published. A printed copy may be obtained from Amazon for $29.99:

https://www.amazon.com/dp/095767113X/

In Haskell from the Very Beginning John Whitington takes a no-prerequisites approach to teaching the basics of a modern general-purpose programming language. Each small, self-contained chapter introduces a new topic, building until the reader can write quite substantial programs. There are plenty of questions and, crucially, worked answers and hints.

Haskell from the Very Beginning will appeal both to new programmers, and to experienced programmers eager to explore functional languages such as Haskell. It is suitable both for formal use within an undergraduate or graduate curriculum, and for the interested amateur.

Alternatively, a PDF copy may be obtained for $19.99 from the book’s website:

https://www.haskellfromtheverybeginning.com

Thanks to all those who have helped in recent weeks with useful comments on an earlier draft.

Posted in Uncategorized | Comments Off on New book: Haskell from the Very Beginning