Feeds:
Posts
Comments

Posts Tagged ‘Books’

March already? Far too much time has passed between posts, but I’ve been hard at work on a new photograph and video to share.

Cha Cha Cha Cha Cha Cha — Pedro Garcia, 1958

Cha Cha Cha Cha Cha Cha — Pedro Garcia, 1958

Way back in 2012 I made an attempt at creating a photo built around a super cool album cover that featured a slinky masked dancer cavorting about beneath a cascade of streamers and balloons (seen to the right). After staging and shooting the photo, the images lingered in my computer, and as I prepped for my 2013 summer show at the Pannikin in La Jolla, I simply abandoned what I’d shot. Oh, sure, I could show you the unfinished work here and now, but the OCD in me would probably try to make a diamond from a pigs ear and I’d spend weeks and weeks trying to at least make the failed composition look presentable. Instead, let’s jump right to the brand new photo — which I like!

Madame Paparazzi's wicked danse of seductive transformation

Madame Paparazzi’s wicked danse of seductive transformation

I actually took over 30 shots of this staging, then constructed the final image from the 7 best images, layering portions of each photo one atop the next to achieve deep focus throughout the final piece.

I tend to be easily distracted while working on my creative pursuits, so rather than snap the photos, sort through the candidate images, and plow through with all the necessary image adjustments, I ended up creating a video for the photo before I actually completed the photo (and, yes, that is possible in the world of Wind-up Dreams & Vinyl Nightmares). The frames for the animation were taken while I was deconstructing the stage set, and then reassembled into a free flowing pan’n’scan video using a whole bunch of software: Aperture, GraphicConverter, iDraw, and a new (to me) slideshow package called FotoMagico that allowed me to create deeper zooms than I’d used in previous animations. Nice piece of software worth checking out!

In an ideal world making one of these videos would be really simple: I’d come up with an idea, I’d choose some music, I’d shoot all the frames, and — voila! — there I’d have a finished video! Remember, though, that I begin with the finished photo, and, therefore, the last frame in the animation. The trick, then, is to conceive of the story in reverse, and begin taking things away from the scene in an order that will make some logical narrative sense once everything is reordered to run from start to finish. Oh, and without a sense of the audio that will be used.

This is… tricky.

Ah! But luckily, not impossible, and even when mistakes are made (for instance, removing objects out of order or completely reconsidering the storyboard during post production) software makes nearly anything possible.

Let’s take a look!

Read Full Post »

Warning!
This post is a long and perilous journey into the technical abyss! If you’re currently grinding towards a deadline on a crucial project, and simply must know how to put an image on the back page of an Apple “mini book” RIGHT NOW, scroll down to Creating Custom Book Themes where all the technical step-by-step stuff begins. Alas, you’ll miss out on all the entertaining background minutia, and my usual distractible writing. Hey, I’ve been there too! So come back later and re-read for your enjoyment!

Download my custom book theme that supports back pages for mini books:

Custom Mini Book Theme

Introduction

Several months back I took a break from my usual ramblings on art, music, and pop culture to write an exhaustively long post on how to copy and reuse adjustment brush masks in Aperture, Apple’s high end photo management software. That post was born from my frustration with what I perceived to be a sorely missing feature in Aperture, and has proven to be wildly successful with photographers who, like me, spend ungodly hours fine tuning every last visual aspect of the images they capture.

Being an engineer by training, it has long been my belief that anything is possible; it’s all just software. Send a man to the moon—software. Rig a presidential election in a third world country—software. Time travel is within our grasp. It’s all just software.

Brief aside, just to prove a point
Take the horror classic, The Fly (either the 1958 original, or the 1986 remake starring Jeff Goldblum). How do you think he made all that magical atoms-flying-through-thin-air teleportation possible? Software! And why did he end up becoming a mutated half-man half-fly? Yes, that’s right! It was clearly a software bug (no pun intended). With just one line of code, disaster could have been averted!

if (species(sourcePod) > 1 && any(species(sourcePod)) == FLY)
DO NOT TELEPORT!!

So, yeah, software. If Apple’s software doesn’t do what I want… I’ll just figure out how it works and see if I can come up with a creative solution to make it perform as I wish.

Recently, I had yet another occasion to devise a workaround to a limitation in Aperture, and I thought I’d share it with the rest of the digital photo community. This little bit of software mayhem involves the design and customization of Aperture book themes. By no means, though, is this going to be an exhaustive study on the subject, but it will hopefully provide you with just enough information about how the themes work and can be modified. Moreover, my example will show you how to do something not otherwise possible with Apple’s built-in themes: produce mini books with custom back covers.

The background

Deluxe Edition box cover

Over the past couple of months I’ve been working on producing a Deluxe Edition package for Plastic Prophets of Vinyl Redemption, the digital coffee table book of my photography I created for the iPad. The deluxe package delivers the digital book on a flash drive worn around the neck of a kewpie doll packaged inside a custom designed box. A bunch of additional features are also stored on the flash drive and included inside the box: PDFs, desktop patterns, stickers, a COA, and other things. One of the extra special features is a limited edition 32 page “mini book” containing many of the full page images from the digital book. I used Aperture to design the mini books, which Apple prints at 3.5 x 2.6 inches with a soft bound, wraparound cover. Cool, right?

