zhaoterryy / mkdocs-pdf-export-plugin

An MkDocs plugin to export content pages as PDF files
MIT License
318 stars 42 forks source link

Error converting doc to PDF: tuple index out of range #16

Closed bretif closed 5 years ago

bretif commented 6 years ago

Hello,

I am using mkdocs with material theme. I follow documentation and I think install everything as needed. python -m weasyprint http://weasyprint.org weasyprint.pdf is working properly

$ mkdocs --version
mkdocs, version 1.0.4 from /home/bretif/dev/mkdocs/skinfra-mkdocs/py3/lib/python3.5/site-packages/mkdocs (Python 3.5)

If I try to build my site but I get this error

Error converting SI/Deployer un nouveau serveur.md to PDF: tuple index out of range

Here is an extract with verbose activated mkdocs-pdf-export-issue15.txt

I get this error on all my documents

Regards Bertrand

shauser commented 5 years ago

Can you please try running weasyprint directly on the exported HTML page? Do you get the same error there as well?

TGoodhew commented 4 years ago

I would like to reopen this as I'm having this same issue. When I run weasyprint on the HTML page I get "IndexError: tuple index out of range".

The error stack is:

Traceback (most recent call last): File "/home/demo/.local/bin/weasyprint", line 11, in sys.exit(main()) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/main.py", line 212, in main getattr(html, 'write' + format)(output, **kwargs) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/init.py", line 211, in write_pdf font_config=font_config).write_pdf( File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/init.py", line 168, in render font_config) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/document.py", line 393, in _render [Page(page_box, enable_hinting) for page_box in page_boxes], File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/document.py", line 393, in [Page(page_box, enable_hinting) for page_box in page_boxes], File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/init.py", line 126, in layout_document pages = list(make_all_pages(context, root_box, html, pages)) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/pages.py", line 803, in make_all_pages page, resume_at = remake_page(i, context, root_box, html) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/pages.py", line 742, in remake_page page_number, page_state) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/pages.py", line 553, in make_page positioned_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 63, in block_level_layout page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 77, in block_level_layout_switch page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 130, in block_box_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 510, in block_container_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 63, in block_level_layout page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 77, in block_level_layout_switch page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 130, in block_box_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 510, in block_container_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 63, in block_level_layout page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 77, in block_level_layout_switch page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 130, in block_box_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 510, in block_container_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 63, in block_level_layout page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 73, in block_level_layout_switch page_is_empty, absolute_boxes, fixed_boxes) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/tables.py", line 432, in table_layout all_groups_layout() File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/tables.py", line 417, in all_groups_layout skip_stack, position_y, max_position_y, page_is_empty)) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/tables.py", line 299, in body_groups_layout group, position_y, max_position_y, page_is_empty, skip_stack) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/tables.py", line 140, in group_layout fixed_boxes=fixed_boxes) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 510, in block_container_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 63, in block_level_layout page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 77, in block_level_layout_switch page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 130, in block_box_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 510, in block_container_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 63, in block_level_layout page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 77, in block_level_layout_switch page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 130, in block_box_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 510, in block_container_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 63, in block_level_layout page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 77, in block_level_layout_switch page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 130, in block_box_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 510, in block_container_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 63, in block_level_layout page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 77, in block_level_layout_switch page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 130, in block_box_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 510, in block_container_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 63, in block_level_layout page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 77, in block_level_layout_switch page_is_empty, absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 130, in block_box_layout absolute_boxes, fixed_boxes, adjoining_margins) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/blocks.py", line 376, in block_container_layout for line, resume_at in lines_iterator: File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/inlines.py", line 53, in iter_line_boxes absolute_boxes, fixed_boxes, first_letter_style) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/inlines.py", line 70, in get_next_linebox skip_stack = skip_first_whitespace(linebox, skip_stack) File "/home/demo/.local/lib/python3.6/site-packages/weasyprint/layout/inlines.py", line 210, in skip_first_whitespace result = skip_first_whitespace(box.children[index], next_skip_stack) IndexError: tuple index out of range

Please let me know if you need anything else or if I should take this up with weasyprint.

TonyG

marlonjan commented 4 years ago

I am having a similar issue here:

Error converting index.md to PDF: tuple index out of range

Versions:

mkdocs==1.0.4 mkdocs-material==4.4.3 mkdocs-minify-plugin==0.2.1 mkdocs-pdf-export-plugin==0.5.5

pellsiepen commented 4 years ago

Same problem here: Error converting community.md to PDF: tuple index out of range Using minidocks/mkdocs-1.0-pdf with versions here: mkdocs_version=1.0.4, mkdocs_material_version=4.3.1