Giter Site home page Giter Site logo

Comments (8)

xpierrohk avatar xpierrohk commented on June 22, 2024

Yeah, it is rotated and scaled to look "full screen" on my own large screen. I'll make options for both so you can have a pixel-for-pixel portrait view.

Can you give me some details about your use case, so I can test on my side to be sure that works well for you ?
I think the main difficulty is that scaling vs pixel for pixel, and scrolling if the screen is too small, should I fit width or fit height, etc. At the end of the day, maybe having the options directly in html would work ?

from digitalpaperapp.

xpierrohk avatar xpierrohk commented on June 22, 2024

Fixed in 1.5.0:
dpt whiteboard -orientation=portrait -scalingFactor=1 would give the raw image, no transformation.

  • I realize you were talking about the AWT whiteboard, not the html one (or so I think). I won't fix the HTML before someone who has a really interesting use-case comes forward (I think Sony is missing big on the html sharing, this would allow a teacher/presenter to share directly on the network, possibly to remote people, while he's taking notes, instead of only catering for people with projectors in front of a meeting audience like in their ad)
  • I kept the default that display the best on my screen (landscape, 0.5 multiplier)
  • I think it can handle a higher speed, I could also make that a config :)

from digitalpaperapp.

yasbean avatar yasbean commented on June 22, 2024

I was able to run "dpt whiteboard -orientation portrait" with a single page display document and a side-by-side display document, and they were both just what I was asking for . Thank you! Could you please also add these to the whiteboard-html?

By the way, after experimenting and running "dpt whiteboard" a few times with different orientation and scaling options, dpt stopped working, spewing error codes and then the help message. A have attached the error log as a separate file. This happened several times. Sometimes, it seems as though deleting ~/.dpt helps, but not always. IIt also seems that re-registering (dpt register) helps, but I have to wait a minute after that to be able to ping the DPT. It seems like it was hanging on something to exit. Here is the error log:

:~$ dpt ping
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Service added: [ServiceInfoImpl@185149888 name: 'Digital Paper DPT-RP1._digitalpaper._tcp.local.' address: '(null):0' status: 'DNS: Digital Paper DPT-RP1 [/0.0.0.0] state: probing 1 task: null', has NO data
Digital Paper DPT-RP1._digitalpaper._tcp.local.: ]
Service resolved: [ServiceInfoImpl@1567954751 name: 'Digital Paper DPT-RP1._digitalpaper._tcp.local.' address: '/192.168.0.30:8080 ' status: 'NO DNS state: probing 1 task: null' is persistent, has data, empty]
Service resolved: [ServiceInfoImpl@579283130 name: 'Digital Paper DPT-RP1._digitalpaper._tcp.local.' address: '/192.168.0.30:8080 /2601:204:d600:a3b0:35bf:afab:427a:3bf4:8080 ' status: 'NO DNS state: probing 1 task: null' is persistent, has data, empty]
Service resolved: [ServiceInfoImpl@1463684922 name: 'Digital Paper DPT-RP1._digitalpaper._tcp.local.' address: '/192.168.0.30:8080 /2601:204:d600:a3b0:35bf:afab:427a:3bf4:8080 /2601:204:d600:a3b0:ae89:95ff:fec9:5df5:8080 ' status: 'NO DNS state: probing 1 task: null' is persistent, has data, empty]
Service resolved: [ServiceInfoImpl@876644602 name: 'Digital Paper DPT-RP1._digitalpaper._tcp.local.' address: '/192.168.0.30:8080 /2601:204:d600:a3b0:35bf:afab:427a:3bf4:8080 /2601:204:d600:a3b0:ae89:95ff:fec9:5df5:8080 /fe80:0:0:0:ae89:95ff:fec9:5df5:8080 ' status: 'NO DNS state: probing 1 task: null' is persistent, has data, empty]
Found a Digital Paper at 192.168.0.30
Discovered a Digital Paper at https://digitalpaper.local:8443

dpt.log

from digitalpaperapp.

xpierrohk avatar xpierrohk commented on June 22, 2024

