Create a – Text Block – out of selected Point Text Items

textBlock

This script creates a “Block” of text out of Selected Point Text Items, that is, it re-sizes each frame so they all have the same width. Back then when I wrote the script I didn’t know this layout style was called “SlabType”, otherwise I would have picked a more suitable name, anyway, here’s my “textBlock” script. Please note that the final Block of Text is converted to Outlines.

textBlock

 

Download textBlock.jsx

17 Comments

  1. An impressive share! I’ve just forwarded this onto a co-worker who had been doing a little homework on this.
    And he actually ordered me lunch simply because I discovered it for
    him… lol. So allow me to reword this…. Thank YOU for
    the meal!! But yeah, thanx for spending time
    to discuss this matter here on your blog.

    • What the hell!!! He should have ordered Me lunch, not you!! Lol

  2. Thank you for this great script, so useful! 🙂
    I’m running latest version of Illustrator on Windows 10, and most of the time it works as on your images on this place – with all the text in order.
    Sometimes however, it puts the sentences in the wrong order and I can’t see how it’s happening – is there something I need to do to make sure they’re always in the same order?

    • Hi Lee, the script goes by the stacking order in the layers panel. Just arrange the text frames in the order you need them before running the script.

      • Ah, of course! Amazing, thanks so much, Carlos 🙂

  3. Hy i like th script. Good work!!! Is there any chance to use this script into indesign?

    • No, Illustrator scripts won’t work in InDesign. Have you tried copying and pasting? Or placing your Illustrator file after processing into InDesign?

  4. This is awesome…. but is there a way to do it without creating a new layer every time. I would like it to simply be placed on the same layer as the source text.

    I tried commenting out the code to add a layer and create a group.
    i.e.
    var dupLayer = idoc.layers.add(); // add a layer to place the new block of text
    dupLayer.name = “Text Block”;
    var blockGrp = dupLayer.groupItems.add(); // add a group to final output
    blockGrp.name = “Text Block”;

    Error 2: dupLayer is undefined.
    Line: 31
    -> var blockGrp = dupLayer.groupItems.add(); // add a group to final output

    and

    Error 2: blockGrp is undefined.
    Line: 38
    -> var itext = tf.duplicate(blockGrp, ElementPlacement.PLACEATEND); // duplicate text

  5. Superb! Exactly what I needed, when I needed it. Thank you.

  6. Thanks so much! Your sripts really are good.

  7. can you create a script that can change the text?

    • Probably, change to what?

      • I think he meant “editable”. Excellent script!

  8. It’s very nice

  9. Simply perfect and useful!
    Thanks!


Add a Comment

Your email address will not be published. Required fields are marked *

Comment *
Name *
Email *
Website