Can a blog post be handwritten?
30 points by abnercoimbre
30 points by abnercoimbre
I did some experiments here:
https://alexpdp7.github.io/responsive-handwriting/
I wrote everything in a sheet of paper, took a photo (phone "scan" software can help with some problems described elsewhere in this thread), then did a very tedious slicing of words.
I'm pretty sure a cool UI for doing the slicing quickly would not be too hard to implement. Probably automatic slicing would also be possible.
It sure does work for https://handwritten.danieljanus.pl/. I think the transcripts are OCR'd automagically.
I'm rooting for more experiments like this. In June I published a post with proof-of-work attached (video of the handwritten draft.) That workflow was high in friction, yet also high in trust. I'll likely keep doing it... I just can't expect it to catch on.
I spent quite some time on this earlier this year.
My idea was to handwrite a page and then use a program to split and vectorize the words. This is so that line breaks aren't fixed and the text flows well on both wider desktop screens and smaller mobile screens.
This is not super-hard: I wrote a small Go program that traces the guidelines from left to right to split the lines, and then split every line in words. poedit then works quite well to vectorize the individual words. If you write a bit carefully – leaving blank lines and ample space between words – then you can get some quite nice results with some really basic code.
For screen readers etc. I figured I could do something with regular text and some CSS-fu or aria-fu or whatnot. Don't need OCR – most blog posts are small enough that just typing it in isn't too hard. This shouldn't be too hard but I never got that far.
The problem I ran in to was getting good photographs. Using my Logitech webcam or iPhone results in distorted images due to basic optics: the edges of the page are closer to the lens than the centre. This is kind of obvious in hindsight but it makes the text reflow look all wonky. Also "trace the guidelines from left to right" is much harder because it's a curved line. In my prototyping I had to compensate for that with some GIMP-fu.
The second problem is that I live in Ireland. Specifically, the North-West of Ireland. You need good sunlight to get a good photograph, which is not especially common round these parts.
Both these problems would be solved by buying a flatbed scanner, but I didn't really feel like spending €80 on all of this. So I ended up shelving it for now.
Both these problems would be solved by buying a flatbed scanner, but I didn't really feel like spending €80 on all of this. So I ended up shelving it for now.
What about attaching your phone to something to keep it steady? There's plenty of hardware to do that; there's a cost but it's going to be 10 to 20€ probably (as always, it depends on what you go for).
I'm going to be doing this sort of thing Real Soon Now, after two or three years of concrete intent and sporadic experimentation and serious development that I’m apparently not going to use initially.
I'll write about my design decisions (e.g. paper width and writing sizing and screen sizes) as they become apparent. I have already thought a lot about it all. One thing I will advise now: embrace your medium. For pen and paper, don’t limit yourself to paragraphs of left-aligned text. Break free! Lay the text out interestingly! Show emotion in your letterforms! Diagram! Sketch! Have fun!
Actually, I had been writing software to do it all digitally with stylus, with a compact vector file format containing all the stroke data (reducing it to smoothed Béziers is ubiquitous in non-e–ink-heritage software but a huge mistake) with the corresponding text-and-more all marked up, and more rich possibilities in the plan; but I’ve decided to start analogue for some time and come back to that later, for two reasons:
I’m just not satisfied with the state of digital handwriting rendering. reMarkable’s on-device rendering is the only good thing I’ve come across. Independently of the writing feel, no one has managed to produce an authentic feel beyond e-ink, to my judgement. I need to make a much deeper study, and don’t want to wait that long before starting publishing stuff.
A while ago I decided to copy out the Bible (~750,000 words; I can write tolerably neatly at around 18wpm, and plan to spend 45–60 minutes per day for three years), and eventually decided I wanted it physical this time (I don’t rule out doing it again digitally in later years). My first experiment in notebook/pen/size/style suggests 15L of notebooks. Anyway, once I decided to do this major project physically, doing other stuff digitally felt even less appealing. Especially as I somehow lost my reMarkable in 2023 and I never have replaced it (I went back to paper) or got a PineNote (and now I live in India, whither Pine64 won’t ship).
It’s frustrating that it’s cheaper to get a flatbed scanner that’s attached to a lousy inkjet than it is to get a standalone flatbed scanner.
Now, concerning hybrid image/text stuff. Consider PDF, as seen pleasantly often in scanned documents: it can have the text placed and sized invisibly at the exact locations, so that you can select and copy and get the appropriate text. You can do this in-browser with SVG with the assistance of the textLength attribute. I haven’t experimented with this enough just yet; my vague recollection of one experiment maybe four years ago is that Firefox handled it pleasantly whereas Chromium was merely tolerable, somewhat degraded compared to normal text.
The handwriting is pretty readable and I like the idea of being able to use handwriting. I wonder if you could make the handwriting select-able somehow?
It’s probably a bad idea but I believe in my heart there’s some cool way to abuse fonts to make a font where a page of handwritten text is rendered exactly as-is by giving a different version of each letter for every usage. Would destroy the atlas but maybe that’s ok compared to an image anyways?
I'd imagine you'd need some way to handle overlapping letters. Because ligature glyphs are not individually select-able or are they? I was thinking just have some invisible text behind the image but your approach does sound less hacky than that.
But I would agree that however bad it might be it should be a step up from having just an image.
Invisible text behind is how PDFs with selectable handwritten text does it, probably that is the better way, but I don’t know why yet.
What I was thinking was more like this feature: https://fontforge.org/docs/tutorial/editexample6-5.html than ligatures that combine letters into a bigger one
Hmm, if the OCR library supports positioning then it should be fairly trivial to have little invisible <span> tags absolutely-positioned on the image. And it might even work for screen readers too!
Related but different. For my onyx boox air 3, I create a text box for each sentence, type in the hand-writing box and let it OCR. I do it for one sentence at a time so that I make sure the OCR is good right away which is especially useful to take notes (and even more when it's about others talking). It's also less a chore to do small fixes right away rather than pages later on.
My handwriting is unfortunately too bad for others to read reliably; the onyx boox OCR gets it really well though.
Since I couldn't find a way to extract the OCR results, I wrote one. The boox format is protobuf and I used an automated tool to recover .proto definitions which was very handy, and made a basic tool to extract all texts from text boxes (ordered by page, then by creation time). I put the code at https://gitlab.com/adrien-n/boox-note-dump and host a web version on my home server but it looks like I got a micro power cut at home and it'll be offline for a few days.
This is pretty interesting (I logged in after years of neglect to my account just to say this, and a bit more…). I have a Supernote and despite being an occasional prolific touch typist I have been looking at ways to decrease my “regular” screen use, but even an iPad with a Pencil and a keyboard seems conceptually too much (and yet the Supernote feels too slow sometimes, especially considering how fast I “think” about what I want to write).
It's not my preferred format for text, but I enthusiastically approve!
A few years back, a coworker sent me a JIRA ticket that was basically just a photo of their legal pad, and they apologized for not putting in the effort to tidy it up in Lucidchart. My response was no, no, this is awesome! You had a visual idea, and this was the lowest-friction way to communicate that idea to me. Going analog was the correct choice.
I think the trick for blogging like this is to figure out what kinds of blog posts are better (or easier to produce) when analog: e.g., there's text but with overkill amounts of 2D arrangement.
Wonder if you can read my handwriting, though.
Zero effort. Probably helps that it looks like mine a little :p
Is there a way you can tweak it to work with reader view? Right now the page shows as blank.