Skip to main content
Skip table of contents

Mako 6.2.2 Release Notes

New features


MAKOSUP-10771 Mako IDistiller does not use internal fonts when using external fonts

This is a new feature to enable IDistiller to use both in-memory and disk-based resources when setting a %font% or %resource% device with setFontDevice()/setResourceDevice().

Previously IDistiller behaved in the same way as its predecessor, Jaws PDF Library. When setting a disk-based font/resource device, only the files present on disk are used, overriding the internal %font% or %resource% devices, which is ignored.

This change means that Mako first looks for a font or resource on disk, then fall back to the internal font or resource devices if it is not found. This provides more flexibility as users may only need to add/modify specific resources. Before this change, this would have required all of the resource files to be on disk.


MAKOSUP-10772 Work around a bad reference to a non-existent annotation in a customer file

The exhibit is a poorly-constructed PDF containing an annotation array entry that is a reference to an object whose xref offset is zeroed out. Mako’s PDF input class rejects the file because of the bad reference. However, as Acrobat can open the file, the customer would like the job to process.

The fix is a modest modification to first throw a more appropriate exception, then in the annotation code catch that exception and (like Acrobat) treat the reference as though it were a null. The job now processes normally.


MAKO Version 6.2.2 is built for the following platforms:

  • iOS
  • macOS
  • Linux (for Debian-based distributions; for example Ubuntu, Mint)
  • Linux (Centos)
  • Linux (for Debian Buster) (ARM32 for Raspberry Pi)
  • Linux (for Debian Stretch)
  • Linux (for MUSL distributions; for example, Alpine Linux)
  • Linux (for Ubuntu 20.04 LTS)
  • Windows (static and dynamic libs, VS 2019 (V142), x86 and x64)
  • Windows (static and dynamic libs, VS 2017 (V141), x64)
  • Windows UWP (Store apps, Windows 10 IoT)

The Android build has been dropped from this release pending a tooling change. Please contact Mako support if you need a Mako release for Android later than Mako 6.1.0.

Mako supports the following programming languages:

  • C++ (Mako is written in C++)
  • C# (.Net Framework and .Net Core)
  • Java (built with OpenJDK11)
  • Python (v3.8)

The alternatives to C++ are built using SWIG ( which provides a translation to the native libraries, found in these distribution folders:

  • Linux_SWIG_(C#-Java-Python)
  • Linux_Ubuntu_SWIG_(C#-Java-Python)
  • macOS_SWIG_(C#-Java-Python)
  • Windows_SWIG_(C#-Java-Python)
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.