Well… almost.

You can have any back cover you want… as long as it is white. Ugh!

In designing the mini book to accompany the deluxe edition of Plastic Prophets, I was disappointed to discover that the one and only Small Book theme does not allow customization of the book’s back cover. Most other themes provide this capability, either by setting the front cover to be a two page spread (back on the left, front on the right), or providing a dedicated Back Cover page as the last page layout in the book. No such luck when laying out a small book! By default, the layout of the front page consists of a large photo occupying the upper three fourths of the cover, with space below to provide a title on a white background. Kind of boring, but like any page in Aperture’s book design interface, the layout can be modified in all kinds of way: photo cells can be resized, text boxes can be changed, and the background of the page can be set to a different color (though, alas, not in the Small Book theme).

For my book, I removed the title field and expanded the photo box to fill the page. I then dropped in my cover page, which I had designed in another application and previously imported into Aperture as a large JPEG.

Small Book - cover layout

To the left is a screen capture showing the initial cover page in place. The arrow points to the disclosure triangle that, when clicked, normally displays a popup menu of the cover layout choices for the current book theme. However, no matter how hard you press, no matter how long you hold down the Control key, and no matter how much you wish and hope… there’s no way to get the Small Book theme to show the popup that would otherwise allow you to select a different cover page layout.

And that’s because…

There are no additional cover layout options for the Small Book theme!

Likewise, scroll to the bottom of the page list where, in other themes, you are able to select the last page in your book and choose from one or more back cover layouts, and you discover that the last page in the list is just that… a normal page; the last to be printed inside the book before what you had hoped to be a custom back page. No way to change that in Apple’s Small Book theme. Boo! Hiss!

Last page layout options — no back cover!

Resigned to these limitations, I went ahead and ordered the requisite 3-pack. I mean, no back cover is better than no book at all, right? Here’s the set of books as they arrived from Apple (love the little individually wrapped plastic pouches!).

Mini books using Apple's default Small Book theme

The books are, of course, very nicely printed, and look great inside and ou- Oh, wait… Okay, they look great inside, and they look half-great outside. That bare back page just looks so ridiculously incomplete! Agree? Of course you do! Wouldn’t the book look so much better with a printed back cover? Again, you agree! And so I put the now seldom used engineering part of my brain to work figuring out how I could get Aperture and Apple to put something wonderful on that frustratingly vacant back page.

The failed workarounds

Before we get to the “How I Did It” good stuff (and feel free to scroll down to the discussion of how to create custom book themes), let’s take a look at some of my failed attempts to print on the back cover, and perhaps learn something about how Aperture books work.

It’s obvious that Apple’s print labs have the capability of printing on the back cover, as that feature exists for all other softcover book sizes. In fact, Aperture actually generates a back cover for small softcover books—it’s simply blank. Let’s take a peek at the PDF.

PDF generated by Aperture for the Small Book theme

Ah ha! See that? The first page of the PDF generated by Aperture is a double-wide page that combines your illustrated front cover with a blank back cover, which will be printed on a single 7.59″ x 2.75″ sheet of paper that wraps around the interior pages to form the front and back covers—just like we saw in the printed test books.

Wait a second! 7.59 inches?!?! Isn’t that a LOT wider than two small pages?

Yep! We’ll have more to say on that intriguing topic in a bit, but first, let’s consider the PDF. If this is the source delivered to Apple and subsequently fed into their printers, doesn’t it make sense that an image placed on the left side of that looooooong page would also be printed? I mean—come on!—it’s the same piece of paper! Right?

My first thought to force Apple to print a back cover was to intercept the PDF file at the Preview Book stage, modify the first page of the PDF with a back cover image, replace the PDF in its super secret temporary folder, and then allow Aperture to blissfully continue with the Buy Book process. Brilliant!

Except… it didn’t work.

Oh yes, Aperture dutifully uploaded my Franken-PDF to Apple’s print servers, where it was summarily rejected with an email claim of “a problem with my order.” I tried all kinds of things to get the servers to accept a modified PDF file: simply annotating the back cover space, deleting a page, changing the file’s modification date, and more. But every attempt resulted in a failed order.

Aperture itself seemed to be happy with my changes, with the failures always coming on the back end. As near as I can tell (and I didn’t go to the trouble of confirming this 100%, so take my theory with a grain of salt) Aperture likely tells the print service, “Hey! I’m about to send you a big ol’ file, and that file is EXACTLY 42 bazillion and 12 bytes long!” The print service gets all happy, makes room for a gigantic file, and waits for all that glorious book data to arrive. The print service (though generally happy) is also more than a little inflexible and insists that the file it receives is precisely the length that Aperture told it to expect. One byte too many, one byte too few; and the print service becomes annoyed, assuming that Something Bad Happened™ when Aperture tried to deliver the book over the sometimes flakey internet. Basically, this is standard Computer Science 101, protecting the customer from receiving something they had not expected.

