Wednesday, December 7, 2011

The Trick to Getting Column Strokes to Be in Front

Yesterday I was working on a table that needed to have red column strokes and white column rows. The column strokes needed to be on top. I thought it would be easy. I went to the Table Options dialog box (or command+Shift+Option+B...similar to the Text Frame Option dialog box, with a couple other modifier keys thrown in.)

The screenshot below shows the dialog box as it was set initially. I thought, "This should be simple. I just nee to change the stroke drawing order." So I then changed the stroke drawing order to Column Strokes in Front.

Row Strokes in Front

But nothing happened. I attempted it several times, but gave up, thinking I could tackle the problem again after a good night's rest. But the next morning, I came back and the problem was still there. Row Strokes were in front, even though I told them not to be.

I thought maybe it a screen issue. For example, sometimes when viewing a page in Acrobat, if the page has a table with all the same stroke weights, sometimes some of the row strokes seem thicker than others. But I've never seen InDesign display stroke weights incorrectly before, so that couldn't be it. I thought maybe by modifying the weight of the column strokes, I could fatten them up enough visually that they would seem like they were in front. Sort of like visual dot gain. 

Column Strokes should be in front, but they are not!

So I changed the column strokes to 2 pt and they were now magically in front. I changed them back to 1 pt just to see what would happen and they were still magically in front. After a little experimenting, it turns out that InDesign doesn't actually change the drawing order unless you go back and modify the strokes (whichever ones you want on top) again. For example, if you change the settings to be Column Strokes in Front, after exiting the dialog box, you'll need to then go back into the table and modify your column strokes somehow. Change the color, change the stroke weight, whatever you want. But somehow, the act of modifying the column stroke tricks InDesign into doing what you had asked it to do in the first place.

Likewise, if you change your settings to be Row Strokes in Front, you'll then need to go in and somehow edit your row strokes for the setting to actually take effect.

Now column strokes are really in front


4 comments :

  1. Thanks for sharing this Kelly. Definitely sounds like a bug. Did you file a bug report? m.

    ReplyDelete
  2. Kelly,

    this is not a bug. This is how it works.
    "Drawing order" forks only if you use "Row Strokes"
    and "Column Strokes" directly from "Table Setup" dialog.

    ReplyDelete
  3. Hi Marijan,
    I don't understand. I created a new table with default settings, gave the row strokes and column strokes different colors. It started out as "Best Joins", with the interior strokes defaulting to display as row strokes in front; and the exterior strokes displaying as column strokes in front. Then I changed the Stroke Drawing Order to Row Strokes in Front, and it the exterior strokes now displaying as Row Strokes in Front. But then I changed the stroke drawing order to Column Strokes in Front, and the exterior column strokes moved behind, but nothing happened to the interior column strokes...they were still behind the row strokes. So then I bumped up the strokes to 2 pt, and suddenly, the interior column strokes moved to the front.

    Interestingly, once I make that change to the properties of the strokes, they now behave as expected, all the time. But every time I make a new table, and want the column strokes to be in front, I must first alter the stroke properties somehow. Then the Stroke drawing order behaves expected.

    Start with a brand new table and see if you get a different result that what I got.

    ReplyDelete