Tables
Easy Selections
No matter where I click on a table with either Selection tool, InDesign refuses to recognize my “clicks” and doesn't select anything. But Selection tool-clicking works fine with everything else in InDesign, so I know the tool is working. |
The Selection tool doesn't let you select a single paragraph in a text frame, does it? Tables act the same way: You have to use the Type tool to select them or edit them. Once you understand that simple requirement, InDesign makes it very easy to select exactly what you want in a table. |
Here's one example: Click an insertion point inside a cell, and from there you can select the cell itself, the cell's row, the cell's column or the entire table via:
- The Table > Select submenu (which offers: Select Cell, Select Row, Select Column, and Select Table; Figure 3-23)
Figure 3-23 If you click inside a table cell with the Type tool, you can use the Table > Select submenu options to easily make a variety of table-related selections.
- The contextual menu (right-click, or Control-click with a one-button mouse), which also has a Select submenu;
- The keyboard shortcuts for Select Cell, Select Row, Select Column, and Select Table; which are listed next to the menu items.
If you hover with the Type tool over the top or left-edge table border, you'll see the icon turn into an arrow. Click to select an entire row or column, or click and drag to select multiple rows and columns. Hover over the top left corner of a table and the arrow points down and to the right, if you click when you see that arrow, the entire table is selected.
Scale a Table and its Contents
I know how to resize a table —I just hover over the lower right corner with the Type tool to see the double-headed arrow, then drag — but that maneuver doesn't also resize the contents of the table, which is what I really want. I can scale inline frames, why not an inline table? |
Ah, one of the great mysteries of life. |
While you can't scale an inline table, you can scale the text frame that contains it, which will also scale the table and its contents. To prevent scaling everything else in the text frame, you should isolate it in its own frame first. Select the table, cut it, paste it into an empty text frame, and choose Fit Frame to Content (from Object > Fitting) so the new frame hugs the border of the table.
Then select that frame with the Selection tool, switch to the Scale tool, and drag to scale it just as you would for any other object. The contents of the table will scale along for the ride.
You can copy or cut the scaled frame and paste it back into the original text frame (with the Type tool) as an inline frame if you want the table to be part of the text flow again.
Freely Rotate Cell Contents
Like Ford Motors in its early days (the Model T was available in any color, as long as it was black), InDesign lets me rotate text in a cell at any angle, as long as it's 90, 180, or 270 degrees. But need my column labels to be rotated at 30 or 45 degrees; 90 degrees is too hard to read. |
The tedious but do-able workaround is to put a cell's contents into its own frame, then cut and paste the frame as an inline frame into a cell. Now you can select the inline frame with the Selection tool and use any Transform command, including Rotate, freely. |
Add a Tab Inside a Cell
Whenever I click the Tab key inside a cell, InDesign moves my cursor to the next cell. I have set up custom tab stops for the text in this cell, all I want is for InDesign to honor them. |
That's a feature-not-a-bug for cell navigation. Use Option/Alt-tab to insert a tab within a cell. It will move the cursor to the next default or custom tab stop it encounters, just as it works outside of a table. |
Extend the Left Edge of a Table Outside its Frame
I'm trying to create a table that extends beyond the width of its enclosing text frame on both sides, evenly. I notice that I can drag the right edge of a table outside of the text frame with no problem. But the same isn't true of the left edge of a table — in fact, I can't drag the left border anywhere, I get the right-arrow cursor for selecting the row instead. |
Click an insertion point next to the table (not inside the table, but to the left or right of it) and change the horizontal alignment to Centered from the Paragraph or Control palette. |
That doesn't magically allow you to drag on the left border of the table, but when you increase the width of the table by dragging its right edge, the amount the table extends beyond the text frame will now be evenly split between the left and right edges (Figure 3-24).
Figure 3-24 You can't drag the left edge of a table past the left side of its enclosing text frame, but if you make the table wider than the frame and then center it, InDesign will do it for you.
Widen a Cell Without Widening its Column
One of the cells in my table is a little too narrow to hold the content that has to be there. If I widen the cell by dragging or Shift-dragging on its right-hand border, I change the layout of the rest of the table, which I don't want to do. I could select the cell and the one to its right and choose “Merge Cells,” but I don't really want to merge them into one cell — I need to keep the cell to the right as its own cell. |
Select both the cell that you need to widen and the one to its right (drag across to select both of them) and choose Split Cell Vertically from the Table or contextual menu. You now have four cells where before there were two. We'll call them Cell 1, 2, 3 and 4. |
- Select any text in Cell 1 and cut it to the clipboard. Set the cell's left and right insets to 0.
- Shift-drag the line between Cells 1 and 2 all the way to the left, as far as you can go. Cell 1 has now virtually disappeared, and Cell 2 is wide.
- Select Cells 2 and 3 by dragging across them, and choose Merge Cells (Figure 3-25).
Figure 3-25 Following the step-by-step instructions in the “Widen a Cell” solution on the previous page, you can adjust a single cell's width without adjusting the width of the other cells in the column.
- Click inside the merged cell and paste the text in your clipboard into it.
- Shift-drag the line between the merged cell and Cell 4 and drag to the left as far as possible without causing an overset in the merged cell. There's your wide cell.
Cell 4 should now be wide enough to hold the text that it originally held (when it was the one to the right of cell you needed to widen). If you run into minor alignment problems with the text in the merged cells, reduce the cells' left inset amounts.
Paste Pictures in Cells Perfectly
When I paste an image inside a table cell, I seldom get what I want right off the bat. I'll end up with a blank cell showing an overset, or a huge cell that ruins the formatting of the rest of the table. |
If you keep in mind that InDesign table cells are actually individual text frames, you'll be able to prepare the cell properly for accepting an image and avoid unpleasant surprises. When you paste an image into a table cell, it's the same as pasting an image into a text frame as an inline frame. All images in InDesign tables are, in fact, inline image frames. |
That means that you can move the image up and down in the cell with the Selection tool, but you can't move it left or right, just like regular inline frames. (In InDesign CS2, they can also be anchored objects, so they can sit outside the table cell or even outside the text frame.) It also means that the image is treated like a text character in some ways — it's subject to the text frame's (cell's) paragraph alignment, text insets, first line offset, vertical alignment, and so on.
Here are some general guidelines for working with images in tables. Before you paste:
- If you want the image to “kiss fit” the edges, select the cell and set its text inset to 0 from Table > Cell Options or from the Table palette text inset fields.
- If you don't want the cell to automatically grow to fit the image, ruining the table geometry, select the cell or row and set the Row Height to “Exactly.” (You don't have to worry about Column Width, that's permanently set to an exact amount.) Of course you should set a height for the row that makes sense at the same time.
- If you set the cell to an exact height, and you paste in an image that's taller than that amount, you'll end up with a blank
cell with an overset icon, and no way to select the image and scale it. Blech! To prevent this, open the Cell Options dialog
box and change the First Baseline Offset settings for the cell to Fixed (Figure 3-26). When you click OK, the overset frame will appear and you can click on it with the Selection tool to scale it or drag it
into place.
Figure 3-26 Banish empty-but-overset cells caused by too-large image frames by setting the cell's First Baseline Offset to Fixed.
- If you set the cell to an exact height, and you changed the First Baseline Offset as described, the entire image will appear in the cell, overlapping surrounding cells
and text if the image is larger than the cell. So you'll probably also want to turn on Clip Contents to Cell in the Cell Options
dialog box. That way the cell boundaries act as a clipping path for the image if it's too large (Figure 3-27).
Figure 3-27 If you set a cell to an Exact Height, and you set its First Baseline Offset to Fixed (Figure 3-26), and you turn on Clip Contents to Cell, images that are too large for the cell are much easier to deal with.
Then, after you paste the image in, you can select it with the Selection tool to drag it vertically, crop or scale it, apply transparency, and do other Object-related things to it. You can also select the image inside the inline frame with the Direct Select tool to adjust its position within the frame, or scale it without scaling its frame. Finally, you can drag over it with the Type tool and set text formatting commands like space above/below, indents (from the cell boundaries), horizontal alignment, and so on.
Update Table Data Without Losing Formatting
Between the powerful table features and the ability to place linked Excel spreadsheets, I'm in hog heaven. Well I thought I was in hog heaven, until the first time I used the Links palette to update a linked spreadsheet. When the text repopulated the table I had spend so much time on, all the formatting was lost! |
Yup, you're in hog hell. The good news is that there are a few different solutions, the not-so-bad news is that they cost a few bucks. |
First, Dave Saunders wrote a shareware cross-platform script called PopTabFmClp.js (Populate Table From Clipboard) which you can download, along with documentation, from his site: www.pdsassoc.com. After you've placed and formatted the original Excel or Word data into a table in InDesign, at any time you can go back to the Word or Excel file, select the updated data and copy it to your clipboard. Back in InDesign, you select the first cell of the formatted table and run the script from the Scripts palette (choose Windows > Automation > Scripts). The script pastes the data into the cell and reapplies the formatting.
There are also two plug-in solutions for this problem. The first is Teacup Software's (www.teacupsoftware.com) TableStyles, which lets you — surprise! —create named styles for tables. After you have saved your table formatting as a style, you can update the linked spreadsheet (which wipes out the formatting) and simply reapply the table style. Another solution is the InDesign plug-in SmartStyles from Woodwing Software (www.woodwing.com) which does a similar thing but with a very different user interface.