Theories aside, this meant was that Apple’s print service would only accept a modified PDF file if the length of the file was exactly the same as the PDF originally generated by Aperture. And good luck modifying a PDF without changing the file size…

Back to the drawing board…

If the PDF could not be changed it only made sense that a better workaround would be to somehow get Aperture to generate a PDF with a back cover for me. The pesky print service would be no wiser, and—hopefully—would print an image in the space reserved for the blank back cover.

Digging into Book Themes (AKA — The Good Stuff)

For this example I’m going to create a new version of Apple’s one-and-only “mini book” theme, Small Book, adding the otherwise missing ability to layout back cover designs. As you might suspect, Aperture stores its book themes inside the application package.

  • Open the Finder and locate the Aperture application
  • Select the Aperture application and control-click to show the pop-up menu of things you can do with the selected file
  • Choose Show Package Contents from the pop-up menu to open the folder containing the package contents of Aperture

Package Contents of the Aperture application

The themes are stored a couple of directories deep within this folder, but not far:

Contents : Resources : Book Themes

Book Themes folder inside the Aperture application package

And there they are!

Each folder contains the collection of book sizes that can be designed using that particular theme. So, for example, if you peek into Art Collection you’ll find three folders:

ExtraLarge
Large
Medium

Each folder contains the set of files that together define the features and layout options that are available when designing a book of that theme and size. If you were to create an extra large book based on the Art Collection theme, the features of the theme and your design options will be dictated by the files inside Art Collection : ExtraLarge.

Aperture recognizes that a particular book size is available for a given theme based on the presences of these folder names. In addition to the three standard sizes noted above, one more special folder name is available to identify support for Apple’s small books:

Mini

Only one book theme includes a Mini folder, that being Mini Picture, and that’s exactly where we’ll find the definition files for the Small Book theme. To be on the safe side, we’ll copy Mini Picture to a safe location outside the Aperture package where we can more easily make changes. This copy of Mini Picture (which we’ll call Custom Mini Picture) will be the basis for our brand new book theme that will support back cover layouts.

Anatomy of a theme folder

Let’s take a look at the files and folders contained inside the root directory of Mini. Remember, our focus is going to be on providing support for back cover layouts, so we’ll talk about the folder contents in three parts: Image Files, Nice To Know, and The Essentials. That’s right, the first two sections don’t really play a role in customizing the back cover, so feel free to skim your way down to those juicy essentials. Or, stick around for a quick introduction to other aspects of theme customization.

Contents of a theme folder

Image Files

Preview.tiff is an image file Aperture displays in the Theme picker dialog to illustrate how books created with this theme will appear when printed. Similarly, Thumbnail.tiff is used by the Theme picker to represent the book in the list of book themes. You can provide your own TIFF images with these names to give your book a custom look in the theme picker. I left these images untouched in my custom theme, choosing instead to distinguish my theme simply by its name.

Nice To Know

InfoFormats.plist
PhotoFilters.plist
TextStyles.plist

These three files allow you to define the default appearance of various book design capabilities such as EXIF display formats, photo color washes, and (duh) text styles. For example, if your theme would benefit from images that sport overly saturated colors, you could add a new item to the Photo Filter popup by modifying the contents of PhotoFilters.plist. We’ll save the details of how to do this for another post!

Aperture provides further theme customization opportunity via an additional set of files and folders in the root folder of a theme (though not present in Apple’s Small Book theme). These customizations include definitions for background colors, picture frames, and other graphic elements. Like the filter, format and text styles above, we’re going to defer in-depth discussion for a future post.

The Essentials

Where better to begin a conversation about theme files, than with a file called Theme.plist? Promising, no? Every theme variation (Extra Large, Large, Medium, etc) includes a Theme.plist file that provides a dictionary of essential information about the theme in XML format. Required dictionary terms and their associate data type, include:

version (integer)

Basic source control, and usually set to 1, though if changes are made to a theme this number would be changed.

type (sting)

Identifies the book size defined by this theme. Recognized values include:

    • ExtraLarge (for Extra Large books)
    • Standard (for Large books)
    • Medium (for Medium books)
    • Mini (for Small books)

Theme.plist also includes terms that dictate the placement of page numbers (pageNumberMargin), as well as those that identify default settings for the text style and EXIF formatting items discussed above under “Nice To Know” (defaultTextStyle and defaultInfoFormat, respectively). Browsing around Apple’s collection of themes and you’ll also encounter items that specify map styles (defaultMapStyle in the Photo Essay and Journal themes), prevent photo frames from being resized (disableFrameScaleAndRotation) and… well, there’s a dictionary item called size that remains a bit of a mystery.

All well and good.

Excerpt of the Theme.plist file for Large Picture Book

