-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Expand drawing tools i highlight mode #68
Comments
I'd love it! |
I think everything gIink does we can already do, that’s more of a question of interface. If you select a sufficient stroke width and some transparency in your color. So we maybe should make some better shortcuts for different presets ? |
Since I have just recently tested this... here's why I've been using gInk instead of your feature:
... and there's one more thing which might be a bit more complicated to look into...
If this would be available, your feature would be much better since it allows to draw directly on the |
Alright, so the ideas here are:
From @MatanZ’s PRs we see there is some interest in toggling how persistent the annotations are, maybe we a toggle in the annotation mode is useful ? |
If I do a real ugly mockup: So we could add a bottom dock similar to gInk (I’ve just copied theirs for this mockup but we would make our own)
Maybe the pen editor could go closer to the pen selection dock etc. |
Pen edit: right click on pen to copy current settings. I was thinking of two columns of small squares under the pen width dial. There is some unused screen there. About performance - I have a tablet. a scribble has thousands of points, and there is no latency in writing/erasing. In my branch I have writing tablet support (separate from X11 presenting tablet as a mouse). I will have predefined pens (selected by number keys) soon. I am not sure of the need for eraser mode, erasing by right button (or stylus button) works well enough for me. Two other tools I plan to add are selection (by touching/marking a rectangle) in order to allow changing color/width and maybe moving, and a filled rectangle tool. |
Doing it vertically is fine too, but the buttons are intentionally big to allow for touch screen usability (say if you run pympress on a tablet or some other surface-like touch screen used without a stylus). |
Here’s an implementation of different presets. Currently looking like this: Maybe the presets should be a horizontal bar, but we need to also ensure pympress still works on narrow screens (see also #154). The eraser works like an eraser on any paint-like program, rather than deleting lines. Presets are saved in the config file, preset 9 is inherited from the current single-color setting if it exists in the config file before this version. |
I think possibly the color and width selector could go along the presets, and the other column can contain a scribble-persistence toggle (eraser on page change, keep for whole document, maybe also save/restore per page) |
I think the layout needs to be more flexible, so as to make the page as large as possible.
|
if you can provide me with a windows binary that includes the new changes I'd be happy to provide some feedback on the usability of the new interface! ... after all I'm very much looking forward to this 😄 |
I can’t guarantee the build will succeed on first try, but I launched it anyway: |
thanks for the try! (however... it seems that the build stopped with "execution time exceeded maximum allowed time") |
I tried to figure out what happens but couldn’t, because I don’t have a lot of time. It seems the build runs fine, the tests run and succeed, and then the whole process hangs for an unknown reason… |
OK, thanks anyways! I'll simply wait for a release that includes the changes! |
I removed all the tests and the zip is suspiciously small but you can give the msi a try @raphaelquast:
|
Thanks for the feedback ! I also think the green and blue could be somewhat lighter.
|
|
no problem! since I really like what you are doing here I am happy to bring in my 2 cents 😄
|
The thing is quadratic bezier splines are easy to do with cairo (there’s a context.curve_to() function that does them) so anything that’s using that instead of re-writing a spline interpolation from scratch is going to be the easiest. I think what I did in the latest version isn’t quite perfect but already a step in the right direction. Now:
Either one of these builds should work for windows: |
So there is a definite increase in time between events when there are a lot of curves to draw, in this latest version. |
This commit MatanZ@bcf956e changes the pen width to points, instead of pixels. It will not apply cleanly to your tree, but it is trivial enough. |
I have a little less time right now, but managed to do some caching of scribbles to reduce lag. I don’t know if other things could be worth adding to this interface ?
|
From @ceermonk in #66
I'm not sure how reasonable this is though, but let's create the feature request and see if people like it.
The text was updated successfully, but these errors were encountered: