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 the Adobe permissive
  redistribution terms preserved in each AFM file's
  ``Comment Copyright …`` header. See
  ``pypdfbox/pdmodel/font/afm/LICENSE.txt`` for full attribution.

  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.

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

Liberation Fonts
  Digitized data copyright (c) 2010 Google Corporation
    with Reserved Font Arimo, Tinos and Cousine.
  Copyright (c) 2012 Red Hat, Inc.
    with Reserved Font Name Liberation.

  pypdfbox bundles the 12 Liberation TTFs (Sans / Serif / Mono 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
  Liberation TTF so glyphs render with real outlines instead of the
  placeholder rectangle.

  Files are redistributed verbatim from the upstream Liberation Fonts
  2.1.5 release (https://github.com/liberationfonts/liberation-fonts)
  under the SIL Open Font License, Version 1.1
  (https://scripts.sil.org/OFL). The full OFL text travels in
  ``pypdfbox/resources/ttf/LICENSE.txt``. The OFL Reserved Font Name
  clause is honoured — pypdfbox redistributes the fonts unchanged under
  their existing "Liberation" names; no derivative font under any other
  name is created.

  Liberation is a trademark of Red Hat, Inc. registered in U.S. Patent
  and Trademark Office and certain other jurisdictions.

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

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 Liberation 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.
