Усеченные имена таблиц в диаграммах на Ubuntu - PullRequest
0 голосов
/ 27 сентября 2018

Мои схемы SchemaCrawler (версия 15.01.03) усекают имена таблиц в Ubuntu 18.04 LTS.Похоже, что таблицы нарисованы слишком узкими в целом, потому что нотация «[TABLE]» также выпадает из коробки.То же самое выглядит хорошо при рендеринге на моем Mac.

Есть ли способ это исправить?

--- update ---
Я пытался изменить шрифт в _schemacrawler /Config / schemacrawler.config.properties.По умолчанию установлено значение Helvetica, но в Ubuntu Helvetica нет, поэтому я изменил его на Mukti Narrow ... schemacrawler.graph.graphviz.node.fontname=Mukti Narrow Это приводит к сокращению текста, но не позволяет полностью его исправить.Сравнение с различными шрифтами заставляет меня думать, что вычисление ширины выполняется одинаково независимо от шрифта.

В файле свойств перечислены эти два URL-адреса для настроек graphviz ...
https://www.graphviz.org/doc/info/attrs.html
https://www.graphviz.org/doc/info/command.html
Я пробовал ряд параметров, перечисленных там, но до сих пор не нашел ни одного, который бы изменял расчет ширины шрифта.

Я также установил Helvetica, но получил те же результаты.

Ответы [ 3 ]

0 голосов
/ 28 сентября 2018

Решено ...

Я не установил graphviz.Я думал, что нет, но нет.Итак ...
sudo apt install graphviz исправили это.

Спасибо за ответ Суалех.Я не уверен, как графики генерировались без установленного graphviz.Глядя на код, я вижу место, где он пытается использовать graphviz, а затем пробует Java, если graphviz недоступен.Я не запускал его в отладчике или чем-то еще, но он кажется , как будто он закончился использованием Java.Оглядываясь назад, это могло бы помочь, если бы schemacrawler напечатал предупреждение или предупреждение о том, что graphviz отсутствует.Но на самом деле я рассматриваю это как свою собственную ошибку.... Любил читать твой код, кстати.#thumbsup

0 голосов
/ 08 ноября 2018

На самом деле у меня была та же проблема - имена таблиц были обрезаны (вид переполнения).Я использовал чистую библиотеку Java Graphviz, как указано https://www.schemacrawler.com/diagramming.html.После полной установки Graphviz все имена таблиц помещаются в диаграмму, как и ожидалось.

Решение: не используйте только чистую библиотеку Java Graphviz.

0 голосов
/ 28 сентября 2018

Boz,

Извините, но SchemaCrawler напрямую не управляет выводом графика - это делегировано Graphviz.Вы находитесь на правильном пути, изучая варианты Graphviz.Одна вещь, которую вы можете попробовать, это использовать интеграцию SchemaCrawler с «чистой Java» Graphviz.Скачайте основной дистрибутив и пройдите инструкции о том, как скачать "чистую Java" Graphviz.Пожалуйста, посмотрите, если это имеет значение.

Суале Фатехи, SchemaCrawler

...