Development
Introduction
This page has summary information about developing the PyPDF library.
This project started as Python fork of the FPDF PHP library. Later, code for native reading TTF fonts was added. FPDF has not been updated since 2011. See also the TCPDF library.
Until 2015 the code was developed at Google Code. Now the main repository is at Github.
You can also view the old repository, old issues, and old wiki.
After being committed to the master branch, code documentation is automatically uploaded to the Read the Docs site.
Repository structure
[attic]
- folder with old code and useful, but unsupported things[docs]
- documenation folder[examples]
- some examples[fpdf]
- library source[test]
- test suite (see Testing)[tools]
- some utilities[tutorial]
- tutorials (see also Tutorial)LICENSE
- license informationsetup.cfg
- wheel configuration (see wheel)setup.py
- distutils installer (see Python Packaging User Guide)mkdocs.yml
- config for MkDocs
Tips
Code
To get the master branch of the code:
git clone https://github.com/reingart/pyfpdf.git
You can also use issues and pull requests at Github.
Testing
Testing described in the standalone page Testing.
Documentation
Documentation is in the docs
subfolder in
Markdown format. To build it,
the mkdocs
utility is used, which is directed by mkdocs.yml
.
To build documentation, run in the repository root:
mkdocs build
HTML files are generated in a html
subfolder.
To continiously rebuild docs on changing any .md
files use:
mkdocs serve
Then open a browser at http://localhost:8000. (The port and address can be changed.)
Note: mkdocs
internally checks the consistency of internal links. But somehow
code like this:
[Page Name][refe/PageName,md]
leads to nowhere and gives no error. To avoid this use:
grep -r * -e ',md'
And output should link to this page only.
See also
Project Home, Frequently asked questions, Unicode, Python 3, Testing.