MyPaint для преподавания онлайн

7 ноября 2023. Комментарии .

Исходные данные #

Наличие графического планшета, необходимость преподавать онлайн. Видео-версия записи.

Популярные решения #

Для преподавания физики и математики онлайн нужна виртуальная доска. Существуют онлайн-сервисы, где можно писать одновременно с учеником, но мне они не по душе.

Я демонстрирую экран своего компьютера, на котором запущена виртуальная доска. Популярные бесплатные open-source решения — openboard и xournal++. Удобные, качественные программы, заточенные под преподавание онлайн. Обе доступны для Windows, Mac и Linux. Живо рекомендую обе, они правда хороши.

Однако по некоторым причинам я выбрал программу MyPaint, разработанную не для преподавания, а для художников, работающих с графическими планшетами.

MyPaint #

Минусы и плюсы #

Существенный минус программы — MyPaint не работает с pdf-файлами. Нельзя открыть pdf документ для аннотации, нельзя сохранить конспект занятия в pdf. Если вдруг мне совершенно необходимо открыть pdf, да при этом многостраничный, я делаю из него длинную картинку этой командой в терминале (нужно установить imagemagick):

convert file.pdf -resize 1600x1600 -sharpen 1x1 file.png && convert -append 07*png result.png

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

Во вторую очередь MyPaint нравится тем, что можно очень гибко настроить «горячие» клавиши — на любую клавишу или комбинацию клавиш можно записать любую доступную команду.

Настройка программы #

В первую очередь откройте настройки (Edit → Edit Preferences) и обратите внимание на вкладку Keys. Там перечислены все команды, которые можно назначить на какую-либо клавишу или комбинацию клавиш.

Некоторые полезные команды (стандартные значения):

Вставлять скриншот под курсором #

Важно: Актуально только для тех, кто ставил MyPaint не из исходников. При установке из исходников скриншот уже вставляется под курсором и автоматически на новый слой.

Постоянно пользуюсь вставкой картинки из буфера обмена, чтобы скопировать на доску условие задачи.

Нужно отредактировать файл, который в линуксе имеет адрес /usr/lib/mypaint/gui/document.py, а на Mac OS может располагаться где-то типа /opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/mypaint/gui/document.py

Нужно изменить строку (в моей версии это 944 строка файла)

x, y, w, h = self.model.get_bbox()

на следующую, сохранив такой же отступ:

x, y = map(int, self.tdw.display_to_model(*self.get_last_event_info(self.tdw)[1:]))

Важно: перед вставкой картинки надо создать новый слой, так как картинка заменит все, что было в текущем слое.

Чтобы создать новый слой, можно открыть менюшку слоев (клавиша l) и нажать там +, либо в настройках найти пункт «New painting layer» и назначить ему удобную комбинацию (у меня это Ctrl+вверх).

Основная кисть #

Иконка с кисточками сверху справа → kaerhon v1/inkster (вторая кисть в группе kaerhon). Уменьшите размер (d или в параметрах кисти, вызываемых клавишей t). Нажмите Ctrl+1, чтобы сохранить кисть на клавишу «1».

Ластик #

Deevad/large hard eraser. Настройте параметры и сохраните: Нажмите Ctrl+2, чтобы сохранить ластик на клавишу «2».

Стрелочка #

Dieterle arrow#1 (пятая кисть в группе Dieterle). Нажмите Ctrl+3, чтобы сохранить ластик на клавишу «3».

Штриховая линия #

Выберите, например, kaerhon v1/inkster (вторая кисть в группе kaerhon). Откройте настройки кисти Ctrl+B → Opacity → Stroke: приведите кривую примерно к такому виду, сдвинув ползунок влево до значения -2:

Пунктирная линия #

Выберите последнюю кисть из группы kaerhon (v1/fill c). Уменьшите размер (d или в параметрах кисти, вызываемых клавишей t); уменьшите sharp по вкусу. Сохраните кисть на требуемую клавишу (Ctrl+9 сохранит это на клавишу 9).

Частички газа #

Это, пожалуй, блажь, но мне нравится. Снова выберите последнюю кисть из группы kaerhon (v1/fill c). Уменьшите размер (d или в параметрах кисти, вызываемых клавишей t); уменьшите sharp по вкусу. Откройте настройки кисти Ctrl+B → Basic → Jitter: установите value в районе 3-4, поэкспериментируйте. Галочка «Live update» позволит видеть изменения сразу же.

Сохраните кисть на требуемую клавишу (Ctrl+8 сохранит это на клавишу 8).

Прочее #