Metadata-Version: 1.1
Name: rinohtype
Version: 0.2.0
Summary: The Python document processor
Home-page: https://github.com/brechtm/rinohtype
Author: Brecht Machiels
Author-email: brecht@mos6581.org
License: UNKNOWN
Description: rinohtype
        =========
        
        .. image:: http://img.shields.io/pypi/v/rinohtype.svg
           :target: https://pypi.python.org/pypi/rinohtype
           :alt: PyPI
        
        .. image:: https://travis-ci.org/brechtm/rinohtype.svg
           :target: https://travis-ci.org/brechtm/rinohtype
           :alt: Build status
        
        .. image:: https://coveralls.io/repos/github/brechtm/rinohtype/badge.svg?branch=master
           :target: https://coveralls.io/github/brechtm/rinohtype?branch=master
           :alt: Test coverage
        
        .. image:: https://www.quantifiedcode.com/api/v1/project/44e411c95df74f5e8cd04eb067a73f4b/badge.svg
           :target: https://www.quantifiedcode.com/app/project/44e411c95df74f5e8cd04eb067a73f4b
           :alt: Code issues
        
        .. image:: https://badges.gitter.im/brechtm/rinohtype.png
           :target: https://gitter.im/brechtm/rinohtype
           :alt: Gitter chat
        
        Rinohtype is a document processor in the style of LaTeX_. It renders structured
        documents to PDF based on a document template and a style sheet. An important
        goal of rinohtype is to be more user-friendly than LaTeX. This includes
        providing clear error messages and making it very easy to adjust the document
        style. See the documentation_ to learn how to customize the style of your
        document.
        
        Rinohtype is currently in a beta phase and thus not recommended for production
        use, but you can use it to explore rinohtype's features and bugs. I'd highly
        appreciate it if you could `create a ticket`_ for any bugs you may encounter.
        However, rinohtype is already very capable. Here is a list of its main
        features:
        
        * a powerful page layout system supporting columns, running headers/footers,
          floatable elements and footnotes
        * support for figures, and (large) tables
        * automatically generated table of contents and index
        * automatic numbering and cross-referencing of section headings, figures and
          tables
        * use one of the included document templates or create your own
        * an intuitive style sheet system inspired by CSS
        * modular design allowing for multiple frontends (such as reStructuredText,
          Markdown, DocBook, ...)
        * handles OpenType, TrueType and Type1 fonts with support for advanced
          typographic features such as kerning, ligatures and small capitals
        * embeds PDF, PNG and JPEG images, preserving transparency and color profiles
        * easy to deploy; pure-Python with few dependencies
        * built on Unicode; ready for non-latin languages
        
        Rinohtype's primary input format is reStructuredText_. The ``rinoh`` command
        line tool renders reStructuredText documents and the included Sphinx_ builder
        obsoletes the need for a large LaTeX installation to produce PDF output. Have
        a look at the `rinohtype documentation`_ for an example of the output.
        
        Please, be warned that some older versions of PDF readers have trouble
        displaying the PDFs generated by rinohtype (`issue 2`_):
        
        - pre-37.0 Firefox's built-in PDF viewer (pdf.js)
        - pre-0.41 poppler_-based applications such as Evince
        
        .. _LaTeX: http://en.wikipedia.org/wiki/LaTeX
        .. _documentation: http://www.mos6581.org/rinohtype/
        .. _create a ticket: https://github.com/brechtm/rinohtype/issues
        .. _reStructuredText: http://docutils.sourceforge.net/rst.html
        .. _Sphinx: http://sphinx-doc.org
        .. _blog: http://www.mos6581.org/archives.html
        .. _rinohtype documentation: http://www.mos6581.org/rinohtype/_downloads/rinohtype.pdf
        .. _issue 2: https://github.com/brechtm/rinohtype/issues/2
        .. _poppler: http://poppler.freedesktop.org
        
        
        Requirements
        ------------
        
        Rinohtype supports Python 3.3+. It *might* be back-ported to Python 2.7 at some
        point in the future if there are a lot of requests for it.
        
        For parsing reStructuredText documents Rinohtype depends on docutils_. For
        parsing PNG images rinohtype depends on PurePNG_. pip_ takes care of these
        requirement when you install rinohtype. If you want to include images other
        than PDF, PNG or JPEG, you also need to install Pillow_.
        
        .. _docutils: http://docutils.sourceforge.net/index.html
        .. _pip: https://pip.pypa.io
        .. _PurePNG: http://purepng.readthedocs.org
        .. _Pillow: http://python-pillow.github.io
        
        
        Getting Started
        ---------------
        
        Installation is trivial::
        
            pip install rinohtype
        
        
        reStructuredText
        ~~~~~~~~~~~~~~~~
        
        The easiest way to get started with rinohtype is to render a reStructuredText
        document (such as `demo.txt`_) using the ``rinoh`` command line tool::
        
           rinoh demo.txt
        
        When the script finishes, you will find ``demo.pdf`` alongside the input file.
        
        By default ``rinoh`` renders the input document using the article template. Run
        ``rinoh --help`` to see how you can tell ``rinoh`` which document template and
        style sheet to use.
        
        .. _demo.txt: http://docutils.sourceforge.net/docs/user/rst/demo.txt
        
        
        Sphinx Builder
        ~~~~~~~~~~~~~~
        
        Rinohtype can be used as a drop-in replacement for the LaTeX builder (the
        ``latex_documents`` configuration variable has to be set). You only need to add
        ``'rinoh.frontend.sphinx'`` to the ``extensions`` list in ``conf.py``. With
        this in place, you can select the `rinoh` builder when building the
        documentation::
        
            sphinx-build -b rinoh . _build/rinoh
        
        
        Contributing
        ------------
        
        See `CONTRIBUTING.rst <CONTRIBUTING.rst>`_.
        
        
        License
        -------
        
        All of rinohtype's source code is licensed under the `Affero GPL 3.0`_, unless
        indicated otherwise in the source file (such as ``hyphenator.py``).
        
        The Affero GPL requires for software that builds on rinohtype to also be
        released as open source under the same license. For building closed-source
        applications, you can obtain a `commercial license`_. The author of rinohtype
        is also available for consultancy projects involving rinohtype.
        
        .. _Affero GPL 3.0: https://www.gnu.org/licenses/agpl-3.0.html
        .. _commercial license: brecht.machiels@opqode.com
        
        
        Release History
        ===============
        
        Upcoming Release
        ~~~~~~~~~~~~~~~~
        
        Release 0.2.0 (2016-08-10)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        Styling:
        
        * generate a style log (show matching styles) to help style sheet development
        * keep_with_next style attribute: prevent splitting two flowables across pages
        * stylesheets can be loaded from files in INI format
        * check the type of attributes passed to styles
        * source code highlighting using Pygments
        * table of contents entries can be styled more freely
        * allow hiding the section numbers of table of contents entries
        * allow for custom chapter titles
        * selectors can now also select based on document part/section
        * various small tweaks to selectors and matchers
        * various fixes relating to style sheets
        
        Templates:
        
        * configurable standard document templates: article and book
        * a proper infrastructure for creating custom document templates
        * support for left/right page templates
        * make the Article template more configurable
        * pages now have background, content and header/footer layers
        * support for generating an index
        * make certain strings configurable (for localization, for example)
        
        Frontends:
        
        * Sphinx: interpret the LaTeX configuration variables if the corresponding
          rinohtype variable is not set
        * Sphinx: roughly match the LaTeX output (document template and style sheet)
        * added a CommonMark frontend based on recommonmark
        * added basic ePUB and DocBook frontends
        * XML frontends: fix whitespace handling
        * frontends now return generators yielding flowables (more flexible)
        
        Command-line Renderer (rinoh):
        
        * allow specifying a template and style sheet
        * automatically install typefaces used in the style sheet from PyPI
        
        Fonts:
        
        * typefaces are discovered/loaded by entry point
        * more complete support for OpenType fonts
        * fix support for the 14 base Type 1 fonts
        
        Images:
        
        * more versatile image sizing: absolute width/height & scaling
        * allow specifying the baseline for inline images
        * several fixes in the JPEG reader
        
        Miscellaneous:
        
        * reorganize the Container class hierarchy
        * fixes in footnote handling
        * drop Python 3.2 support (3.3, 3.4 and 3.5 are supported)
        
        
        Release 0.1.3 (2015-08-04)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        * recover from the slow rendering speed caused by a bugfix in 0.1.2
          (thanks to optimized element matching in the style sheets)
        * other improvements and bugfixes related to style sheets
        
        
        Release 0.1.2 (2015-07-31)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        * much improved Sphinx support (we can now render the Sphinx documentation)
        * more complete support for reStructuredText (docutils) elements
        * various fixes related to footnote placement
        * page break option when starting a new section
        * fixes in handling of document sections and parts
        * improvements to section/figure/table references
        * native support for PNG and JPEG images
          (drops PIL/Pillow requirement, but adds PurePNG 0.1.1 requirement)
        * new 'sphinx' stylesheet used by the Sphinx builder (~ Sphinx LaTeX style)
        * restores Python 3.2 compatibility
        
        
        Release 0.1.1 (2015-04-12)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        First preview release
        
Keywords: rst xml pdf opentype
Platform: UNKNOWN
Classifier: Environment :: Console
Classifier: Environment :: Other Environment
Classifier: Environment :: Web Environment
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Printing
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Text Processing :: Fonts
Classifier: Topic :: Text Processing :: Markup
Classifier: Topic :: Text Processing :: Markup :: XML