Much more relevant to our goal of creating back covers for mini books is the rest of the file, which serves as a table of contents for the various page layouts available under this theme. Note the specific use of the term “table of contents.” While a quick scan of the file reveals all kinds of page-related information, these terms are by no means a complete list of all the page layouts supported by the theme; that information appears elsewhere, and will be discussed below. Rather, this data serves as a guide to various groupings of related layout types, that make up various sections of the a book or Aperture’s book design user interface. These groupings include:

leadingPages
trailingPages
indexPages
repeatingPages
orderedPages 

Each of these sections is expressed as an array of strings that identify page layouts the user can choose from when designing that particular part of his or her book. repeatingPages and orderedPages are somewhat special, as they define sets of pages used by the Aperture UI when constructing the initial layout of a book. We mention these special terms only to contrast with how cover pages are treated in Theme.plist. Though most themes support a variety of cover layout designs, the dictionary entry for cover pages is not specified as an array of strings. To illustrate, let’s take a look at the cover page definition for the Small Book theme:

<key>frontSoftcover</key> <string>01_Cover</string>

You might think that makes perfect sense, as the Small Book theme provides only one cover layout and—as we know—no customizable back cover. What about a more a more capable theme? Picture Book supports two front cover layouts and two back cover layouts, so let’s take a look at Theme.plist for that theme:

<!-- Default SoftCover pages -->
<key>frontSoftcover</key> <string>01_FrontSoftCover</string>
<key>backSoftcover</key> <string>01_BackSoftCover</string>

That’s it. Only two of the four layouts is defined, and neither dictionary item is an array of XML terms. Aperture possesses lots of internal logic for the treatment of covers, and relies on the presence of frontSoftcover and backSoftCover to define the structural “root” for those book elements.

We’ll get back to Theme.plist in a moment to begin making changes for our custom theme. First, though, to dig a little deeper into the anatomy of Aperture page layouts, let’s continue examining the contents of the theme folder.

Localizable.strings

Inside the theme folder you’ll notice a handful of language specific folders for English, French, German, Japanese, and Chinese:

English.lproj
French.lproj
German.lproj
Japanese.lproj
zh _CN.lproj

Each of these folders contains a single file—Localizable.strings—that Aperture uses within its user interface to communicate information back to the user in his or her chosen language.

Yay! Translation! Good stuff!

You might assume that this file is inconsequential when extending the design capabililites of an existing theme. You would be woefully wrong! While the file does contain language translations, it is also used to define various theme capabilities, including available background colors, filters, photo frames, and… page layout options.

Near the bottom of the file you’ll find a series of string definitions that identify the types of page layouts that can be specified when using this theme. For Small Book, these definitions look like this:

Page layout popup

pages.01_Cover = "Cover";
pages.02_Title = "Title";
pages.03_Photo = "1-up";
pages.04_Photo_Full = "1-up Full";
pages.05_Photo_Spread = "1-up Spread";
pages.06_Blank = "Blank";

You should immediately recognize the strings on the right side of each definition as text that appears in the popup menu when changing page layouts, as illustrated in the example to the right. You’ll also notice that a portion of the left side, 01_Cover, matches what we saw in the frontSoftcover term in the Theme.plist file.

This is where things get interesting, and just a little bit murky…

Page names inside book themes

Aperture page layouts are specified in Localizable.strings by string identifiers of the form:

pages.nn_xxxxxxx = text string;

Where ‘nn’ is a two digit number, and ‘xxxxxx’ is a name to this page. The ‘xxxxxx’ name component of the identifier is especially interesting, as it maps directly to a corresponding plist file in the theme’s Pages folder. The plist file contains the default layout for that specific page in XML format. Let’s compare the identifiers in the Small Book theme to the contents of the Pages folder:

Pages folder for the Small Book Theme

The mapping, therefore, of page layout identifiers to page layout files, looks like so:

pages.01_Cover ➞ 01_Cover.plist
pages.02_Title ➞ 02_Title.plist
pages.03_Photo ➞ 03_Photo.plist
pages.04_Photo_Full ➞ 04_Photo_Full.plist
pages.05_Photo_Spread ➞ 05_Photo_Spread.plist

Note!
Astute readers will notice that there is no corresponding plist file for the identifier, pages.06_Blank, which otherwise appears in the Localizable.strings file. As you might guess, there’s generally no need to define a page layout when that page is intended to be blank… as long as the pages of your book are white! Some book themes (notably, Stock Black) include a layout for blank pages, if only to specify that the background color of that page is black. Even though a page layout file may not be necessary, an identifier for blank pages should still be included in Localizable.strings to provide that menu option when laying out a book—and Aperture applies its own internal logic to do “all the right things” with blank pages.

Continuing our peek at the Small Book theme and working backwards from the “Cover” item in the page layout popup:

“Cover” ➞ pages.01_Cover ➞ 01_Cover.plist

Which is where we can find the XML code that produces the default cover page layout for the Small Book theme.

Where do these page layout identifiers come from?

