mozman / ezdxf

Python interface to DXF

Home Page:https://ezdxf.mozman.at

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LayoutError: Internal error - not enough space

mgohin opened this issue · comments

commented

Describe the bug
Got this error while trying to convert my DXF to image

To Reproduce
Information and data needed to reproduce the error:

> ezdxf -V

ezdxf 1.1.3 from /opt/homebrew/lib/python3.11/site-packages/ezdxf
Python version: 3.11.6 (main, Oct  2 2023, 13:45:54) [Clang 15.0.0 (clang-1500.0.40.1)]
using C-extensions: yes
> ezdxf draw -o out.png not_enough_space.dxf

Audit process fixed 19 error(s).
Traceback (most recent call last):
  File "/opt/homebrew/bin/ezdxf", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/__main__.py", line 114, in main
    run(args)
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/commands.py", line 397, in run
    frontend.draw_layout(layout, finalize=True)
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/frontend.py", line 231, in draw_layout
    self.draw_entities(
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/frontend.py", line 270, in draw_entities
    _draw_entities(self, self.ctx, entities, filter_func=filter_func)
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/frontend.py", line 806, in _draw_entities
    frontend.draw_entity(entity, properties)
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/frontend.py", line 315, in draw_entity
    self.draw_composite_entity(entity, properties)
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/frontend.py", line 699, in draw_composite_entity
    self.draw_entities(virtual_entities(entity))
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/frontend.py", line 270, in draw_entities
    _draw_entities(self, self.ctx, entities, filter_func=filter_func)
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/frontend.py", line 806, in _draw_entities
    frontend.draw_entity(entity, properties)
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/frontend.py", line 297, in draw_entity
    draw_method(entity, properties)
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/frontend.py", line 377, in draw_mtext_entity
    self.draw_complex_mtext(mtext, properties)
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/frontend.py", line 392, in draw_complex_mtext
    complex_mtext_renderer(self.ctx, self.designer, mtext, properties)
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/addons/drawing/mtext_complex.py", line 186, in complex_mtext_renderer
    layout_engine = cmr.layout_engine(mtext)
                    ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/render/abstract_mtext_renderer.py", line 290, in layout_engine
    append_paragraph()
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/render/abstract_mtext_renderer.py", line 241, in append_paragraph
    layout.append_paragraphs([paragraph])
  File "/opt/homebrew/lib/python3.11/site-packages/ezdxf/tools/text_layout.py", line 1273, in append_paragraphs
    raise LayoutError("Internal error - not enough space!?")
ezdxf.tools.text_layout.LayoutError: Internal error - not enough space!?

File to reproduce
not_enough_space.dxf.zip

Thanks for your help :)

What is the creator application for that DXF file?

The MTEXT entities for the measurement text using columns and set the column properties in a way I haven't seen yet.

commented

I used ODA file converter

What is the original application that created the DWG file?