Your prescription for increased productivity and profitability
Hyperlinks are an important component of every interactive document, whether you’re creating an EPUB, an interactive PDF, or a DPS project. The latest version of Adobe InDesign CC brings improvements to the Hyperlinks panel and context menus. These improvements make the hyperlink creation process much easier than ever.
Rather than needing to open the dedicated Hyperlinks panel to create a hyperlink, you can now create a hyperlink with a simple right-click (Control+click). This gives you access to designate the hyperlink sources from a drop down list including URL, File, Email, Page, Text Anchor, and Shared Destination.
All you have to do to create a hyperlink is to select the text, right-click (Control+click) and choose Hyperlinks > New Hyperlink from the context menu.
If a character style named “Hyperlink” does not exist for the document, the style is created automatically and applied to the selected text. By default, the Hyperlink character style colors the text blue and adds an underline attribute which makes it recognizable as a hyperlink. Of course, you can set properties for the style as needed. If a character style named “Hyperlink” exists in the document, InDesign will not automatically apply it to the new hyperlink; but gives the user the option to choose the style wanted.
If text is selected that InDesign recognizes as a URL, the hyperlink is created automatically by choosing New Hyperlink from URL from the context menu (right-click).
Any text or object can be used as a hyperlink. If you are linking to a URL that has been previously hyperlinked from your document, it will be available in the Hyperlinks panel’s URL pulldown. Whether you create a hyperlink using the context menu or from the URL pulldown, InDesign groups hyperlinks having the same URL automatically.
If you want to change the URL for a hyperlink, all you have to do is select the hyperlinked text, right-click, and choose Edit Hyperlink from the context menu.
Cross-references and hyperinks are no longer in one shared panel. They are now separated. The Cross-References panel now has improvements similar to the Hyperlinks panel giving it similar functionality and ease of use.
A quick look in the Hyperlinks panel indicates if a URL hyperlink is valid. A green stoplight icon next to an entry in the Hyperlinks panel indicates the link is valid. Clicking the green light will take the user to its destination. This is also true for the Cross-References panel.
Once a hyperlink has been validated, it still displays with a green light even when the user is offline. Of course, if a hyperlink is created or changed when offline, it can’t be checked. It does not automatically update once online. To update the hyperlink, click the Refresh URL Status icon, and the status indicator will be updated.
To create Text Anchor and Shared Destination hyperlink destinations you do need to use the Hyperlink panel. Select the text you want to use as an anchor/destination and select New Hyperlink Destination from the panel’s menu. A dialog is then presented. Select Text Anchor from the dialog’s drop down and give the hyperlink a name. You can also create page and URL hyperlink destinations from the dialog’s drop down.
Of course, if you prefer, you can have a script assigned to a keyboard shortcut to make creating text anchor destinations that much easier. Following is a sample script to get you started:
tell application "Adobe InDesign CC" set hyperStyleProps to {visible:false, highlight:inset, borderStyle:solid, hidden:true} try set docRef to document 1 set selList to selection if class of item 1 of selList = text then set textStr to my getString() set textRef to item 1 of selList set insertRef to insertion point 1 of textRef tell docRef set hyperDest to make hyperlink text destination with properties {destination text:insertRef, name:textStr} end tell end if on error errStr activate display alert errStr end try end tell (*getString handler gets text for name of hyperlink*) on getString() activate set userResponse to display dialog "Enter name for hyperlink" default answer "" buttons {"OK", "Cancel"} default button 1 set textStr to text returned of userResponse if textStr = "" then error ("Requires name for hyperlink") end if return textStr end getString