hhPDFViewer v0.8.0

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

hhPDFViewer v0.8.0

Pi Digital via use-livecode
Sometimes one wishes to have a unique PDF display, independent of the
user's current internet-plugin. Or one wishes to have a feature that
these plugins don't have (for example rotation). Then pdf.js comes in.

hhPDFViewer is a basic GUI to the JavaScript pdf library "pdf.js"
( https://mozilla.github.io/pdf.js/  (watch the license)).

My current solution can display both local and remote pdfs.
And it does NOT need a (local) server.

The widget uses pdf.js to display (and load) one single page of any
multipage pdf. It needs 2.3 MByte of space in the temporary folder
+ 1.3*the size of the displayed pdf.

You can
[*]Switch to prev/next/any page of the PDF.
[*]Zoom in, zoom out or fit the PDF to width or height of the browser
widget's width or height.
[*]Fit the browser widget's rect to the page container's rect
(hold down the shiftkey when using the controls for that).
[*]Rotate the PDF to 0, 90, 180, 270 degrees.
[*]Grab the PDF to scroll the PDF left/up/right/down.

Download hhPDFViewer from "Sample Stacks" or
http://livecodeshare.runrev.com/stack/916/

The library is included in the stack, so that also an offline usage
(with local PDFs) is possible.
I didn't already test it but the stack should run on any platform where
the browser widget works. For mobile you still have do some work for
resizing the browser widget and the controls group (and changing some
triggers). If there is enough interest I'll implement more features.


_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
Reply | Threaded
Open this post in threaded view
|

Re: hhPDFViewer v0.8.0

Pi Digital via use-livecode
This is great, thank you! also a good learning tool for learning to
interact with JS.


On Mon, Nov 26, 2018 at 2:44 PM hh via use-livecode <
[hidden email]> wrote:

> Sometimes one wishes to have a unique PDF display, independent of the
> user's current internet-plugin. Or one wishes to have a feature that
> these plugins don't have (for example rotation). Then pdf.js comes in.
>
> hhPDFViewer is a basic GUI to the JavaScript pdf library "pdf.js"
> ( https://mozilla.github.io/pdf.js/  (watch the license)).
>
> My current solution can display both local and remote pdfs.
> And it does NOT need a (local) server.
>
> The widget uses pdf.js to display (and load) one single page of any
> multipage pdf. It needs 2.3 MByte of space in the temporary folder
> + 1.3*the size of the displayed pdf.
>
> You can
> [*]Switch to prev/next/any page of the PDF.
> [*]Zoom in, zoom out or fit the PDF to width or height of the browser
> widget's width or height.
> [*]Fit the browser widget's rect to the page container's rect
> (hold down the shiftkey when using the controls for that).
> [*]Rotate the PDF to 0, 90, 180, 270 degrees.
> [*]Grab the PDF to scroll the PDF left/up/right/down.
>
> Download hhPDFViewer from "Sample Stacks" or
> http://livecodeshare.runrev.com/stack/916/
>
> The library is included in the stack, so that also an offline usage
> (with local PDFs) is possible.
> I didn't already test it but the stack should run on any platform where
> the browser widget works. For mobile you still have do some work for
> resizing the browser widget and the controls group (and changing some
> triggers). If there is enough interest I'll implement more features.
>
>
> _______________________________________________
> use-livecode mailing list
> [hidden email]
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>
_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
Reply | Threaded
Open this post in threaded view
|

Re: hhPDFViewer v0.8.0

Pi Digital via use-livecode
In reply to this post by Pi Digital via use-livecode
Awesome!

Thanks Herman

Regards, Sphere

Op 26-11-2018 om 20:43 schreef hh via use-livecode:

> Sometimes one wishes to have a unique PDF display, independent of the
> user's current internet-plugin. Or one wishes to have a feature that
> these plugins don't have (for example rotation). Then pdf.js comes in.
>
> hhPDFViewer is a basic GUI to the JavaScript pdf library "pdf.js"
> ( https://mozilla.github.io/pdf.js/  (watch the license)).
>
> My current solution can display both local and remote pdfs.
> And it does NOT need a (local) server.
>
> The widget uses pdf.js to display (and load) one single page of any
> multipage pdf. It needs 2.3 MByte of space in the temporary folder
> + 1.3*the size of the displayed pdf.
>
> You can
> [*]Switch to prev/next/any page of the PDF.
> [*]Zoom in, zoom out or fit the PDF to width or height of the browser
> widget's width or height.
> [*]Fit the browser widget's rect to the page container's rect
> (hold down the shiftkey when using the controls for that).
> [*]Rotate the PDF to 0, 90, 180, 270 degrees.
> [*]Grab the PDF to scroll the PDF left/up/right/down.
>
> Download hhPDFViewer from "Sample Stacks" or
> http://livecodeshare.runrev.com/stack/916/
>
> The library is included in the stack, so that also an offline usage
> (with local PDFs) is possible.
> I didn't already test it but the stack should run on any platform where
> the browser widget works. For mobile you still have do some work for
> resizing the browser widget and the controls group (and changing some
> triggers). If there is enough interest I'll implement more features.
>
>
> _______________________________________________
> use-livecode mailing list
> [hidden email]
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode

_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
Reply | Threaded
Open this post in threaded view
|

Re: hhPDFViewer v0.8.0

Pi Digital via use-livecode
In reply to this post by Pi Digital via use-livecode
Brilliant stuff Hermann

Thanks,

Lagi

On Mon, 26 Nov 2018 at 19:44, hh via use-livecode <
[hidden email]> wrote:

> Sometimes one wishes to have a unique PDF display, independent of the
> user's current internet-plugin. Or one wishes to have a feature that
> these plugins don't have (for example rotation). Then pdf.js comes in.
>
> hhPDFViewer is a basic GUI to the JavaScript pdf library "pdf.js"
> ( https://mozilla.github.io/pdf.js/  (watch the license)).
>
> My current solution can display both local and remote pdfs.
> And it does NOT need a (local) server.
>
> The widget uses pdf.js to display (and load) one single page of any
> multipage pdf. It needs 2.3 MByte of space in the temporary folder
> + 1.3*the size of the displayed pdf.
>
> You can
> [*]Switch to prev/next/any page of the PDF.
> [*]Zoom in, zoom out or fit the PDF to width or height of the browser
> widget's width or height.
> [*]Fit the browser widget's rect to the page container's rect
> (hold down the shiftkey when using the controls for that).
> [*]Rotate the PDF to 0, 90, 180, 270 degrees.
> [*]Grab the PDF to scroll the PDF left/up/right/down.
>
> Download hhPDFViewer from "Sample Stacks" or
> http://livecodeshare.runrev.com/stack/916/
>
> The library is included in the stack, so that also an offline usage
> (with local PDFs) is possible.
> I didn't already test it but the stack should run on any platform where
> the browser widget works. For mobile you still have do some work for
> resizing the browser widget and the controls group (and changing some
> triggers). If there is enough interest I'll implement more features.
>
>
> _______________________________________________
> use-livecode mailing list
> [hidden email]
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>
_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
Reply | Threaded
Open this post in threaded view
|

Re: hhPDFViewer v0.8.0

Pi Digital via use-livecode
Hi Hermann

Thanks for this. Any way of selecting or copying text from the PDF file?

Any way of finding a particular text in the PDF?

On Wed, 28 Nov 2018 at 14:47, Lagi Pittas via use-livecode <
[hidden email]> wrote:

> Brilliant stuff Hermann
>
> Thanks,
>
> Lagi
>
> On Mon, 26 Nov 2018 at 19:44, hh via use-livecode <
> [hidden email]> wrote:
>
> > Sometimes one wishes to have a unique PDF display, independent of the
> > user's current internet-plugin. Or one wishes to have a feature that
> > these plugins don't have (for example rotation). Then pdf.js comes in.
> >
> > hhPDFViewer is a basic GUI to the JavaScript pdf library "pdf.js"
> > ( https://mozilla.github.io/pdf.js/  (watch the license)).
> >
> > My current solution can display both local and remote pdfs.
> > And it does NOT need a (local) server.
> >
> > The widget uses pdf.js to display (and load) one single page of any
> > multipage pdf. It needs 2.3 MByte of space in the temporary folder
> > + 1.3*the size of the displayed pdf.
> >
> > You can
> > [*]Switch to prev/next/any page of the PDF.
> > [*]Zoom in, zoom out or fit the PDF to width or height of the browser
> > widget's width or height.
> > [*]Fit the browser widget's rect to the page container's rect
> > (hold down the shiftkey when using the controls for that).
> > [*]Rotate the PDF to 0, 90, 180, 270 degrees.
> > [*]Grab the PDF to scroll the PDF left/up/right/down.
> >
> > Download hhPDFViewer from "Sample Stacks" or
> > http://livecodeshare.runrev.com/stack/916/
> >
> > The library is included in the stack, so that also an offline usage
> > (with local PDFs) is possible.
> > I didn't already test it but the stack should run on any platform where
> > the browser widget works. For mobile you still have do some work for
> > resizing the browser widget and the controls group (and changing some
> > triggers). If there is enough interest I'll implement more features.
> >
> >
> > _______________________________________________
> > use-livecode mailing list
> > [hidden email]
> > Please visit this url to subscribe, unsubscribe and manage your
> > subscription preferences:
> > http://lists.runrev.com/mailman/listinfo/use-livecode
> >
> _______________________________________________
> use-livecode mailing list
> [hidden email]
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>


--
Kaveh Bazargan
Director
River Valley Technologies <http://rivervalleytechnologies.com/> • Twitter
<https://twitter.com/kaveh1000> • LinkedIn
<https://www.linkedin.com/in/bazargankaveh/>
_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
Reply | Threaded
Open this post in threaded view
|

Re: hhPDFViewer v0.8.0

Pi Digital via use-livecode
In reply to this post by Pi Digital via use-livecode
> Kaveh wrote:
> Any way of selecting or copying text from the PDF file?
> Any way of finding a particular text in the PDF?

The problem is:
The viewer template of pdfJS cannot be used if one would like to load
PDFs from anywhere, not only from a server where the script resides.
So I had to use the "atomic" features of pdfJS for the current viewer.

But there is some "text-layer" code one can use for one's own project.
There is no documentation about that, one has to dive deep into the code.
It is a lot of code and it will need at least 2-3 full days to implement.

I will do it, hopefully this year, especially as printing to pdf from the
browser widget is probably coming next year, in LC 9.1 (read on github).

_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode