LCG — Python library for content abstraction and multi-format document processing
Project description
LCG Framework
LCG is a Python framework for content abstraction and generic document processing. Documents are constructed as a hierarchy of Python objects. LCG defines standard content elements (paragraphs, sections, lists, formatted text, etc.) and advanced constructs (multimedia, mathematics, interactive widgets), and supports extensibility through third-party content elements. Content can be exported to multiple formats (HTML, PDF, Braille, IMS, EPUB, etc.) and imported from various source formats (text markup, internal serialization, etc.).
LCG is primarily intended for software developers who need to programmatically build structured documents or import them from different sources and export them to multiple formats. Documents can contain generic content elements (defined by LCG) or custom elements (defined by the developer). LCG can also be used directly by end-users to process documents written in a simple, human-readable source format into various target formats (such as HTML or PDF).
Key Features
- Separation of content and presentation: Keeps structure and formatting independent.
- Multimedia and interactive content: Supports rich, dynamic elements.
- Accessibility: Designed for users of assistive technologies.
- Extensibility: Easily define new content elements or customize output for existing elements.
- Standards compliance: Adheres to relevant standards, notably W3C specs.
- Internationalization: Supports multiple language variants in one document and mixed-language content.
License
LCG is Free Software, distributed under the terms of the GNU General Public
License v2 (GPLv2). See the COPYING file for details.
History
LCG stands for Learning Content Generator. It was initially developed to generate online e-learning material for the Eurochance project.
Changelog
For a history of changes in each version, see the changelog.
Installation
LCG is a pure Python library running on Python 2.7 or Python 3.5 or later and
may be installed by pip install lcg-framework[all].
When using PDF output, you additionally need the following system packages:
- Fontconfig (Debian/Ubuntu package
fontconfig) - Freefont (Debian/Ubuntu package
fonts-freefont-ttforttf-freefont)
Usage
LCG comes with a command line tool which can be run directly using python -m lcg.make to build and export documents into different output formats. Run
with --help to find out how to use it.
LCG is also used as a content abstraction layer in the Wiking web application development framework and for document construction and as a print backend in Pytis information systems development framework.
Documentation is included in the package. To generate the HTML version, run
make doc from the package root directory.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lcg_framework-0.7.0.tar.gz.
File metadata
- Download URL: lcg_framework-0.7.0.tar.gz
- Upload date:
- Size: 21.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.31.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
404cabb1fb56aec9b5ce6977a53eab578f1dda6a014f079c5e162fc36d3effb3
|
|
| MD5 |
6390916d7c57d4c85d5683235d8d2f4a
|
|
| BLAKE2b-256 |
7fb23101feecde9d7c52fa8befe644b0b225d5ba4702d154dfee9763b35eba48
|
File details
Details for the file lcg_framework-0.7.0-py2.py3-none-any.whl.
File metadata
- Download URL: lcg_framework-0.7.0-py2.py3-none-any.whl
- Upload date:
- Size: 10.9 MB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.31.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
87829838315920213e1454ebb5c6e48c1d2c130cee0506c42bf3c6cd13c59b80
|
|
| MD5 |
4e35cce5a8a97fde11c78938fbd78428
|
|
| BLAKE2b-256 |
1bcf2e1754dc535dc03d85f58b8b0ef9e332f717b4bbfb5fcd816fa538e407d2
|