Package: wnpp
Severity: wishlist
Owner: Emfox Zhou <[email protected]>

* Package name    : zotero-pdfjs-data
  Version         : 0.0~git20260914
  Upstream Author : Mozilla Foundation, PDFium Authors, Red Hat, Inc.,
                    Google Corporation, Adobe Systems Incorporated
* URL             : https://github.com/zotero/pdf.js
* License         : BSD-3-clause (Adobe bcmaps), Expat (PDFium Foxit fonts),
                    GPL-2+ with Liberation exception (Liberation fonts)
  Programming Lang: data files
  Description     : CMap and standard font data files for the Zotero pdf.js fork

This package ships the two data directories that the Zotero fork of pdf.js
provides for its PDF renderer:

 * bcmaps -- precompiled CMap files for CJK and other multi-byte encodings
 * standard_fonts -- the 14 standard PDF fonts (Foxit .pfb, Liberation .ttf)

Both zotero-reader and zotero-document-worker carry a copy of the same pdf.js
fork and need exactly these files at runtime.  The document-worker does not
even ship them: it asks the host application for them, and the host resolves
the "cmaps/" and "standard_fonts/" prefixes to the reader's asset directory.
Having them once, as an arch:all package, keeps a single copy of the data in
the archive and lets the two components be built and uploaded independently.

The files are taken verbatim from the Zotero fork of pdf.js at commit
3ec7e00205d95c512a8d74fefee5228611416d46.

The standard fonts cannot be replaced by a dependency on fonts-liberation:
these are Liberation 1.07.4 (681 glyphs) while the archive ships 2.1.5
(2620 glyphs), and pdf.js bakes the glyph order of these files into
src/core/liberationsans_widths.js, so a different font file shifts every
glyph index and every glyph width comes out wrong.  The 10 Foxit .pfb files
are not in the archive at all.

Part of the Zotero packaging effort (ITP #1125955).  I intend to maintain
this package within the Debian JavaScript team.

Thanks,
Emfox

Reply via email to