PDF viewer

From Wiki
Revision as of 17:59, 22 September 2022 by Hraban (talk | contribs) (new)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

At the 2021 meeting we were discussing what we as TeX users can do about the unfortunate state of open source PDF viewers, esp. on Linux, and that context group could sponsor development. Unfortunately this discussion had no productive results. So let’s try this again and compile some important points as a basis:


Since PDF files and viewers can have a wide spectrum of features, let’s define what we’re after, grouped by purpose:

  • in general:
    • PDF 2.0 compatible
    • proper color and transparency display (respect color profiles)
    • limited JavaScript support (no modification, no file operations)
    • search
    • update on file change (configurable)
    • keyboard control for as much as possible (but also menus/menubars)
    • sidebar for bookmarks/ToC
    • SyncTeX support
    • accessibility (e.g. alternative text must work)
    • access to file attachments (lower priority)
  • for presentations:
    • presentation mode (full screen, no visible controls, on one monitor/beamer of choice)
    • JS for controlling optional content groups (OCGs, Viewer Layers)
    • inner- and inter-document links must work
    • multimedia support at least via links (suggestion: use “plain Rich Media” approach with OS’ default player)
    • transition effects not necessary (but if the developer has fun including them, go on)
  • for forms:
    • fill in
    • print documents with/without form contents
    • same-ID fields on different pages must be synchronized
    • custom checkmarks/radiobuttons should work & display correctly
    • JS for calculations
  • for annotations (correction workflow; generally just nice to have):
    • similar to Adobe/Foxit Reader
  • for development/debugging:
    • show metadata (incl. XMP), e.g. in a sidebar or dialog
    • show fonts metadata (inclusion etc.)
    • show PDF Boxes (MediaBox, CropBox, TrimBox, BleedBox, ArtBox) as a colored frame, switchable via preferences and menu (bar) item
    • check for PDF/A and PDF/X compliance would be nice (integrate [github.com/veraPDF/veraPDF-apps VeraPDF]?)

no priority:

  • view other file formats like XPS etc.
  • any changes to the document (but would be nice):
    • extract/replace/add pages
    • downsampling of images
    • change metadata
  • export to other format

more ideas:

  • support Lua as a scripting language in PDF, like JavaScript
  • rulers / auxiliary lines to check geometry


  • FOSS license
  • suggestion by Hans: based on MuPDF, even if it’s controlled by the Artifex company, since it’s good code and there’s also MuJS.
  • should at least work on Windows, MacOS (preferably 10.14+), Linux and *BSD; iOS & Android versions would be nice
  • could use our build farm
  • how about (long term) support?


  • Context group will provide some funds.
  • There was a discussion about fundraising at the 2022 meeting. (Will check back.)
  • DANTE only funds nonpersonnel costs and won’t support projects that are not directly TeX-related.