pypdfbox
Copyright 2026 pypdfbox contributors

This product is licensed under the Apache License, Version 2.0
(http://www.apache.org/licenses/LICENSE-2.0).

----------------------------------------------------------------------

This product is derived from / inspired by:

  Apache PDFBox
  Copyright 2002-2024 The Apache Software Foundation

  This product includes software developed at
  The Apache Software Foundation (http://www.apache.org/).

  Apache PDFBox is licensed under the Apache License, Version 2.0.
  https://pdfbox.apache.org/

  Pinned upstream reference baseline: Apache PDFBox 3.0.x.
  Per-file porting provenance (the upstream version and Java source path
  for each ported file) is recorded centrally in PROVENANCE.md.

  Modifications:
    - Reimplemented in Python (target: Python 3.10+).
    - Java camelCase API names converted to Python snake_case.
    - Package layout mirrors the original Java packages where reasonable
      (e.g. org.apache.pdfbox.cos -> pypdfbox.cos).
    - Behavior is preserved where technically possible; deviations are
      called out in per-file headers and CHANGES.md.

----------------------------------------------------------------------

Apache PDFBox itself depends on / acknowledges:
  Portions of Apache PDFBox are derived from or include components
  developed under their own permissive licenses. Where pypdfbox ports
  such components, the original upstream attribution is propagated
  in the corresponding source-file headers.

----------------------------------------------------------------------

Adobe Core 14 AFM (Adobe Font Metrics) files
  Copyright (c) 1985, 1987, 1989, 1990, 1993, 1997 Adobe Systems
  Incorporated. All Rights Reserved.

  pypdfbox bundles the 14 Adobe Core AFM files (Times, Helvetica,
  Courier, Symbol, ZapfDingbats families) under
  ``pypdfbox/pdmodel/font/afm/`` to provide standard metrics for the
  14 PDF Standard fonts (PDF 32000-1:2008 §9.6.2.2). The files are
  redistributed verbatim from Apache PDFBox under Adobe's AFM
  redistribution terms (SPDX: APAFML), reproduced in
  ``pypdfbox/pdmodel/font/afm/LICENSE.txt``.

  Times is a trademark of Linotype-Hell AG and/or its subsidiaries.

Includes the Adobe Glyph List
  Copyright 1997, 1998, 2002, 2007, 2010 Adobe Systems Incorporated.

Includes the Zapf Dingbats Glyph List
  Copyright 2002, 2010 Adobe Systems Incorporated.

Adobe predefined CMap resources
  Copyright 1990-2009 Adobe Systems Incorporated. All rights reserved.

  pypdfbox bundles the Adobe predefined CMap resources (CID-keyed
  character collection mappings: Adobe-Japan1, Adobe-GB1, Adobe-CNS1,
  Adobe-Korea1 / Adobe-KR encodings such as UniGB-UCS2-H, GBK-EUC-H,
  90ms-RKSJ-H, …) under ``pypdfbox/fontbox/cmap/resources/`` to decode
  code→CID for Type0 fonts that reference a predefined CMap
  (PDF 32000-1:2008 §9.7.5.2). The files are redistributed verbatim
  from Apache PDFBox; each CMap file carries Adobe's BSD-3-Clause
  redistribution terms + copyright in its own ``%%Copyright:`` header.

----------------------------------------------------------------------

Arimo, Tinos and Cousine Fonts (Chrome OS core fonts)
  Digitized data copyright (c) 2010-2012 Google Corporation.

  pypdfbox bundles 12 TTFs (Arimo / Tinos / Cousine families,
  Regular / Bold / Italic / BoldItalic) under
  ``pypdfbox/resources/ttf/`` as metric-compatible substitution targets
  for the Helvetica / Times-Roman / Courier families of the PDF Standard
  14 (PDF 32000-1:2008 §9.6.2.2). When a PDF references one of those
  canonical PostScript names without embedding a font program (no
  /FontFile, no /FontFile3), the renderer falls back to the matching
  TTF so glyphs render with real outlines instead of the placeholder
  rectangle.

  Files are redistributed unmodified from https://github.com/google/fonts
  (Arimo 1.23, Tinos 1.23, Cousine 1.21, from the ``apache/`` tree)
  under the Apache License, Version 2.0. The license text travels in
  ``pypdfbox/resources/ttf/LICENSE.txt``.

----------------------------------------------------------------------

DejaVu Fonts (DejaVu Sans)
  Bitstream Vera Fonts Copyright (c) 2003 by Bitstream, Inc. All Rights
  Reserved. Bitstream Vera is a trademark of Bitstream, Inc.
  Arev Fonts Copyright (c) 2006 by Tavmjong Bah. All Rights Reserved.
  DejaVu changes are in the public domain.

  pypdfbox bundles ``DejaVuSans.ttf`` under ``pypdfbox/resources/ttf/``
  as the rendering-time substitute for the two symbolic Standard 14
  fonts — Symbol and ZapfDingbats (PDF 32000-1:2008 §9.6.2.2) — whose
  glyph repertoires the Arimo / Tinos / Cousine families do not cover. DejaVu Sans
  provides full coverage of the Zapf Dingbats Unicode block
  (U+2700-U+27BF) and the Greek-letter / mathematical-operator portions
  of the Adobe Symbol encoding via the AGL-name → Unicode codepoint
  fallback in :class:`Standard14Fonts.get_glyph_path`.

  The file is redistributed verbatim from the upstream DejaVu Fonts
  2.37 release (https://dejavu-fonts.github.io/) under the combined
  Bitstream Vera Fonts + Arev Fonts + public-domain DejaVu-changes
  terms. The full license text travels in
  ``pypdfbox/resources/ttf/LICENSE-DejaVu.txt``. The Bitstream Vera /
  Tavmjong Bah Reserved Font Name clauses are honoured — pypdfbox
  redistributes the font unchanged under its existing "DejaVu Sans"
  name (which contains neither "Bitstream"/"Vera" nor
  "Tavmjong Bah"/"Arev"); no derivative font is created.

----------------------------------------------------------------------

Runtime dependencies (declared, not bundled — installed by pip from PyPI):

  Each is redistributed by PyPI under its own license; the licenses are
  reproduced with their respective distributions. pypdfbox does not bundle
  these packages, but cites them here for completeness. All are permissive
  (Apache-2.0 / MIT / BSD-family), per the project's permissive-only policy
  (PRD §4).

  cryptography (Python: cryptography)
  Copyright (c) The Python Cryptographic Authority and individual
  contributors <cryptography-dev@python.org>.
  Dual-licensed under the Apache License, Version 2.0 OR the BSD
  3-Clause License.
  https://github.com/pyca/cryptography

  Used by `pypdfbox/pdmodel/encryption/` for the StandardSecurityHandler
  (RC4 40/128-bit, AES-128/256 CBC; revisions r2-r6) and PKCS#7 signature
  handling (PDSignature /Contents). Pulls in cffi (MIT, © Armin Rigo /
  Maciej Fijalkowski) and pycparser (BSD 3-Clause, © Eli Bendersky)
  transitively.

  Pillow (Python: PIL)
  Copyright (c) 2010 Jeffrey A. Clark and contributors; original PIL
  Copyright (c) 1997-2011 Secret Labs AB and Fredrik Lundh.
  Licensed under the MIT-CMU (HPND) License.
  https://python-pillow.github.io

  Used for ICC color transforms via ImageCms (Little CMS 2-backed) and a
  few image-handling paths.

  fontTools (Python: fontTools)
  Copyright (c) Just van Rossum and contributors.
  Licensed under the MIT License.
  https://github.com/fonttools/fonttools

  Used by `pypdfbox/fontbox/` to parse TrueType / CFF / OpenType / Type1
  font programs.

  skia-python (Python: skia)
  Copyright (c) Kota Yamaguchi and contributors (wraps Google Skia,
  BSD 3-Clause).
  Licensed under the BSD 3-Clause License.
  https://github.com/kyamagu/skia-python

  Used by `pypdfbox/rendering/` for canvas + path drawing, anti-aliasing,
  ICC color spaces, and PNG/JPEG/WebP raster I/O.

  imagecodecs (Python: imagecodecs)
  Copyright (c) 2008-2026 Christoph Gohlke and contributors.
  Licensed under the BSD 3-Clause License.
  https://www.cgohlke.com

  Used by `pypdfbox/filter/` for TIFF, CCITT Group 3/4 fax, and
  JPEG 2000 codec support.

  NumPy (Python: numpy)
  Copyright (c) 2005-2025 NumPy Developers.
  Licensed under the BSD 3-Clause License (with bundled components under
  0BSD, MIT, Zlib, and CC0-1.0 — all permissive).
  https://numpy.org

  Used for pixel math and CMYK conversion in the rendering pipeline.

  jbig2-parser (Python: jbig2_parser)
  Copyright (c) 2024 MichailTal / Nils Koehler.
  Licensed under the MIT License.
  https://github.com/MichailTal/jbig2_parser

  Used by `pypdfbox/filter/jbig2_decode.py` to decode JBIG2 (ITU-T
  T.88) bilevel image streams referenced by /JBIG2Decode in PDF
  image XObjects.
