We are pleased to announce the latest release of PTXprint. There were more than 50 minor updates, dozens of bugs fixed, and a handful of new features since the last major release earlier in the year. So you are encouraged to download the latest version.

Significant New features:

  • Selective Import Settings feature (get settings from PDFs, ZIP Archives, or Project + Config)
  • Added code snippets and actions to various tabs in View+Edit
  • Facility to download a sample image set and then Select Images to be used
  • Add support for QR code generation (using \zqrcode)

User Interface improvements:

  • A simple splash screen while loading [ptxprint -q to disable]
  • New hamburger menu to change View Level or Interface Language
  • Ensure DBL buttons are visible even in Basic mode
  • Ensure that color pickers don’t hide behind dialogs
  • Button to edit Module definition files within View/Editor tab
  • Search now changes UI level for widgets not in the present view
  • Changed the manual highlighting color (Ctrl+Click) to Yellow
  • Added option for pagebreak before ALL chapters
  • Added option for ‘Only Odd Tabs’
  • Added further options under Marks and Guides
  • Added link to \h header style on Header+Footer tab
  • Added Create Diff option (removed the hard-to-use button)
  • Improved interaction when chapter number is changed
  • Improved Cover tab UI with buttons for steps 1-3
  • Improved wording of picture copyright credits statement
  • Improved error message when USFM file hits a Syntax Error (#889)
  • Improved TeX log info/warnings/error reporting and suggestions

General enhancements:

  • Add Lao script support as per Thai
  • Add punctuation processing to interlinear
  • Allow monoglot GLO book(s) to use 2-column layout in a diglot
  • Allow stylesheet-based control of credit position along edge
  • Auto-create BASIC FRTlocal.sfm when Front Matter is enabled (and then disable colophon)
  • Ensure marginal verse hyphens also appear with consecutive verses
  • Ensure that localChanges get run on INT book(s)
  • Handle set_positions for B suffix (Left/Right/Both)
  • Implement KeepFigure (allowing re-use of illustrations within the job)
  • Implement \ifKeepAllFigures (global boolean to keep all pics)
  • Implement \zsetref milestone (#894)
  • Implement outline-entry attribute (#597) for jump links in PDF
  • Implement smart gridding option for sidebars (none, smart, normal)
  • Implement ^95 notation for character styles (no need to create styles like \p_95)
  • Improved: Verse ranges to include x:0
  • Make modules more resilient to missing text
  • Make space after GLO entry \k* optional when filtering entries
  • Make sure check for updates doesn’t run too often
  • Save current config per project in user config
  • Speed up PDF cover creation when set to screen (don’t reprocess covers)
  • Support barcode price information
  • When ‘Screen’ PDF output is set, ensure the cover is also output

Technical improvements:

  • Update to TeX Live 2023 (on Windows)
  • Add –diffpages to limit size of output diff file
  • Add -f fontpath to fonts.conf on run
  • Add -V or –pdfversion as a command line option
  • Can now parse config and prjid from .zip archive without -Z
  • Add utility ‘ptxunzippdf’ to recover settings from PDF to specified folder
  • Added category flattening to parsing ptxprint-mods.sty for import
  • Ensure INT books are added into archive
  • Have base and diglot views share the same picinfos (major change)
  • Make \zMarkVerseAgain for use in changes files (help identify scripture for text borders)
  • Make barcode errors print a warning rather than fail silently
  • Support various sidebar gridding options (not yet in the UI)
  • Add core code for bursting inserts (work in progress)

Issues Fixed:

  • Copyright Label Glitch on Pictures (#852, #776)
  • Make PDF binding depend of RTLBookBinding checkbox (MJ #856)
  • Solve issue of footnotes wandering (#862)
  • Allow modification of book end rule (#892)
  • Optionally only let margin verse markers print when not paragraph-initial (#886)
  • Eliminate SegFault due to issue with progress reporting (#888)
  • p^95 markup seems to override char-style stretch (#839)
  • Rationalise x-credit box settings (#896)
  • Have an initial font selected (#901)
  • Inner margin verses problem (#900)
  • Improve column sync behaviour and document \zcolsync* (#851)
  • Adjustment to page num posn in non-Diglot back matter (#904)
  • -f fontdir doesn’t seem to work (#906)
  • PTXprint won’t let me specify a reasonable \b line-spacing value (#909)
  • Truncated first page (#914)


  • Add \marginversemarker{∙\kern 1pt} capability using \zmvm character style
  • Add a prototype script to read and summarize log files
  • Added extra diglot merging modes (without parameterisation of score mode)
  • Allow custom scoring for diglots & added script for comparing diglot merge results
  • Make sure cover periphs run with diglot turned off
  • Make zfiga work on the cover (three letter book code = COV)
  • One command to set up all 6 header positions
  • Permit multi-character footnote callers to get through the SFM parser
  • Protect stylesheet image paths against quotation marks
  • Refine import settings dialog, and wordsmith tooltips
  • Reinstate IB series of illustrations with updated copyright info
  • Repair footnotes on chapter numbers
  • Replace backslash with / in filenames in .sty files
  • Strip final empty elements from ref results in modules
  • Set allNeedEmptyingfalse at diglotsetup: prevent staggered 1st titles
  • Set appropriate defaults for lacking style settings
  • Set module inclusions based on UI settings
  • Solve double-line issue between books
  • Solve issue of unstable sidebar forground (cutout) image positioning
  • Text border must check for new “intro” mark from intro paragraphs
  • Tidy up cover box padding values and ensure cover boxes don’t grow
  • Tweak regex flags for python 3.11 compatability
  • Tweak use of getPicRe to work with Python 3.11

What’s new in version 2.3?

Significant new features:

  • A new tab was added for creating wrap-around covers:
  • The cover settings enable a wide variety of simple covers to be created with or without shading and background pictures. An ISBN bar code is automatically generated if the ‘isbn’ variable is populated.
  • Added feature to import settings from a PDF (which was previously generated by PTXprint)
  • Added other external cross-reference sources (incl. TSK, UBS, BibleWorks lists)
  • Added feature to insert Strong’s numbers in the text based on term renderings
  • Added ability to use Transcelerator questions (Notes+Refs > Study Notes+Questions)
  • Added feature to generate Request Permission letter (for David C Cook pictures)
  • Added ability to lock specific settings using config and/or project override files
  • Added RTL support for booklet pagination on finishing tab


  • No need to define styles for stretch/shrink (use \p^95 notation instead of \p_95)
  • Improved Style Editor reliability, added filter option and improved search
  • Improved interaction on the Layout tab (hover over setting highlights element affected)
  • Check for program updates and indicate if an updated version is available
  • Added extra color to PDF diff output: “red has fled, blue is new”
  • Added auto-save option for the settings file editor
  • Added capability to reset to default values on spin buttons (click on any bold label to reset its value)

General enhancements:

  • Allow inner, outer, & right options for margin notes and marginal verses
  • Added format labels (RGB, CMYK, BW, Spot, etc.) to output filenames
  • Ensure pictures are pulled in from secondary project for non scripture books
  • Added control to adjust gap between caption and figure (TeXpert Hacks)
  • Added conditional marker \zifvarset (useful for auto ISBN display on covers)
  • Added various blank/empty page controls (\zEmptyPage, \zNeed[Odd|Even|Quad]Page)
  • Added TeXpert Hacks tab for highly advanced options (with limited support)
  • Added option to control Rule Thickness (Advanced tab)
  • Removed warning if ‘SIL’ found in copyright statement (as Executive Limitation has been removed)
  • Added all OpenType lookup tags for font features
  • Improved creation of hyphenation file with user options and better logic
  • Improved Indic syllable-based hyphenation rules
  • Add facility for project-specific digit mappings
  • Added Hebrew digit mapping

Technical improvements:

  • Enabled installer to run PTXprint on ARM64 architecture
  • Config password is now hashed (to avoid being readable)
  • Added client/server IPC for Paratext integration
  • Display help for command line parameters on Windows (using -h flag)

What’s new in version 2.2?

Finishing tab:

A new tab related to finalizing a trial publication was added with some powerful features:

  • Improved PDF Output options (including ‘Screen’ for fastest PDF creation)
  • Added feature to include Config settings within PDF (to help recreate a config later)
  • Added option to select a spot color for 2-color printing
  • Added feature to retain N previous versions (*_1, *_2, *_3 etc.) of PDFs
  • Added booklet pagination (with ability to create 4, 8, 16 page signatures)
  • Added feature to Compare PDFs to show any differences

Navigation and Passage Selection:

  • Added Search for settings (to find settings based on keywords)

    Selecting a topic will take you directly to the setting and highlight it for you:
  • Added various keyboard shortcuts visible in tooltips
  • Allow reference chapter ranges like PSA 23 or JHN 2-4
  • Enhanced book list can contain a list of references (like: PSA 23 LUK 15:11-32 GLO)

Borders, pictures and Ornaments:

  • Border improvements (Additional border styles, Styles for ornamental zrules,
    text border spacing logic)
  • Implemented \GraphicOrnament – enabling images to be used as ornaments
  • Follow (symbolic) links in the figures folders
  • Improved handling of pictures in peripheral books
  • Improved spacing for captions

Cross-References and Strong’s index:

  • Added configurable localized Strong’s Index generator (this was actually introduced in 2.0.17 but has not been featured on this What’s New page before)
  • Added option to show/hide Strong’s numbers in list of cross-references
  • Added option to allow side column x-refs to align to the side of the text
  • Handle study column gutter and note rule

Other new features and improvements:

  • Added options for copying configuration to other projects (preserve/merge/overwrite) which allows cluster projects to have the configs UPDATED rather than just replaced
  • Added ability to call Plugins (on Advanced tab) for facing-page polyglots and ornaments
  • Added underline position and thickness adjustments (Misc settings on Advanced tab)
  • Added after chapter/verse space factor controls on Advanced tab
  • Can now handle arbitrary non-standard SFM filenames in a project directory
  • Footers are no longer placed in bottom margin area (but a compatibility option allows footers into the bottom margin area as before if needed)
  • Syllable based line-breaking for various complex scripts: mlym taml telu knda orya sinh
  • Custom scripts for processing text allow .py files to be run directly

The main new feature in version 2.1 is study Bible layouts. Access the HOW TO document at this link.

PTXprint version 2.0 contained many new features since version 1.0.

The FAQ was also updated to reflect some of the changes.


  • Modules can be used to typeset non-contiguous blocks of scripture
  • Improved Hide Empty Verses and added option to show ellipsis
  • Added new feature to include cross-references from external lists in vertical column
  • Added option to allow for unbalanced columns
  • Added option to show the header in a second language/script
  • Added option to include guides (rules and baselines) and/or custom grid behind text
  • Added interlinear text feature
  • Ruby glossing (for CJK languages) is now possible
  • Added option for Thumb Tabs (of book names) on outer edge of page
  • Fancy Borders now has a lot more control over placement and scaling of decorations
  • Added “End-of-Ayah” option for verse decorator on the Tabs+Border tab
  • Added ability to create Reader layout with verse numbers in inner margin/gutter area
  • Paragraphed endnotes are now possible


  • Diglot macros are now more robust to handle structural differences between texts
  • Optimizing column widths for primary and secondary columns is now a single click
  • Added option for texts to switch sides (left/right inner/outer – especially useful for RTL)
  • Improved handling of formatting for independent headers/footers for diglots


  • Added PicList editor with illustration preview to make working with pictures easier
  • Added checklist of questions regarding appropriateness of illustrations
  • Added in-line & cutout positioning options for illustrations (can also scale and mirror)
  • Added picture size options of “page” (within margins) and “full” (cover entire page)
  • Pictures in peripheral books can now be manipulated via the PicList settings
  • Copyright Credits for illustrations are auto-generated (using \zimagecopyrights)
  • Illustrations in diglots can now have multiple captions
  • Added ability for selection and editing parameters of multiple pictures
  • Credit Overlay feature for illustrations added to the Pictures tab (esp. for David C Cook)
  • Added option to Omit Captions for illustrations
  • Added option to crop borders on all images (eliminating spurious unwanted edge lines from pictures)
  • Added Location on Page previews to PicList editor
  • Add filter for Checking Status of illustrations
  • Allow PDFs to be used as illustrations

User Interface:

  • Stylesheet editor to make it easy to control all the USFM styles
  • Localization of UI is possible through Crowdin
  • Localized UI for available for French, Indonesian, Spanish
  • Margin settings have been simplified using graphics to show what exactly is being set
  • Tooltips updated with more accurate context-specific help information
  • Established PTXprint page on the Scripture Software Community site
  • Added advanced option ‘Disable ALL internet use’ – especially for sensitive locations
  • Non-English UI web links (mostly for USFM help) are routed through translate.Google.com


  • Font selection and setup has been re-worked to enable greater flexibility
  • Font feature editor added (enabling specific features to enabled/disabled)
  • Digit mapping now definable at the individual font-level
  • Fonts can now have horizontal expand/shrink defined to enable finer control


  • Added Peripherals page for easy handling of front and back matter
  • Improved table of contents generation, including various options to categorize and sort tables
  • Front matter and colophon contents can auto-generate copyright, license & illustration credits

Other Features:

  • Magic buttons to optimize line spacing or top/bottom margins for minimizing wasted space
  • Magic button to calculate & optimize column widths for diglot publications
  • Added feature to auto-correct USFM text when common syntax errors are found
  • Added lack of compliance warning if ‘SIL’ found in project’s copyright statement
  • Output folder location shifted from “[project]\PrintDraft” to “[project]\local\ptxprint”
  • All generated temporary files are hidden away in sub-folders of the main output folder
  • Added feature to copy saved configs to other Paratext projects (esp. great for cluster projects)
  • Allow location-specific changes using keyword ‘at’ in PrintDraftChanges.txt
  • Added option to print from a DBL bundle with a straightforward download and install process
  • Added PDF Output Format options for PDF standards conformance
  • PDF/X1-A outputs pictures in CMYK and doesn’t compress the pdf (to be X1-A compliant)
  • PTXprint now runs with its own version of XeTeX so it can run without Paratext installed

Compatibility warnings:

  1. Compatibility settings on Advanced page get reset by version 2.0 (so expect layout differences) but the settings can be manually re-enabled if needed.
  2. (For those using RTL scripts prior to 1.7.9): The TeX macros have been changed for RTL for Right and Left Justification such that they are swapped. This means that you no longer have to swap the Right and Left Justifications on markers like \q. If justification is Left, it will be Right-justified. PTXprint *should* update your styles automatically.
  3. The child markers of \f and \x now follow the settings of their parent marker styles. As a result there may be changes in the way footnotes and cross-references appear. It is recommended that you RESET these styles to use the default settings prior to trying to remedy settings manually.