The format of the page layout identifiers is very important, and seems to dictate how Aperture will apply logic to the availability of each page layout as a book is being designed. Exactly how this logic is applied and how the desired behavior dictates the name and number components of an identifier remains a bit of a mystery. I suspect that the relationship is somehow defined in portions of the application I’ve as yet been unable to explore. In any case, my experience has shown that there is a fairly strict set of identifiers, and the page definition strings in custom themes must match these identifiers exactly.

Page identifiers for cover layouts

Luckily, defining page definition strings for front and back covers is fairly straightforward, following a (mostly) predictable pattern, and that will suit us just fine in our effort to create back covers for Apple’s mini books. From the examination of other softcover themes, Aperture offers two front cover layout variations, two back cover variations, and a single front’n’back wraparound spread. There are additionally a handful of theme-specific (and mostly legacy) cover layouts that don’t follow the general pattern we’ll discuss here, as well as a fairly robust suite of variants for laying out front and back cover flaps (which apply to only hardcover books).

Most every book theme provides the following list of page layout definition strings for the design of softcover books:

pages.01_FrontSoftCover = "Front Soft Cover - Default";
pages.01_BackSoftCover = "Back Soft Cover - Default";
pages.02_FrontSoftCoverBleed = "Front Soft Cover - Bleed";
pages.02_BackSoftCoverBleed = "Back Soft Cover - Bleed";
pages.03_SpreadSoftCover = "Spread Soft Cover";

However, as we just saw, Apple’s Small Book theme defines its covers differently:

pages.01_Cover = "Cover";

No back cover, no two-page spread option. No wonder you’re not able to design a back cover!

Creating Custom Book Themes — Let’s make changes!

Okay! Time to start making changes! Remember, we’re working on a copy of the Mini Picture theme, which we’ve renamed Custom Mini Picture. Let’s start by making changes to Theme.plist. Recall that this theme includes only a single cover dictionary term:

 <key>frontSoftcover</key> <string>01_Cover</string>

For our modified theme we want to introduce back cover layouts, and provide a wider selection of choices when designing front covers (including a two-page front’n’back wrap). So let’s bring our Custom Mini Book up to par with other softcover books. In Theme.plist we’ll replace the above front cover term with terms for both the front and back covers. We’ll also add a little documentation, because documentation is good!

<!-- Default SoftCover pages --> 
<key>frontSoftcover</key> <string>01_FrontSoftCover</string>
<key>backSoftcover</key> <string>01_BackSoftCover</string>

Notice that we are also changing the string for the frontSoftcover to match the nomenclature used by other themes. Like documentation, consistency is also good!

Those are the only changes required to Theme.plist. Save your work, and we’ll next redirect our attention to Localizable.strings. The first modification we’ll make is to the theme name.

At the very top of the file you’ll find:

/* Theme Name */
ThemeName = "Small Book";

This string is the name of your theme as it will appear in the Aperture theme picker dialog. To distinguish our custom theme from the original theme, let’s change this string:

/* Theme Name */
ThemeName = "Small Book with Back Cover";

Next, we’ll modify the page definition strings to include a set of definitions that will support a variety of front and back cover layouts. We’ll replace the default cover:

/* Pages */
pages.01_Cover = "Cover";
pages.02_Title = "Title";
pages.03_Photo = "1-up";
    :

With the full list of five cover choices supported by other themes:

/* Pages */
pages.01_FrontSoftCover = "Front Soft Cover - Default";
pages.01_BackSoftCover = "Back Soft Cover - Default";
pages.02_FrontSoftCoverBleed = "Front Soft Cover - Bleed";
pages.02_BackSoftCoverBleed = "Back Soft Cover - Bleed";
pages.03_SpreadSoftCover = "Spread Soft Cover";
pages.02_Title = "Title";
pages.03_Photo = "1-up";
    :

Notice that we have completely eliminated 01_Cover, replacing it with the more standard 01_FrontSoftCover, while adding in several additional cover variants. That’s all that we need to change in Localizable.strings. Once again, don’t forget to save your work! We”ll leave it as an exercise to the reader to make similar modifications for each of the language specific files included in the theme folder. 🙂

Making modifications inside the Pages folder

We can now focus our attention on the page layouts for each of our five new cover variations. As we saw earlier, the layout for each page available in a given theme is stored in the Pages folder. For the lone cover provided by Apple’s Small Book theme there was only one file, 01_Cover.plist, but as we saw above, we’ve changed instances of 01_Cover to 01_FrontSoftCover. We’ll likewise need to replace 01_Cover.plist with a new file, 01_FrontSoftCover.plist so that Aperture will be able to find our layout modifications.

01_Cover.plist file name changed to 01_FrontSoftCover.plist

Let’s venture inside the file for a peek at how page layouts are structured. We won’t be making many changes, as we want to retain the default front cover layout in our custom theme. We will, however, use this opportunity to explore the file, and make note of several important highlights.

Page layout for the default front cover

