Отображение форматированного текста в окне с использованием Python - PullRequest
1 голос
/ 11 марта 2010

Я создаю программу на wxpython, которая отображает вопросы для пользователя и радиобокс с ответами. Вопросы и ответы должны быть в базе данных и отформатированы с использованием некоторой математики (парантез, корневые квадраты и т. Д.). Не могли бы вы предложить мне, какой виджет я должен использовать для такого текста и какой базы данных? Спасибо.

1 Ответ

0 голосов
/ 13 марта 2010

Для базы данных вы можете использовать любую базу данных на основе sql, например. mysql или sqllite, но если у вас мало данных, почему бы просто не сохранить их в текстовых файлах или в самом модуле python.

Отображение части математических символов довольно сложно, вам понадобится элемент управления, который может отображать MathML (http://en.wikipedia.org/wiki/MathML), я не думаю, что какой-либо виджет wxPython может это сделать, некоторые браузеры отображают MathML, поэтому вы можете встроить браузер wxpython, но это тоже сложно.

Другая альтернатива - использовать mathplotlib для рисования математических символов, например. см http://matplotlib.sourceforge.net/users/mathtext.html#mathtext-tutorial

но IMO самый простой / лучший способ - просто преобразовать mathml xml в файл изображения и отобразить его в элементе управления изображением в вашем приложении. например Вы можете использовать http://sourceforge.net/projects/svgmath/ для преобразования mathml в svg, конвертировать svg в png, используя http://librsvg.sourceforge.net/

или вы также можете попробовать http://sourceforge.net/projects/jeuclid/

Вам придется поэкспериментировать, чтобы увидеть, что для вас проще всего, но я не думаю, что есть какой-то легкий способ.

...