I am trying to design a restaurant menu, I've decided to go with Photoshop (would you suggest something else?) but I can't find a way to work with objects (or maybe models, I don't know the proper way to call this feature, I am thinking objects as in object oriented programming)

My problem is: let's say that I wanted to have for each food the couple

(name, price)

and that I spaced the two elements by 200px. Then I go on creating 50 food entries. After that, I realize that I'd rather have name and price spaced by 150px.

What could I do about it?

I could select all the prices and have them aligned to a guide 150px away from the foods' names maybe (it's probably not how you would do it, but I'm not an expert user), but what I'm trying to achieve is having a "parent object" that I can modify, so that all the modifications would propagate to all the "children objects". In this way, if I changed my mind and I decided to go for a triple

(name, food type, price)

and I therefore wanted to have three elements, each one separated by 40px, I could simply add a layer to the "parent object" and move things a little bit and see all that work propagated to my menu.

Does anything like this exist in photoshop? Would you suggest a different software to perform such operations?

I apologize if a lot of questions about this feature already exist, but I wasn't able to find anything due to the fact that I couldn't figure out a proper nome for it.

2 Answers 2


Photoshop is not the best tool to do what you want to achieve.

Functionality described in the question you've asked is the functionality of something called “styles”. You can use a specific kind of styles—namely paragraph and character styles—in e.g. Illustrator or InDesign. Although you didn't say what is your target medium (internet, print?) I assume it's the print. If I understood you correctly, your main goal is to be able to control the spacing of food attributes and the spacing of consecutive food entries globally by changing only a handful of parameters. In that case tabs are your ally.

For example in Illustrator you could type or paste your entries, separating each attribute with tab sign. The following image shows an example of such text (with hidden characters displayed). The “arrows” are the tabs and each line ends with the end-of-paragraph sign.

Sample text in Illustrator

Now you should create a paragraph style. The appropriate panel, if not yet displayed, can be found in Window > Text > Paragraph Styles. Once you create your paragraph style (named, say, “Food entry”) you should modify its settings in “Tabs” and “Indents and Spacing” sections. Setting tab positions takes care of spacing between the food attributes (e.g. between name and price). Settings in the latter section, will allow you to control how much space is between consecutive entries (vertical spacing, if you will :}). Now apply your style to the text, by selecting text and clicking on the style name in “Paragraph Styles” panel. You may deselect your text. From now on, you can open your style parameters, modify them and the changes you'll make will be immediately applied to your text.

The procedure for that is almost identical for InDesign.

There are also so called character styles. They give you ability to modify the appearance of only selected portions of paragraph, but the general idea remains the same.

Once you'll decide to extend your food description e.g. by adding a type of food, you will be able to adjust your layout in no-time. That is, as long as you'll also separate it from the other attributes by tab character. Simply add another tab marker to the paragraph style and move it to the desired position.


There is no such workflow in Photoshop. You can achieve something similar by recording Actions. Let's say you have 2 grouped text layers (name, price). Then you can make new Action and record the Duplicate and Move actions. This way you can just execute the Action that you created and you will Duplicate and Move with a single click. However, when you want to change the spacing you would have to do this again and your layers would be duplicates. This means you will have to enter the info again. Maybe it's a good idea to first decide on the layout and fill the information when you think the layout is final. 50 elements are not that hard to manage manually, so just do it. Useful shortcuts: Ctrl+Alt+Shift+Arrow Down : Duplicate the layer and move it 10px down

Hold Shift + Arrow Down : Move down by 10px.

Select multiple Groups and hold Alt + Dragging them with the mouse: this would duplicate the selected layers ... using these would make it easy to duplicate and move 50 elements in few minutes. Hope that helps.

  • Thank you, those shortcuts would certainly help. It's unfortunate though that there's no such thing! Would you suggest using Illustrator maybe? (I have no experience with that so I don't know if it may help)
    – Alessandro
    May 3, 2014 at 17:31
  • @Alessandro Illustrator is more or less the same thing. What you try to achieve is true for web design. In web design we have HTML file holding the information and a CSS file defining the visual appearance of that information. This would allow for frequent changes, without much effort. For example you would change your spacing by a simple change of a number in CSS (text file) but this requires a little bit more effort for creating the design with HTML/CSS.
    – Komental
    May 3, 2014 at 18:06
  • I am used to HTML/CSS, would you suggest designing the menu by means of those? Would it be then exportable or printable somehow? But in the end you're right, CSS probably requires more effort for the design
    – Alessandro
    May 3, 2014 at 23:15
  • @Alessandro You can go this way and save the page with Firefox: Shift+F2 and type: screenshot make.png --fullpage
    – Komental
    May 4, 2014 at 13:28
  • 1
    @Alessandro Indesign has a templating feature, similliar to html/css if you use a xml workfkow. Its perfect for this kind of stuff
    – joojaa
    May 4, 2014 at 19:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.