Printing Images Based on Hidden Text Setting

by Allen Wyatt
(last updated February 28, 2015)

David is a teacher and he uses Word to create tests and answer sheets. He uses a single document, formatting answers as Hidden text. This way, if he prints with Hidden text turned off he has the test and if he prints with Hidden text turned on he has the test and answers. David needs a way to include two images in the document, one on top of the other. That's not the puzzling part, though. He needs one of those images to print if he's printing with Hidden text turned on and the other to print if he's printing with Hidden text turned off.

There are actually a couple of ways you can approach this problem. The first way involves the use of inline images, which can be formatted just like text. This means they can be formatted as Hidden. Assume, for the sake of this example, that you have two images, A and B. You want image A to be printed when you print without Hidden text, and you want B to be printed when you print including Hidden text. Follow these general steps:

  1. Add image A as an inline picture.
  2. Add image B below or next to it, also as an inline picture.
  3. Select image B and format it as Hidden. (Mark it as Hidden the same way you do your other Hidden text.)
  4. Set image B's wrapping to "In front of text."
  5. Move image B to above or in front of image A.

Now the correct images will print depending on whether you print with Hidden text displayed or not. If you want, you could also make image A floating; it doesn't need to be inline. Only image B must be inline, as it is only inline images that can be formatted as Hidden. In addition, image B should be opaque, meaning it should not have any transparent areas, and it should be the same size as image A. If image B does have transparent images or if it is smaller than image A, then it won't fully obscure image A when it is printed.

The other option is to create a macro that you run whenever you want to print your document. The macro can check the setting of the PrintHiddenText property and, based on the setting, either display or hide the appropriate images. Here's a quick example:

Sub PrintMyDoc()
    If Application.Options.PrintHiddenText = True Then
        ActiveDocument.Shapes(1).Visible = msoTrue
        ActiveDocument.Shapes(2).Visible = msoFalse
    Else
        ActiveDocument.Shapes(1).Visible = msoFalse
        ActiveDocument.Shapes(2).Visible = msoTrue
    End If
End Sub

In this macro, the first shape in the Shapes collection is set to Visible (and thus will be printed) if you are printing Hidden text. If the PrintHiddenText property is False, then the second shape is made visible and will thus be printed.

The key to using this macro approach is that you must use regular shapes (floating images); you can't use InlineShapes, as those cannot have the Visible property set.

WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (13375) applies to Microsoft Word 2007, 2010, and 2013.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He  is president of Sharon Parq Associates, a computer and publishing services company. ...

MORE FROM ALLEN

Removing Line Numbering

If you've added line numbers to your document, at some point you may want them turned off. Here's how to disable line ...

Discover More

Modifying Default Year for Dates

When entering dates into a worksheet, you may want the dates to default to last year instead of this year. Here's a way you ...

Discover More

Unwanted Weekend Dates in Chart

If you chart data that includes dates along one of the axes, you might be surprised to find out that the chart includes data ...

Discover More

Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!

More WordTips (ribbon)

Printing and Exiting Word in a Macro

When you print a document, Word remains busy in the background until the printing is done. If you try to end the program ...

Discover More

Scaling Your Output

One of the lesser-known features of Word is that it allows you to create a document for one page size and scale the output to ...

Discover More

Preventing Printing

When dealing with determined users, it is virtually impossible to prevent information in your document from being printed. ...

Discover More
Subscribe

FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.

Comments

If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 8Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is 7 - 2?

There are currently no comments for this tip. (Be the first to leave your comment—just use the simple form above!)


This Site

Got a version of Word that uses the ribbon interface (Word 2007 or later)? This site is for you! If you use an earlier version of Word, visit our WordTips site focusing on the menu interface.

Newest Tips
Subscribe

FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.