Back

If your email is not recognized and you believe it should be, please contact us.

  • You must be logged in to reply to this topic.Login

Reflective bullets?

Return to Member Forum

  • Author
    Posts
    • #54392
      jools
      Member

      What I'm trying to achieve is probably best explained with an image:

      Reflective sidebar bullets

      Is there a good way to automate the above somehow with a paragraph/object style that works regardless of whether the sidehead item happens to be on a left-hand or right-hand page? Alignment is no problem (align to binding) but how do I get the bullet to change sides and directions?

      I do have the In-Tools package which includes Reflective Objects and Sideheads. Sideheads will work wonderfully to pull the sidehead from text marked with a character style in the main text and attach it to the text column. Reflective objects can reflect placement of an object from left to right and also flip a whole object but here only part of the text – the arrow itself – needs flipping and repositioning, the text still needs to read left-to-right.

      Any ideas?

    • #54393
      Mike Rankin
      Keymaster

      Jools-

      I don't have the InTools package, but could you convert the bullet to outlines and group it with the sidehead frame instead of having it as part of the text? Would Reflective Objects then make it flip along with the rest of the frame?

    • #54394
      David Blatner
      Keymaster

      Oh, this is one major brain twister!

      Check out this IDML file. Move the text frame on page 2 to page 3 and watch the bullet change direction (and color).

      I don't know how to move it to the end of the line yet, but I'm most of the way there. It's likely going to be done with more than one anchored object. I'll plan on writing up how I did it in a blog post this weekend or next week.

    • #54395
      jools
      Member

      Amazing speed of response and how appropriate that it's your post 101. I'm impressed.

      I've tried to work out what you've done with some but not complete success. There seem to be two (or three?) anchored objects inside each other but I'm finding it hard to select the different elements. I've not worked how you mirror the arrow and change colour.

      Anyhow, I played around a bit and got a bit further. The arrow now changes position too. I changed the anchor reference point for the inner reflected object, set the text frame to align to gutter and added equal padding on both sides of the text element. I've not quite got everything working, though, as the right-hand (green) arrow is a little larger now (a separate element?). Anyway, try out this IDML file.

      test2_reflective_bullets.idml

      I'm wondering, of course, how easy this is to implement in practice. Does this complex assembly of sub-elements have to be hand-constructed for each item?

      Thanks again!

    • #54445
      David Blatner
      Keymaster

      Great! Here's my write up of the step-by-step process to make one of these:

      Making an Object or Text Change Based on Left or Right Page

      Once you make one, copy and paste it, or save in a library or something.

    • #54520
      Harbs
      Member

      This is a really interesting problem!

      David, very nice trick! The problem would be automating hundreds of these doodads… Wink

      The way I would probably handle this would be to create a script which would change the paragraph style on verso pages to one with a right-to-left direction (in CS4) and the appropriate bullet. The recto pages would get a left-to-right direction and another bullet…

      (You can use World Tools to set the paragraph directions.)

      Harbs

      Here's a script (totally untested):

      (Change the “names” to what you need.)

      var styleName = “Side Heads”;
      var rectoStyleName = “Recto Side Head Style”;
      var versoStyleName = “Verso Side Head Style”;

      var doc = app.docuemnts[0];
      var objStyle = doc.objectStyles.item(styleName);
      var rectoStyle = doc.paragraphStyles.item(rectoStyleName);
      var versoStyle = doc.paragraphStyles.item(versoStyleName);

      var anchoredFrames = doc.stories.everyItem().textFrames.everyItem().getElements();

      for(var i=0;i<anchoredFrames.length;i++){
      var curFrame = anchoredFrames[i];
      if(curFrame.appliedObjectStyle != objStyle){continue}
      var parentFrame = curFrame.parent.parentTextFrames[0];
      if(!parentFrame){continue}
      if(parentFrame.parent.side == PageSideOptions.RIGHT_HAND){
      curFrame.parentStory.applyParagraphStyle(rectoStyle);
      } else {
      curFrame.parentStory.applyParagraphStyle(versoStyle);
      }
      }

Viewing 5 reply threads
  • The forum ‘General InDesign Topics (CLOSED)’ is closed to new topics and replies.
Forum Ads