The default front cover is a typical XML file containing dictionary terms that define the physical layout of customizable elements, such as placeholders for photos and editable text field. At the top of the file is the one XML term we plan on changing:

<key>type</key> <string>Cover</string>

As you would guess, we’ll update this term to mimic the name that now identifies the default front cover in Localizable.strings:

<key>type</key> <string>FrontSoftCover</string>

The remainder of the file consists of a single dictionary element that defines an array of customizable UI components. For the default front cover, these elements consist of a front cover photo, plus a text field for the book’s title. Each array element is itself a dictionary of terms that define where this UI object will appear and how it is to be displayed. Most of these terms are fairly straightforward and provide a lot of flexibility in laying out the default UI for a page:

type (string)
Specifies the type of UI object defined by this element. Values include:

TextField
PhotoCell
Graphic
InfoField 

identifier (integer)
Identifies this UI object on the page. I’m assuming that the identifier is intended to be unique and sequential, as this is the case for most other themes. This value is not unique, however, for the UI elements in the cover layout file of the Small Book theme. Apple sets the identifier value to 1 for both the photo cell and title text field, so I left these values unchanged in my custom theme.

size (string)
Specifies the width and heigh of the object, expressed in inches: [width, height]

center
topLeft
topRight
bottomLeft
bottomRight
 (string)
Specifies an anchor point for the UI object—i.e. “the top left corner of the object is at….” Aperture will render the UI element relative to this specified point. The location is expressed in absolute coordinates with the origin at the lower left corner of the page. Again, values are expressed in inches as: [x, y].

The above terms may appear in the dictionary for any UI object. TextField objects are extra special, possessing an additional set of terms for specifying the style, alignment and default contents of text:

style (string)
Specifies a name term found in the TextStyles.plist file that identifies the default style to be used for rendering text typed into this field.

alignment (string)
Identifies the default alignment characteristic for text typed into this field.

default (string)
Specifies an identifier mapping back to the Localizable.strings file, that will contain the default text to appear in this field when new pages are added to a book. For example, in Apple’s Small Book theme. the cover page layout specifies that the book’s title field defaults to the identifier: InsertATitle. A quick check at Localizable.strings reveals that InsertATitle is replaced by “TITLE HERE”, which is the text you’ll see in the title field when a Small Book is created.

With our single change to the default cover page now in place, this file can be saved and we can go about the task of creating additional cover layouts for the front and back cover, as well as a two page spread that will print on the front and back.

What about the rest of the cover pages?

Now that we’ve seen how Aperture treats cover pages and page layout in general, we can define the remaining cover pages required for our custom mini book theme.

But you don’t want to watch me type, do you? Nah!

Instead, download my Custom Mini Book theme here, and follow along as we discuss aspects of the custom theme that provide the ability to provide bright and colorful back covers.

Download the theme and navigate to the Pages folder:

Pages folder for the Custom Mini Picture theme

In this folder you’ll find page layouts for each of the five cover choices discussed earlier in this post. There are two front covers (01_FrontSoftCover.plist and 02_FrontSoftCoverBleed.plist), two back covers (01_BackSoftCover.plist and 02_BackSoftCoverBleed.plist), and a single two-page spread cover (03_SpreadSoftCover.plist). We’ve already discussed the contents of the default front cover, and the full bleed cover variants for the front and back offer little in the way of excitement (both contain a single PhotoCell element that fills the entire page… yawn). Let’s move our attention to the default back cover, 01_BackSoftCover.plist, which is displayed below:

01_BackSoftCover.plist

As you’d expect, the dictionary for this layout begins by defining the type as BackSoftCover, matching the file name and all the other relevant information pertaining to this layout in Theme.plist and Localizable.plist. More interesting is an added dictionary term in the Photocell element: leftPage, which possesses an additional attribute, mirrorLocation, which defaults to true. To be honest, I don’t know exactly what this does and why it would be an attribute of the photograph and not the entire page. I included the term in my custom theme to mimic the structure of other themes that support back cover designs. Applying a little guesswork, I suspect that leftPage has some kind of role in the logic Aperture applies to force back covers to always fall on the left side of a side-by-side page layout. (Wish I could be more helpful there…)

More interesting (and, our ultimate goal!) is to see how the layout for a two-page wraparound cover is defined. The two-page cover for my custom mini theme is defined in 03_SpreadSoftCover.plist, and we can examine the contents of the file below:

03_SpreadSoftCover.plist

Okay! The layout isn’t that much different than that of a single page; we have a type (SpreadSoftCover), a PhotoCell, and a TextField for the title. Two aspects of this file make a two-page spread possible:

<key>spread</key> <true/>

Setting the spread attribute to true tells Aperture that the layout for this cover will encompass a pair of side-by-side pages, and trigger other logic that prevents specification of a standalone back page. Give it a try! The last page of a book design can only se set to one of the various back cover choices when the front cover is not designed as a two-page spread.

