Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
PDF Capability
#1
Is it possible to incorporate a PDF reading capability into Freda? I read a fair number of academic works in that format, and it would be nice to use the same reader for them. My current reader of choice on Android, Moon+ Reader, does have both mobi/epub and pdf reading in the premium version, but it is only available on Android, and I would really like to use one reader that offers multi-device synchonization and is cross-platform (Windows/Android). 

Thank you for Freda!
Reply
#2
(06-27-2018, 11:22 PM)jscraig Wrote: Is it possible to incorporate a PDF reading capability into Freda? I read a fair number of academic works in that format, and it would be nice to use the same reader for them. My current reader of choice on Android, Moon+ Reader, does have both mobi/epub and pdf reading in the premium version, but it is only available on Android, and I would really like to use one reader that offers multi-device synchonization and is cross-platform (Windows/Android). 

Thank you for Freda!

I did try adding PDF support to Freda, a couple of months back, on an experimental basis.  The outcome of that experiment was that the PDF support added significant bloat to the app, and made it somewhat less stable.  And Freda did not do a particularly good job of deciphering the content of the PDF file either (words broken up, headings in the wrong places, images out of sequence, ... ).  If I had been ready to spend thousands of dollars on a commercial license for a third party PDF-decoder component, it might have been possible to get a better result, but Freda does not generate enough revenue to cover that kind of expense.  I suspect that the Moon+ developers have more money behind them ;-)

It is a decision that I could revisit in the future, if better/cheaper PDF-decoder components become available.  For the experimental build, I used the SyncFusion 'EssentialPDF' tool, which looked promising ... but unfortunately a number of vital features are still missing for Freda's build environments (Windows UWP and Xamarin .Net).  As such, the quality of PDF rendering was simply not good enough, and I am sure that if I had published feature officially, I would have received stacks of one-star reviews "Freda's PDF rendering sucks"; because of the way that the App Stores work, one-star views are a real disaster.  If I can't do it well, it is better not to do it at all.

As an alternative, I would suggest you convert your PDF file to EPUB format, and then read the EPUB on Freda.  The best tool for doing that conversion is Calibre (see here). 
Reply
#3
(06-28-2018, 08:44 AM)jim_chapman Wrote:
(06-27-2018, 11:22 PM)jscraig Wrote: Is it possible to incorporate a PDF reading capability into Freda? I read a fair number of academic works in that format, and it would be nice to use the same reader for them. My current reader of choice on Android, Moon+ Reader, does have both mobi/epub and pdf reading in the premium version, but it is only available on Android, and I would really like to use one reader that offers multi-device synchonization and is cross-platform (Windows/Android). 

Thank you for Freda!

I did try adding PDF support to Freda, a couple of months back, on an experimental basis.  The outcome of that experiment was that the PDF support added significant bloat to the app, and made it somewhat less stable.  And Freda did not do a particularly good job of deciphering the content of the PDF file either (words broken up, headings in the wrong places, images out of sequence, ... ).  If I had been ready to spend thousands of dollars on a commercial license for a third party PDF-decoder component, it might have been possible to get a better result, but Freda does not generate enough revenue to cover that kind of expense.  I suspect that the Moon+ developers have more money behind them ;-)

It is a decision that I could revisit in the future, if better/cheaper PDF-decoder components become available.  For the experimental build, I used the SyncFusion 'EssentialPDF' tool, which looked promising ... but unfortunately a number of vital features are still missing for Freda's build environments (Windows UWP and Xamarin .Net).  As such, the quality of PDF rendering was simply not good enough, and I am sure that if I had published feature officially, I would have received stacks of one-star reviews "Freda's PDF rendering sucks"; because of the way that the App Stores work, one-star views are a real disaster.  If I can't do it well, it is better not to do it at all.

As an alternative, I would suggest you convert your PDF file to EPUB format, and then read the EPUB on Freda.  The best tool for doing that conversion is Calibre (see here). 

