Wednesday, December 8, 2010

Image viewing on Kindle

As you may have learned, Kindle has an 'experimental' picture viewer. You won't find a description of this feature in your Kindle User's Guide, and most of the descriptions I've encountered in Kindle-related blogs and forums are incomplete and even inaccurate. I'll try to do better here, or at least no worse.

Preparing image content for viewing on Kindle
  1. The viewer has native support for JPG, PNG, and GIF image formats.
  2. Create a new folder (e.g. on the Desktop) that will contain the pictures for your picture album. Give the folder the name that you want to see in the Kindle's item list.
  3. Copy the image files you want to use to the folder (.jpg/.jpeg, .png, .gif)
  4. Consider resizing large images so they fit Kindle's screen better using a 3rd party image editing tool ('Irfanview' is a free, popular program for Windows that can do this. There are also free tools specifically for preparing image files for viewing on Kindle, like Mangle.) Anything that's reasonably small (say less than 1500x1500) will work ok, however.
  5. Kindle will display the images in the alphanumeric sorting order of the filename. If display order matters, this is the time to rename the files so that the sorting order is the way you want them (e.g. 'img001.jpg, img002.jpg, ...). (Again, Mangle and similar tools will handle this for you.)
  6. At this point, you can take the additional step of packaging the image files in a .zip file before putting them on your Kindle. I prefer this, since it not only saves some space, but it allows you to remove image content from the Kindle using its normal 'delete item' functionality. Kindle has to do a little more work to unzip for viewing, but the performance doesn't seem that much slower than if you copy a folder containing image content files directly. The procedure for creating a .zip file is similar on Windows and Mac:
    1. Select the folder containing the image files. 
    2. On Windows, right click on the folder and choose 'Send to - Compressed (zipped) folder'. On Mac OS X, right click (or Control click) on the folder and choose 'Compress [folder name].'
The next step is to copy the content to your Kindle:
  1. Connect the Kindle to your computer using the USB cable; it should show up as a new drive named 'Kindle'.
  2. Create a folder on the Kindle 'drive' named 'pictures' at the same level as 'documents'. You can actually skip this step, however, and just place image files in a subfolder of 'documents', or copy the .zip file created above in 'documents' instead.
  3. Drag the folder(s) or .zip file(s) containing your image content from your Desktop to the 'pictures' folder.
  4. Actually you can skip step 2. and just copy the folders and .zip files to the 'documents' folder, and it will work, but having them in a separate folder makes it easier and maybe more idiot proof when you want clean up (and you will have some cleanup to do at some point - see below)
  5. Kindle will also read '.cbz' archive files ('comic book archive'). They are just .zip files with a .cbz file extension.
  6. unmount/'safely remove'/eject Kindle.
Try it out
A new item should appear on your Home screen, corresponding to the name of the folder or .zip file with your image content. (If it doesn't press Alt, Z to refresh the item list. If it still doesn't appear, you'll have to hook back to the computer and check that it is in the right location). Open it like any other item, and the experimental image viewer will go to work. 

To maximize your enjoyment, it will be good to familiarize yourself with the available options:
  1. There are some different Menu choices:
    1. Disable/Enable Dithering - does this do anything? I don't notice anything..
    2. Anchor to Top Right/Left - manga usually follow Japanese right-to-left convention. This lets you start in the correct corner when viewing at full resolution.
    3. Disable/Enable Full Screen Mode - toggles the status bar at top 
    4. Use Partial/Full Refresh - does this do anything? no idea...
    5. Enable Pan to Next Page - useful for navigating manga/comics in full (larger than Kindle screen) resolution, navigates to previous/next page using 5way to pan.
  2. There are some different Text (Aa) menu choices:
    1. Actual Size (no | true) - view image at 'full resolution'; requires panning to view what does not fit on the screen
    2. Scale (Fit Screen | Fit Width | Fit Height) - how to handle images whose aspect ratio does not match Kindle's screen, when Actual Size setting is 'no'. 
    3. Screen Rotation (..the usual..) - view in portrait or landscape
  3. Finally there are keyboard shortcuts corresponding to some of the menu functions. You will want to memorize a few of these, as they are far more efficient than using the menus & 5way:
    1. 'f' toggles full screen, more convenient than using the menu.
    2. 'r' rotates image 1/4 turn CCW and then back
    3. 'q' zooms in (when not in Actual Size mode)
    4. 'w' zooms out (")
    5. 'e' reset zoom (")
    6. 'c' toggles 'Actual Size'
    7. Alt+G refreshes the pixels and removes 'ghosting' in the image viewer in image viewer, just as it does everywhere else on the Kindle.
  4. And in case it is not obvious or expected, the page buttons advance to next and previous image.
Caveats/bugs/comments
  • All of this should work on K2/DX/K3; I think on K1 as well.
  • There are frequent redraw problems (parts of previous image not cleared). Tapping Menu a couple of times fixes this.
  • Some of the menu settings are not 'sticky' from one session to the next and their menu status gets out of sync. For example, if you Enable Full Screen, the next image viewing session will have the status bar at the top, but the Menu will say Disable Full Screen instead of Enable Full Screen. Just tap 'f' to go to Full Screen.
  • Kindle will save your reading position, but will not tell you what that position is, or when you are at the beginning or end, so you have no idea where in a particular sequence you are, it just cycles through.
  • If Kindle goes into sleep mode, the screen will not redraw when you wake it up. Tap 'f' key, then Menu a couple of times to provoke redraw and remove artifacts. Or go Home and re-open the item.
  • Another way of doing viewing images is to package your images in a PDF file, and use the PDF viewer (K2 or later models). Then you get page numbers, bookmarks, and (on Kindle 3) the useful contrast adjustment, and annotation, at the expense of some screen real estate (25 pixels on each side plus 55 pixels on the bottom). You can then also use wireless delivery as well (free using K3's wifi).  It is better than having Amazon convert it the .zip to AZW format (which the conversion service supports), because you can zoom for more detail, and you can't do that with images in any of the supported ebook formats. But this requires a way to create PDF from a set of image files. Mac (and most Linux) have this capability built in, but Windows users need to add software, or use a web conversion service, or make friends with someone with Acrobat.
  • You can seemingly remove an image item from the Home screen using the usual 'delete item' function. However, if the images are in a folder, the folder and the files in it will remain on your Kindle. The next time the item list refreshes, the image item will re-appear. The only way to delete image folders is to hook up to the computer and use its file browser. On the other hand, if you have the image files in a .zip archive, 'delete item' will remove the .zip file, recover the space it took up, and the item will never reappear in the item list, but there will be a small '.manga' file left behind (Kindle creates this to save reading position). You can only remove this by tethering to a computer and using its file browser. No harm will befall you as a result of failing to remove the orphaned .manga files - but they do take up a tiny bit of space.
  • Work is afoot to create an image viewing application for Kindle, presumably one with more advanced features and fewer bugs than what Kindle provides (e.g. search mobileread.com for 'mangle' - some references will be to the tool above, some for a Kindle app some folks are developing). I don't know if this or something similar will eventually appear on the Kindle Store, or will be something you can sideload to your Kindle. 
  • There's no way to email image files for wireless delivery to your Kindle, apart from converting them to .AZW or packaging in a .PDF.
  • I don't expect Amazon will ever officially adopt the image viewer and fix the bugs. Again, I think this will probably come in the form of an application in the Kindle Store before too long.
  • calibre knows how to catalog .cbz/.cbr/.zip image files, but apparently does not (yet) know how to convert to an eBook format such as .mobi,.epub, or .pdf (something I'll suggest...). You can use it to copy .cbz/.zip files to Kindle, and it will put them in the 'documents' folder.

Reading Google eBooks using Kindle 3 browser

...is for Kindle, too!
Google recently announced the availability of the Google eBookstore, where one can now have the privilege of purchasing books (whereas before only out of print material was available). These include many NY Times best-seller selections and eventually, one might expect, a selection of current titles comparable to that at Amazon, Barnes & Noble, Kobo, etc. Most of the for-purchase titles can be downloaded in PDF or ePub format, but whereas the free titles can be converted to Kindle format using a variety of tools such as 'calibre', most for-purchase titles are cloaked in (Adobe) DRM and do not allow direct conversion.
One of Google's eBookstore's unique features is the ability to read such purchases online, using any current browser. (Amazon has announced similar capability would be available for Kindle Store purchases in January, and browser viewing is available for reading samples now.) Google also has apps for iOS and Android for offline reading, and the download capability, when available, means you can read offline using ereaders that support Adobe DRM (virtually everything but Kindle).

Why should you care about this?
It turns out that the Kindle "3"s browser works with the Google web eBook viewer. So now you can:
  • View for-purchase (and otherwise DRMed) ePub titles directly on the Kindle (as well as on any other device with a capable browser, or using the free Google apps for Android or iOS). As such, it represents an escape from the kind but firm 'lock-in' of the Kindle platform, without having to strip DRM (with its dubious legal implications) or conversion (with its sometimes less than stellar results).
  • Realize any cost savings of Google eBookstore vs. Kindle Store (I saved 10% on the title I purchased).
  • Explore the world of ePub, and be able to share content between Kindle and an ePub reader you may have for library borrowing, etc.
  • Support (what is now a handful of) 'independent' bookstores by purchasing through them, and Google will store your purchases in your Google eBook library. 
  • Explore the millions of free titles without using any storage on your Kindle.
  • Are you a fan of 'page numbers'? This will give them to you!
It works reasonably well as it is, but if Google recognizes the opportunity that millions of Kindle users represent to their potential customer base, they'll provide a truly Kindle-ized web interface, one that works on older Kindle models, and a Kindle FAQ. And

Getting Started
To reduce frustration, I recommend you do this part using a computer browser, though in theory you can do it with Kindle 3 browser as well:
  • Sign up for a free Google account if you have not got one.
  • Go to books.google.com, login to your Google account.
  • For starters, just get a free book or a sample. Hover over a selection and choose 'Get it - FREE' (for the free titles), or 'Save sample for later' (for a sample). This will put it in your 'My eBooks' library, and will change the popup links to 'Read Now' or 'Read Sample' respectively
  • Click the link to read
  • This brings up the web reader UI, which you'll be using on your Kindle to read. Familiarize yourself with the toolbar on the left, which you can use to go back to your eLibrary view, navigate the Table of Contents, change the 'text' settings, search for text, view information about the book, or get help on how to use the web reader.
  • Note that keyboard shortcuts are available to turn pages: 'j' or 'n' to go to the next page, 'k' or 'p' to go to the previous page. You'll probably want to use these on your Kindle (more on this later).
Try it out on your Kindle:
  • Launch the web browser in whatever way you are used to doing (e.g. in this case you could go to the Home screen and type 'books.google.com' and click right on the 5way until 'go to' is selected, then press Select).
  • When you get to books.google.com, sign in to your Google account if you need to (if you have cookies enabled and have logged into Google previously, you may already be logged in)
  • At the top of the page, you should see a 'My library' link. Navigate with the cursor and click on it.
  • This will show your library page, zoomed out (you may want to bookmark this with Menu/Bookmark This Page). You should see the item(s) added previously with 'Read Now' buttons below them.
  • Click/select to zoom in, navigate to a Read Now button and click on it.
  • The Google web viewer will launch, and probably show a book cover. Note the toolbar and page turn buttons next to the viewing area are barely visible on Kindle (that's actually a Good Thing, as they are less distracting).
  • Move the cursor all the way to the right edge of the viewing area. This positions it over the 'next page' button, which extends over the entire right side (not just the visible triangle), so you can use Select to go to the next page.
  • At this point you can navigate pages using any of the following: 'j', 'n', or Select to go to the next page, 'k' or 'p' to go to the previous page. (Make sure the cursor is somewhere other than the address bar or your keystrokes will get swallowed there.) I also discovered that Shift+right and Shift+left navigate to next and previous pages, though since it requires pressing two buttons where one will do, not sure anyone will want to use that technique.
  • you can click on the 'Aa' button on the left side to open an options dialog where you can change the typeface, make text larger or smaller, adjust line height, toggle justification, switch between 'Flowing text' and 'Scanned pages', etc.  For some adjustments, you will probably need to temporarily Zoom In -- Menu / Zoom In -- to be able to navigate this dialog with enough precision. Click the 'X' (upper right corner of dialog) to close the dialog when done. 
Recommendations/Considerations
  • Do the bulk of your browsing and purchasing on a computer to minimize frustration. 
  • Set the 'Flowing text' option so you can choose the typeface/size etc. (though 'Scanned pages' mode might be useful or interesting occasionally).
  • For larger text sizes, landscape may work a little better (longer line lengths) - but in any case, once text gets to a certain size, scrollbars will appear, and detract from usability, so you'll want to stop increasing the size before that happens (you can preview this behavior as you adjust the size). As in portrait, position the cursor along the right edge of the screen so you can use Select to advance to the next page (letter keys become less convenient).
  • Keep the wireless on while you are reading. A few pages are cached, but eventually you'll need to connect to continue reading. If you leave the browser to read something else on your Kindle, you can re-launch the browser to resume reading.
  • The table of contents function requires some futzing, but it gets the job done. Click on the 'Contents' icon to reveal a scrolling chapter list, then move the cursor over the list. You can then use the Kindle Next and Previous buttons to scroll pages of the list down and up, respectively, then select the item you want with the cursor. It will preview the page you will land on, and you can use the j/k or p/n keyboard shortcuts to move ahead or back in the text. The trick is to dismiss the chapter list: to do this, you need to move the cursor off of the chapter list (either to the left or right), then move it up until it is above the scroll bar, then over to the 'X'. In any other browser, the 'esc' key would dismiss the dialog, but Kindle's keyboard doesn't have one of these (I hope Google adds an alternate shortcut for Kindle users...)
Other observations and comments
  • Interestingly, with 'full' justification, hyphenation happens with some books I've viewed - I suspect this is due to 'soft' hyphens embedded in the XHTML source and not a hyphenation engine in the viewer's text layout engine, since it only happens sporadically.
  • The Google iPhone app is not bad (I like the 'n pages left in chapter' information that you can pop up), but doesn't operate in landscape orientation. If you download the ePub, you can read it with any number of apps and devices, though it will no longer sync your reading position.
  • When reading with an online connection, furthest reading position is tracked so you can pick up reading where you left off, regardless of the device or browser you happen to be using.
  • No annotation, bookmarks, etc. yet.
  • I've confirmed that downloaded epub and PDF files with DRM are readable in Adobe Digital Editions and several iPhone apps that support Adobe DRM.
  • Formatting quality of the offerings is variable. While I didn't see any major problems with the title I purchased (which had both a linked TOC and navigable or 'NCX' TOC), the free titles have their problems. I'm still trying to figure out what Google does to curate at least the paid-for content, which looks slightly different than that available from other sources.
  • The Google ebook platform does not rely upon Adobe technology, except to serve up the .acsm files needed to authorize and download .ePub or .PDF files that are needed for non-Google ebook viewers. In particular they do not license the Adobe Reader Mobile SDK for the mobile apps. So it is Yet Another platform to target from an epub authoring perspective, since it is likely to have a different set of peculiarities than the Adobe-powered platforms have, or the Apple epub platform, or Ibis Reader, etc.
The Glorious Future (if Google wants it..)
  • I'd like to see Google create a Kindle optimized web viewer, with larger viewing area and more keyboard shortcuts (for example, to have PageDown/PageUp keys - which in the Kindle browser map to Kindle's Next Page and Previous Page buttons - flip pages as well). And yes, an alternate shortcut for 'esc' is needed.
  • Google also needs to make a mobile version of the 'My library' page, if not one optimized for Kindle specifically with keyboard shortcuts, etc. The Google eBookstore does have a mobile edition, for what that is worth (I haven't tried it very much yet).
  • While many people are disappointed that Google did not see fit to offer a Kindle/MOBI format option, the fact is that Amazon would almost certainly not license their DRM, and most publishers won't do without DRM at this point. Non-DRM Google eBooks ares easy to convert using calibre or at least one web site I have heard of that is set up for that purpose [link needed here..].
  • Kindle aside, it would be nice if there were a way of storing non-Google ebooks, or being able to pull ebooks from personal cloud storage such as Dropbox into the reader. This would make the web viewer technology useful for Adobe DRM books purchased from other storefronts. But I suspect that we'll see web readers from Barnes and Noble, Kobo, etc. as well, now that Google and Amazon have made this move. So eventually I expect one of Amazon's competitors will recognize the value in creating a web ereader that 'happens to work' well on K3, if not the earlier models.
  • Now that Google and Amazon have created a web ereader, I expect B&N, Kobo, etc. to follow suit. It seems only a matter of time before one of Amazon's competitors realizes that K3's webkit browser represents an opening they can exploit to lure Amazon customers to their storefronts. They'll need to design a web ereader that works much better on Kindle than the one Google has delivered to date, but I think it is technically quite feasible, and even likely as a competitive counter-move (e.g. Amazon will have a web e-reader that should work perfectly well on a NookColor). 
Google seems to collect feedback here. I'll certainly be sending them my suggestions and I encourage others to do the same.

Following are some screenshots showing some of the features:

The reader view

Contents/Chapter pop-up

Text options pop-up


Text search pop-up

Book info pop-up