The second notable aspect of a two-page spread is the width of the PhotoCell element, which is set to 7.08 inches and placed at center of the two-page spread. 7.08 inches matches the width of a mini book’s internal spread pages, and provides for a little bit of edge bleed for photos dropped onto the page. This element is also placed relative to a center point—a nice, effective way to provide center alignment for UI objects.

Installing the custom book theme

Installing a custom book theme is simple:

  • Quit Aperture
  • Open the Finder and locate the Aperture application
  • Select the Aperture application and control-click to show the pop-up menu of things you can do with the selected file
  • Choose Show Package Contents from the pop-up menu to open the folder containing the package contents of Aperture
  • Navigate to Contents : Resources : Book Themes
  • Drag the Custom Mini Picture folder to Book Themes

Custom Mini Picture book theme installed!

Using the new theme

Once your custom theme is installed it can be used like any other Aperture book theme, but now with all the new features you’ve added!

Custom mini book theme in the theme picker

Click on the Theme button in Aperture’s book interface, select “Small” from the Book Type popup, and you’ll find the new custom mini theme added to the list of available themes. With our custom theme selected we’re now able to modify the front cover design from a menu of several layout options, including a full bleed cover and the deluxe two-page wraparound design we sooooo covet.

Multiple cover choices for mini books!

And what about the back cover?

With the front cover set to one of the “Front Soft Cover” page layouts, scroll to the bottom of the book, select the last page, click on the popup disclosure triangle, and…

Selectable page layouts for the back cover!

Voila! We now have the ability to design a back cover for a mini book!

I know what you’re thinking…

Oh sure, it looks nice… but what about the PDF sent to Apple?
And will Apple even accept such a monstrosity?
I mean—come one!—front and back covers living in sin!

Excellent questions! First, let’s go through the book buying process and preview the PDF file that results from our modifications. Remember, this is a small book designed to have separate front and back covers.

Mini book PDF when separate front and back covers are included

Awesome! We now have an image on the back cover of the PDF that will be sent to Apple’s print service! But don’t click Continue and commit your money just yet…

What about those two strips of white space? One on the left, and one splitting the center between the front and back cover images? That looks… weird. Actually, it is completely normal for a softcover book!

The thin strip in the center is expected. That’s where the single-piece, softcover, wraps to form the book spine. This strip matches the page background color. In the example above, since our custom theme doesn’t define a background color, Aperture assumes white. For other books the default is black, or tan, or some other color.

Okay, I get that. It doesn’t look very good, but I get it.
What about that other fat strip of white on the left?

I admire you’re aesthetic, because—no—it does not look very sharp at all. But that is what you get when you place a full-bleed photos on the front and back covers. We’ll take a look at a more effective design in a moment, but first let’s discuss the “fat strip” on the left.

(Thanks)

Remember the mystery of the 7.59″ wide PDF pages we discussed waaaaay back at the beginning of this post? Aperture generates that extra wide page for the front and back covers when preparing the PDF that will be sent to the print service. As we know, mini books are printed 3.5 inches wide, though, while the internal pages of the PDF are a bit wider at 3.63 inches to provide about an eighth of an inch of excess printing to insure a full bleed when the pages are cut. Two pages side by side would be roughly 7.25″ including the bleed for the front and back covers. That’s more than a third of an inch unaccounted for! What gives?

No matter the length of the book, the cover page in the PDF is always 7.59″ wide. In assembling the book Aperture determines the width of the spine based on the total number of book pages. In the example above, the cover page was generated for a book containing 32 total pages. Let’s see what happens to the spine when Apple’s skimpiest (20 page) book is created:

Cover PDF for a 20 page mini book

Ah ha! There’s no ugly spin space at all! And what if we create the longest (100 page) book possible?

Cover PDF for a 20 page mini book

So, as you can see, Aperture “slides” the back cover to the left as the number of pages increases, and trims whatever remains on the left edge before binding. Here, for a very thick book (nearly a half inch!) the white spine doesn’t look so bad. In fact, you may have created Large or Medium sized softcover books in the past with perfectly reasonable results. Alas, the margin for error for book binding shrinks with the size of the book, and who knows where that skinny bit of white will fall when assembling a thin book.

Design practices for mini books

You’ve probably noticed that most softcover themes default the front and back cover layouts to designs that center a photo on a uniform colored background. Why would that be? Simple. The process of cutting pages and assembling a book is not nearly as precise as the pixel perfection of a computer screen. To illustrate, take a look at the PDF for a softcover book created with the Medium Picture Book theme:

Front and back covers using Medium Picture Book theme

Note how the default background color unifies the front and back covers. When the page is cut, and wrapped around the internal pages during binding, there’s a little bit of leeway in where the wide cover is folded at the spine. With a uniform color spilling from front to back, an error of a fraction of an inch isn’t going to be noticed. But where two full bleed images are separated by the skinny strip of white we saw in the PDF generated for out custom theme… a fraction of an inch is the difference between a sharp binding and a sloppy binding.

