Drawing with a pen

I use Joplin to take notes for my math class. With tablet support, I would be able to visualize concepts easier. +1

1 Like

Would something like these hacks help for Joplin, where maybe a Joplin plugin could maybe help the workflow on tablets and desktops:

1 Like

It seems that the basic solution is straightforward but a lot of work: have some vector format like svg that embeds in the notes, but have some integrated method of generating the svg. That could possibly be done with a plugin on desktop, but AFAIK those would not be supported on iPad where it would make the most sense to have it. I am not currently aware of any FOSS iPad app for handling the stylus.

+1 Would absolutely love to be able to draw/handwrite notes with a pen on Windows/Android

1 Like

For inspiration, might want to check out this Obsidian plugin for how they use third-party Excalidraw GitHub - zsviczian/obsidian-excalidraw-plugin: A plugin to edit and view Excalidraw drawings in Obsidian

3 Likes

Just to give my idea away: Would it be doable to display files in the OpenRaster Format like images and then you can open those up externally in e. g. Drawpile or Gimp? That wouldn't be a real Pen-Support of course, but maybe it could be a first step?

One more +1 here. Having a latest Samsung device is always a tricky thing to do. You're basically paying over a $1000 to let Samsung and Microsoft to dump your data somewhere. So I would love to switch to Joplin completely, but absence of a pen support is a dealbraker here.

1 Like

+1 from me aswell. A solution that works by

  • Clicking some option in the markdown-toolbar to open up a canvas
  • Drawing / writing on that canvas
  • Saving back to the markdown as an SVG image that can be re-opened when the image shall be edited

as suggested here: Enhancement: Android stylus support · Issue #582 · laurent22/joplin · GitHub
would be absolutely sufficient for my needs. Is anyone on this yet?

2 Likes

+1 yeah it's a much have for my Boox Lumi max. Joplin is marvelous to get my notes shared on all my device, PC and Droïd, but I missed my hand notes from my Boox lumi.

+++1 Yes, that would be the 'the chocolate on the ice cream'. :wink:
The drawings have to become vectors so afterward they can be scaled, modified, ... . After that you can still rasterise them with a lot of different applications, you know them.

But that would be a big job!

I would love to combine my current keyboard-taken-with-lots-of-markdown notes (already in Joplin) with some handwritten stuff.

One idea that seems to work almost immediately is to use Write (from Styluslabs) as external editor. If the note contains the <svg ...></svg> contents, Write will open it perfectly (and even edit it). The Joplin built-in viewer (both PC and Linux) also show the page just fine.

There are two hiccups:

  • When you save the image from the Write application (on desktop), it stores a lot of HTML data that is unwanted. I believe that ideally I should be able to preserve the note title and trim everything outside the <svg></svg> scope.
  • I don't know how the workflow should work on mobile. I know nothing about Android.
1 Like

Stylus Labs is very interesting as still can function standalone, so you (may) could work on the same "sheet" in both apps

I think an integration with xournal++ could work.

A simple integration could look like this (no combination of .md and stylus input):
Joplin could store the .xopp files as notes but they are opened in x++ when selected.

A more sophisticated integration could look like this (with combination of .md and stylus input):

x++ supports custom formats for the drawing area (e.g. 5*10cm) and exports to .svg, which Joplin can display.
Right now if I attach a .xopp file in a Joplin note and click it, it opens in x++, like it should.
Now imagine the .xopp file would be stored in a note-specific folder. Once I am done editing in x++ I could export an .svg to that note-specific folder with the same name like the .xopp.
Joplin could be configured to look for .svg files with the same names of all the attached .xopp files and render them at the position where the .xopp file is positioned.

I created a mockup:

Additional features that would make this solution really convenient would be
(1) to be able to create .xopp files from Joplin, in a desired aspect ratio (e.g. 1:1 for coordinate systems or 5:1 for handwritten formulas...) or with certain characteristics (dotted/ruled background, different coordinate systems...) and
(2) to have an x++ plugin (it comes with a lua based plugin interface) that automatically exports .svg files to the folder where the .xopp file is saved.

7 Likes

I think someone already mentioned Excalidraw.

It already is javascript; maybe it could be embedded? So like now, when you have a referenced PDF in a note, it gets rendered with its own controls; maybe an embedded .svg could just show up within Excalidraw?

That would be really handy.

1 Like

Yes, logseq do this

There is a wave of mistrust for big tech, so tons of "normie" users are looking for alternatives to the apps they depend on for their workflow but they're not technical users. Having a Onenote replacement is big for a lot of people, but they really depend on handwriting and rock solid WYSIWYG support.

3 Likes

I started working on this browser extension a while ago! I can try writing a Joplin extension that incorporates it.

For me, it would be most useful on mobile, but Joplin mobile doesn't support plugins yet.

2 Likes

I've submitted a GSoC proposal for this! I would love to get feedback on how feasible the implementation timeline is and whether better to implement annotation in a way different from what is proposed!

6 Likes

This seems to me like a very realistic solution, with minimal development required to get to basic functionality.

Could a prototype in Joplin be built that simply runs the existing xournal export functionality with xournalpp --create-image=something.svg on any embedded .xopp files? It could compare modified dates between the xopp and svg to see if it needs refreshing.

Then the other functionality (creating a xopp from within joplin) that you describe could be added later.

2 Likes

For me, annotation is not really that important, but I'd love to be able to just draw inside a picture in the note.
For example, clicking a button that lets me edit an image in-place (e.g. using the mentioned excalidraw.)

Did you mean annotating as in 'writing anywhere on the note'? Would that work with Markdown?