I'll take a look this weekend, I've never had the issue but I have a guess:

  • It might be because you change ip: mine is static
  • The certificate exception happen because I wanted to be fancy and use real ssl rather than just ignore it, but it can break a bit more in some circumstances (it tries to rollback to no security if it can't validate the certificate but ... I haven't tested it I admit, and it looks like it's not really working)
  • The minute you have to wait is due to both the slow discovery of mDNS (or the slow java implementation of it), and my own timeout maybe not stopping as soon as the dpt is discovered.

The way it works (and I don't document enough, I'm quite busy with https://github.com/DPT-RP1/DPT_template) is that it will save your ip in .dpt, ping it to be sure, then if that didn't work, relaunch the discovery process. So it all seems to point towards you having a changing IP, is that the case ? Is that a requirement or just a mishap ? (I like to give everything a local dns name myself, and fixed MAC-bound ip in the router). I can find ways to ping directly the link local name (digitalpaper._tcp.local) maybe. Update this weekend hopefully :)

from digitalpaperapp.

yasbean avatar yasbean commented on June 22, 2024

Thank you for the notes. I will try setting my IP to static. This makes sense. And, I looked at DPT_template. Who would have thought that the pressure sensitivity was already in the hardware! This was one of the last things I was missing in the DPT.

from digitalpaperapp.

xpierrohk avatar xpierrohk commented on June 22, 2024

Yeah and I spent an enormous amount of time reversing their thing, I think if we wanted to use other pen, it would theorically be possible. At least I know how to use strace now to see syscalls and find the driver / see about using others. Question about pressure sensitivity: why would you be interested in it?

I'm not much of an artist myself, and having a successful pressure sensible app is a lot more on the developer side than the hardware side. It doesn't produce a nice writing just by being there, there's a lot of mathematics involved to get various effects, some people I've seen even use non pressure sensitive inputs to produce variable width smooth lines because it just looks better (http://brinley.github.io/jSignature/). Sony has internal support for pressure change in software and willingly suppressed it, I suspect because they couldn't find a use case that would make it look nice.

What I'm doing now is to find a way to do a faster anti-aliasing so I could do apps for it that don't have their weird "anti aliasing popup". The way they do is they draw twice the same path, once fast but aliased, then wait a bit and draw with the android anti-aliaser a second time. It's why it "pops" nice, but I think I can do it in parallel (there are 4 cores, and i suspect they ported the old prs-t code that just couldn't do it). The screen is seriously limited in framerate obviously so maybe I'll have to submit and do the same way. Def looking for ideas from my one and only user lol

from digitalpaperapp.

yasbean avatar yasbean commented on June 22, 2024

I am interested in at least small pressure sensitivity just to be able to make hand writing look a bit better. Now, although I can use the hand writing for personal notes, but I always feel embarrassed when others see my writing on the DPT. I have much better handwriting than what appears on the DPT.

Thank you for all the energy and time you are putting into developing. Sony should really put you on their payroll!

from digitalpaperapp.

xpierrohk avatar xpierrohk commented on June 22, 2024

Fixed in 1.6.0 : there's now the -orientation option for html too.

2 caveats:

  • The HTML thing I did is real crap-basic, it loads a .html file and throws it at you. This html code packs a js code, the css and 3 html element. There is no server, backend controller, url router and whatnot: this means to do the portrait vs landscape, I... just copy pasted in 2 files and changed the inline css. This is very rigid: do test, if that's enough for you, good. If you have lots of fancy things you wanna do, then propose a design of options in html to do the various effects (scaling/rotation etc).

  • I didn't add the "scale" option, so portrait will spit the 1:1 image, pixel for pixel. And for some reason I really dislike landscape that way, so landscape fits height... not consistent. Same: if can't use, propose (I don't use it at all).

You can change the css easily directly in the browser if it's for rare one-offs.

Thanks for your kind words, it's been a long time since I had so much fun on a side-project, and to be fair to Sony, having seen so much of their disassembled code, they did a TON of stuff to make the software polished even if it looks a bit simplistic. It's not easy to do a real stable and well-tested product and you can feel the efforts and amount of work in it. Even if it's just a pdf reader they did, I stay humble ahah

from digitalpaperapp.

Related Issues (4)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.