Even if it just called the default PDF reader on your PC, it would be nice to have the PDF books I've collected in one please. Just my two cents.
Reply
#4
(11-19-2020, 10:39 PM)Doug Wrote: Even if it just called the default PDF reader on your PC, it would be nice to have the PDF books I've collected in one please. Just my two cents.

I've now updated Freda so that it can at least display PDF books - it will load each page as an image (not as individual words on the page).  That works reasonably well for short documents, on devices with large screens.  But if you want to use document navigation features, or select and search text, it isn't much use.  Since it doesn't reflow the text to fit the screen size, it also doesn't give a great result if the screen is small.

I'll have a think about whether I could make Freda launch the default PDF reader for the device.  The obvious ways to do it would mean wasting a load of file system space, and time, by making copies of the PDF file - but perhaps I can come up with a non-obvious approach :-)
Reply
#5
Hi Jim, I just installed Freda a few days ago, unaware that the PDF functionality was new or limited for the app. My current bookshelf is 80% PDFs and just so that you know - I find the current functionality with rendering the page as an image completely fine, and as many of my books has complex layout and many images and graphics, I am sure that it is also the most precise rendering with less effort.

A few things would be great to make the PDF functionality feel less as an add-on (I am on Windows UWP):
(1) Pagination, progress and display and use of page numbers seems to be working on/off - I am aware that it has to be implemented differently for this approach than your "real" ebooks
(2) Extract page 1 (at least after it has already been read and rendered first time) and use as cover on the bookshelf rather than the generic book icon
(3) make the page rendering the actual image view by default, so pinch to zoom etc would work right away. Currently I have to long-press to open the page (which is already an image) in the image viewer, then maximize the image view, and then zoom and move the page around as I read. Maybe the PDF could simply use a maximized image view as the default rendering (but then the swipe to turn pages would need some attention obviously)
(4) After Windows background or sleep, the app often cannot be found in the task view. Restarting will sometimes bring it to the page where I left, but will often throw me back to page one, from where navigation is a bit bothersome as pagination will not be in place and I will have to use the contents/"chapters" list to try and locate where I was.

Feel free to PM me if you need explanation to some of my suggestions. Out of curiosity: Is Freda built with C# and Xamarin?

But thank you - your app is working absolutely fine for me, and used more than my Kindle app now, even for PDFs - maybe because most of mine are more coffee-table layout and less formal text pages.

Thank you - Jesper
Reply
#6
(02-02-2021, 10:34 PM)jsdk Wrote: ...

Thank you - Jesper

Hi Jesper, and thank you for your comments.  I will take a look at the points you mention - (1) definitely sounds like a bug, and I will look into it, and so does (4).  (2) should be reasonably straightforward to fix (as a work-around for now, you can do it manually by opening the first page of the book using the image-viewer, and saving it as a jpeg, then returning to the app main screen, right-clicking the book and editing its details - then tap on the cover image in the 'edit' screen to replace it with your preferred jpeg file). Item (3) is doable, but will need a fair amount of work because of the way that the gesture-recognisers on the reader screen work. Anyhow, I will put it all onto my to do list.

To your final question: Freda on Windows 10 is a C# UWP app; Freda on Android is built with C# and Xamarin.  There is also some C++ in there, for managing some funky file-format decompression.  The UWP and Xamarin builds share all the same Model and ViewModel code, but the View code is different.  My reasons for having two separate builds include: they use different graphics libraries (Win2D vs SkiaSharp); the Windows code has to handle keyboard commands and shortcuts; I built the UWP app first, and couldn't bring myself to discard a load of code that was working already).

I'm in the process of refactoring the app at the moment, with a view to moving it all to a single .Net MAUI build, and getting it to work on the Apple ecosystem as well as Windows and Android.  That's a project for the whole of 2021 (and maybe a bit longer than that).
Reply
#7
Thank you for the prompt reply. It sounds great that it all makes sense to you. I am looking forward (with patience, don't worry) to see upcoming versions.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)