Python library for reading and manipulating Neo Smartpen data
Requirements: just python3
Usage:
import neosmartpen
pages = neosmartpen.parse_pages(path_to_neonotes_file)
pages
will be a list of page dictionaries:- Page dictionaries contain a bunch of parameters and a list of
strokes
:
Field | Description |
---|---|
neo | ‘neo’ (check) |
file_version | File version |
note_type | |
page | Page number |
width | Notebook width |
height | Notebook height |
ctime | Created timestamp (ms) |
mtime | Modified timestamp (ms) |
modified | Flag if data modified |
strokes | Stroke list |
strokes
are dictionaries with properties like color, and list ofdots
:
Field | Description |
---|---|
type | 0=stroke, 1=voice memo |
color | (A,R,G,B) [0-255] |
thickness | [0-2] |
time | Start timestamp (ms) |
dots | List of point data |
extra | ? |
dots
are (x,y,pressure,dt) tuples that define the stroke.
dt
is the time delta between points in ms.
Convert neonotes file to multi-page pdf.
Requirements: python3
and reportlab
Usage:
pen2pdf.py pen_file.zip output.pdf
pen2pdf.py -h
Convert neonotes file to index.html
for use with reveal.js
Usage:
pen2reveal.py neonotes_file index.html
pen2reveal -h