Beispiel #1
0
def main():
    parser = argparse.ArgumentParser(description='Render a reStructuredText '
                                                 'document to PDF.')
    parser.add_argument('input', type=str, nargs='?',
                       help='the reStructuredText document to render')
    parser.add_argument('--paper', type=str, nargs='?', default='A4',
                       help='the paper size to render to (default: A4)')
    args = parser.parse_args()

    try:
        input_dir, input_filename = os.path.split(args.input)
    except AttributeError:
        parser.print_help()
        return

    try:
        page_size = getattr(paper, args.paper.upper())
    except AttributeError:
        print("Unknown paper size '{}'. Must be one of:".format(args.paper))
        print('   A0, A1, ..., A10, letter, legal, junior_legal, ledger, '
              'tabloid')
        return

    input_root, input_ext = os.path.splitext(input_filename)
    if input_dir:
        os.chdir(input_dir)
    parser = ReStructuredTextReader()
    with open(input_filename) as input_file:
        document_tree = parser.parse(input_file)
    options = ArticleOptions(page_size=page_size)
    document = Article(document_tree, options, backend=pdf)
    document.render(input_root)
Beispiel #2
0
def render_rst(content):
    input_file = StringIO(content)
    parser = ReStructuredTextParser()
    document_tree = parser.parse(input_file)
    document = Article(document_tree, OPTIONS, backend=pdf)
    pdf_output = BytesIO()
    document.render(file=pdf_output)
    pdf_output.seek(0)
    return pdf_output
Beispiel #3
0
def render_rst(content):
    input_file = StringIO(content)
    parser = ReStructuredTextParser()
    document_tree = parser.parse(input_file)
    document = Article(document_tree, OPTIONS, backend=pdf)
    pdf_output = BytesIO()
    document.render(file=pdf_output)
    pdf_output.seek(0)
    return pdf_output
Beispiel #4
0
def main():
    parser = argparse.ArgumentParser(description='Render a reStructuredText '
                                                 'document to PDF.')
    parser.add_argument('input', type=str, nargs='?',
                       help='the reStructuredText document to render')
    parser.add_argument('--paper', type=str, nargs='?', default='A4',
                       help='the paper size to render to (default: A4)')
    args = parser.parse_args()

    try:
        input_dir, input_file = os.path.split(args.input)
    except AttributeError:
        parser.print_help()
        return

    input_base, input_ext = os.path.splitext(input_file)
    if input_dir:
        os.chdir(input_dir)
    parser = ReStructuredTextParser()
    document_tree = parser.parse(input_file)
    options = ArticleOptions(page_size=getattr(paper, args.paper.upper()))
    document = Article(document_tree, options, backend=pdf)
    document.render(input_base)
Beispiel #5
0
from rinoh.paper import A4
from rinoh.backend import pdf
from rinoh.frontend.dita import DITAReader

from rinohlib.templates.article import Article, ArticleOptions

if __name__ == '__main__':
    reader = DITAReader()
    for name in ('sequence', 'hierarchy'):
        with open(name + '.ditamap') as file:
            flowables = reader.parse(file)
        article_options = ArticleOptions(page_size=A4, table_of_contents=True)
        document = Article(flowables, options=article_options, backend=pdf)
        document.render(name)
Beispiel #6
0
from rinoh.paper import A4
from rinoh.backend import pdf
from rinoh.frontend.epub import EPubReader

from rinohlib.templates.article import Article, ArticleOptions

if __name__ == '__main__':
    reader = EPubReader()
    with open('running_lean.epub', 'rb') as file:
        flowables = reader.parse(file)
    article_options = ArticleOptions(page_size=A4, table_of_contents=True)
    document = Article(flowables, options=article_options, backend=pdf)
    document.render('running_lean')
Beispiel #7
0
from rinoh.paper import A4
from rinoh.backend import pdf
from rinoh.frontend.commonmark import CommonMarkReader

from rinohlib.templates.article import Article, ArticleOptions

if __name__ == '__main__':
    reader = CommonMarkReader()
    for name in ('README', ):
        with open(name + '.md', 'rb') as file:
            flowables = reader.parse(file)
        article_options = ArticleOptions(page_size=A4, table_of_contents=True)
        document = Article(flowables, options=article_options, backend=pdf)
        document.render(name)
Beispiel #8
0
from rinohlib.stylesheets.sphinx import stylesheet

HEADER_TEXT = 'About RinohType' + Tab() + Tab() + Variable(SECTION_TITLE(1))
FOOTER_TEXT = (
    InlineImage('company_logo.pdf', scale=0.7, baseline=31.5 * PERCENT) +
    Tab() + Tab() + 'page ' + Variable(PAGE_NUMBER))

OPTIONS = ArticleOptions(page_size=A4, table_of_contents=True)
OPTIONS = ArticleOptions(page_size=A4,
                         columns=2,
                         table_of_contents=True,
                         header_text=HEADER_TEXT,
                         footer_text=FOOTER_TEXT,
                         stylesheet=stylesheet,
                         abstract_location=TITLE,
                         show_date=False,
                         show_author=False)

if __name__ == '__main__':
    reader = DITAReader()
    for name in ('sequence', 'hierarchy'):
        with open(name + '.ditamap') as file:
            flowables = reader.parse(file)
        document = Article(flowables, options=OPTIONS, backend=pdf)
        document.render(name)

    with open('taskbook.ditamap') as file:
        flowables = reader.parse(file)
    document = Book(flowables, backend=pdf)
    document.render('taskbook')
Beispiel #9
0
from rinohlib.templates.article import Article, ArticleOptions, TITLE
from rinohlib.templates.book import Book, BookOptions
from rinohlib.stylesheets.sphinx import stylesheet


HEADER_TEXT = 'About RinohType' + Tab() + Tab() + Variable(SECTION_TITLE(1))
FOOTER_TEXT = (InlineImage('company_logo.pdf',
                           scale=0.7, baseline=31.5*PERCENT)
               + Tab() + Tab() + 'page ' + Variable(PAGE_NUMBER))


OPTIONS = ArticleOptions(page_size=A4, table_of_contents=True)
OPTIONS = ArticleOptions(page_size=A4, columns=2, table_of_contents=True,
                         header_text=HEADER_TEXT, footer_text=FOOTER_TEXT,
                         stylesheet=stylesheet, abstract_location=TITLE,
                         show_date=False, show_author=False)


if __name__ == '__main__':
    reader = DITAReader()
    for name in ('sequence', 'hierarchy'):
        with open(name + '.ditamap') as file:
            flowables = reader.parse(file)
        document = Article(flowables, options=OPTIONS, backend=pdf)
        document.render(name)

    with open('taskbook.ditamap') as file:
        flowables = reader.parse(file)
    document = Book(flowables, backend=pdf)
    document.render('taskbook')