График слишком велик для растровых изображений cairo-renderer

Я пытаюсь использовать pyreverse для создания изображений UML для исходного кода проекта. Когда я запускаю команду pyreverse и указываю генерировать изображения png, она запускается, а затем через некоторое время показывает:

dot: graph is too large for cairo-renderer bitmaps. Scaling by 0.271394 to fit
dot: graph is too large for cairo-renderer bitmaps. Scaling by 0.333083 to fit

Затем, если я открою любое изображение, текст станет нечитаемым, потому что он масштабируется. Есть ли способ просто не масштабировать и позволить изображению быть большого размера?

Спасибо


person omega    schedule 24.01.2014    source источник


Ответы (3)


опция

-T svg

работал на меня

person wall    schedule 14.02.2017
comment
Просто подтверждаю, что это сработало для меня (хотя я использовал -Tsvg - без пробела, но, возможно, нет никакой разницы). Я использовал sfdp и вот моя команда: sfdp -Tsvg -Goverlap=prism input.dot -o output.svg -v ???? - person ; 05.05.2017

Максимальный размер растрового изображения Cairo составляет 32767x32767 пикселей, и точка масштабирует ваш график, чтобы он поместился в этой области. В качестве альтернативы вы можете указать pyreverse генерировать PDF-файлы и использовать какой-либо другой инструмент для преобразования в PNG, если вам действительно нужны растровые изображения.

person pdw    schedule 06.07.2014
comment
Когда я меняю -o png на -o pdf, диаграмма выглядит пустой. Есть идеи, как это исправить? - person zom-pro; 12.06.2015
comment
никак не исправить это. cairo не работает и не может генерировать действительно большие изображения. это игрушка - person Leo; 22.06.2016

в 2019 году вы можете просто вывести диаграмму в формате svg, используя:

-о свг

person rekinyz    schedule 18.11.2019
comment
Это все еще работает в 2021 году. - person user1717828; 26.02.2021