I chose to skip support for background colors in my custom mini book theme, as I had a specific goal in mind for the back cover imagery I wanted to include in my special edition books. Luckily, adding support for backgrounds is relatively simple. We’re not going to go into the details here, but it all comes down to adding a plist file that defines the RGB values for your background, placing that file in the Backgrounds folder, defining the background in Localizable.strings, and adding a reference to that definition as a dictionary term in the front and back cover page layout files. Take a look inside the Medium Picture Book theme and the process should be fairly clear.

My solution — the Spread Cover

Adding a two-page spread to the front cover page

For my special edition mini book I wanted to create a colorful wrapped cover without white space on the spine. The solution was to set the front cover layout to Spread Soft Cover—one of the new cover variants added to the Custom Mini Picture theme. The cover graphics for the front/back spread was created in another application, then imported back into Aperture and dropped into the double-wide photo cell. Preparing this image required a bit of careful thought, however, as—even with a two-page spread—Aperture will generate the cover page in the PDF at 7.59″ wide. And as we’ve seen, that page will be trimmed to an overall width that accommodates the variable-width spine. As always is the case when printing an Aperture book, careful review of the Preview PDF prior to placing your order is highly recommended!

PDF Preview spread cover for Plastic Prophets of Vinyl Redemption

As above, I was aware that a small amount of the left side of the back cover would be trimmed during binding, so I chose a textured background for the back cover that would easily “survive” any cut of the printer’s blade. I also right shifted the image and logo by just a little, again understanding where the left edge trim mark would be for a 32 page book.

The proof is in the printing

So… did it work when my custom theme mini book was sent to Apple?

Mini books printed with full color back covers!!

It did!!

Feel free to use my custom mini book theme to provide back cover graphics for your mini books, and please contact me if you run into any problems or have questions about customizing book themes.

Read Full Post »

Once upon the time, while running late for a movie and standing stuck behind a pair of large sedentary  teens on an escalator at the mall, I planned on writing a book with the above title.  In the many years that have passed, and constant observations that support the title, I have yet to pen word-one of my cynical (but true!) worldview.

So I’m starting a blog instead.

This is my blog.

It’s not just about teens intellectually lost in a world of consumerism and  illiterate text messages, I’ll also be writing about more engaging topics like art, music, books, film, and awesome toys.  I’ll also be posting about my own creative pursuits, like fine art photography and writing projects.

So there you go!  It’s my first blog entry, so I intentionally set the bar extremely low — curb level for my first step.

Next time, I may even post a picture or two.

Read Full Post »

Walk into any bookstore and behold the vast collection of titles sitting on shelves waiting to be purchased and read.  Hardbacks, paperbacks, picture books and guides. Fact and fiction, cookbooks and tall tales. Where did all these books come from and how did they travel from keyboard to printed pages with a price on the dust jacket?

Ah… such are the things an aspiring author (like me) wonders whenever a rejection letter arrives in the mail. In this case, the second rejection for The Extraordinary Adventures of the 25 Year Old Birthday Muse — this one, like the first, not from one of the major publishing houses (rejection you can sink your teeth into), but from a literary agency.  Publishing a novel, I’m finding, is not as straightforward as they make it out to be in the movies:

  1. Write wonderful book.
  2. Ship hopeful manuscript in sturdy cardboard box to publisher.
  3. Jaded editor lifts the lid on sturdy cardboard box, while hollering for a secretary to fetch a cup of coffee.
  4. Manuscript glows brightly from inside box.
  5. Editor skims the first page, flips to the second, the next and the next.
  6. Pages fly, the hands of a wall clock spin, the secretary brings cup after cup of hot black coffee.
  7. Editor slaps down the last page, exhausted — shouts “Gadzooks!” and reaches for the telephone.
  8. Your book is published and sells millions!

Nope, doesn’t work that way. The days of finding a home for your work based on an unsolicited manuscript submission are long gone. Today, the process works something like this:

  1. Write wonderful book along with equally wonderful query letter for prospective literary agencies.
  2. Send wonderful query letters to literary agencies.
  3. Wait for rejections to wonderful query letters and hope for a request for manuscript submission.
  4. Go back to step 2, until….
  5. Eureka! An agency expresses interest in your project!
  6. Submit manuscript (or partial manuscript for review).
  7. Wait for either….
  1. Rejection, because your book either…
  1. Sucks — go back to step 1
  2. Doesn’t quite fit the work the agency chooses to represent — go back to step 2
  1. Acceptance! Yay! Someone liked your book and you have an agent!
  1. The literary agency shops your work around to the publishing houses, making convincing pitches for your book or project.
  2. Rejections surely follow, but one day…
  3. …someone decides your project should become a real live book!

Today was step 7.a.ii with a note from the agency calling my manuscript “interesting and well-written.” The previous rejection was also a 7.a.ii, calling the story “playful, charming and entertaining,” so I can safely and with some confidence and determination trudge back to step 2 to try again another day.

In the meantime… anyone know a good literary agent?

Read Full Post »

%d bloggers like this: