Just to document this for next time. For reference, my books are 8 x 10.75 inches and other dimension below work for this. For approximately 100 pages, It takes me about 45 minutes to scan, an hour to crop and rotate, and 30 minutes to organize and generate the PDF.

Scanning

Myscanner is an all-in-one type of printer with a 8.5 x 11 scanning bed (Epson Workforce 3640). When I replaced my previous printer, I considered getting one with a 11x17 scanning bed, but alas, did not. So anyway...

Scan at 200dpi using the "Text and images" setting.

Set the output format to TIFF. I would have used PNG, but that's not available on my scanner. Perhaps next time I will use the JPEG setting and see if that affects the final quality (perhaps not since we are reducing and compressing quite at bit by the end).

Image Processing

Using IrfanView for each image...

  • Rotate to the correct orientation (press R)
  • Do fine rotation if needed, usually in the range of .3 to .6 degrees, if the scans are fairly straight (CTRL-U).
  • Crop (select the region to keep and press CTRL-Y)

Batch process all images in the folder. Open one of them in IrfanView and press B. Use these settings...

  • Reduce size by 50%. This results in an image approx 750 by 1050 pixels.
  • Convert to JPEG using the highest quality setting.
  • Add all images to the batch.
  • Select the output folder.
  • Run the batch.

Organize and Generate the PDF

Using LibreOffice Impress...

  • Change the page size to 7.75 x 5.25 with 0 margins. This should allow drag'n'drop the images into Impress without having to resize all of them.
  • Each Impress slide is a full page spread (two facing images).
  • For each spread, you could link to the image by CTRL-SHIFT-dragging the file into Impress, but Impress seems to have some issues with linked images. So embedding seems to be the way to go.
  • Rename slides via right click or press F2. These slide names appear in the final PDF as bookmarks.
  • Export to PDF using my exporter script with "Export to PDF for Web" option on the File menu

Using PDF-XChange Editor (free version)...

  • Organize the bookmark hierarchy (i.e. into sections).

 

Selecting PHP command line version on HostGator shared host

This took me a while to find, so I'm saving it somewhere I can find it again.

The easy way to select the PHP version used for web applications is to use the CPanel configuration tool. However, that doesn't work if you're using SSH and need PHP on the command line. Also, on HostGator, you can't create a symlink outside of your directory (such as to the global php).

You can find out what version you have with

$ php --version

If that's not the version you want, try a specific version like this (php55 is 5.5, etc):

Book Scanning Process

 

Just to document this for next time. For reference, my books are 8 x 10.75 inches and other dimension below work for this. For approximately 100 pages, It takes me about 45 minutes to scan, an hour to crop and rotate, and 30 minutes to organize and generate the PDF.

Fixing features for hotfolder

Here is some documentation about the process I used to solve some issues with hotfolder and the features module. I was doing this partly through the web interface and partly through a console, so this is a reconstruction of what I remember and the console log. 

 

I was getting the following error message when I tried to check hotfolder watches (see https://www.drupal.org/node/2453659):

Notice: Undefined property: stdClass::$field_watch_config_scheme

 

GIMP for Kids

 

My daughter likes to draw on the computer. I don't remember exactly how it started, but she draws in GIMP using my Genius pen tablet, on my secondary monitor. I used to have Linux running in a VirtualBox with GIMP running on my second monitor for her, but VB doesn't completely work in Windows 10 yet. A while back I tried running GIMP on one of my Raspberry Pi's but it was just too sluggish to be useful, frustratingly slow for a (then) 3-year-old. It runs much better on a Raspberry Pi 2. It still lags if she goes crazy with a big brush, but it works.

Die Fly: Designing a better fly swatter

I was looking through some of my old stuff for something and ran across this gem. If you need to put together a quick flyswatter, try this one I designed for a class in college (the famous Rube Goldberg project).

Here are a few excerpts from the attached PDF. If this doesn't convince you to build one (perhaps with several improvements as noted in the document), I don't know what will.