Touchscreen Keyboard

An optional touchscreen keyboard can be displayed before or after the shooting sequence to collect information such as an email address or a guest’s name.

 

Enabling the keyboard

Open Photobooth Settings, set the start option to Touchscreen, and click Settings… to open the Touchscreen Settings dialog.

 

Select a keyboard option:

  • Not displayed — keyboard is disabled
  • Email input at start of sequence — shown before photos are taken
  • Email input at end of sequence — shown after photos and optional print confirmation
  • Email input after taking photos — shown immediately after photos, before print confirmation
  • Message input at end of sequence — collects a free-text message; stored in the {message} token

Set a Timeout to automatically close the keyboard after a period of inactivity.

Enable Show mouse cursor to allow booth operation without a touchscreen.

 

Customising the keyboard

To customise the layout, create a keyboard.xml file in the photo booth images folder. Save a copy of the default keyboard XML by opening the keyboard test, then holding Shift+Ctrl and left-clicking.

Key XML elements:

Tag Purpose
<prompt1> Text displayed above the input field
<text1_x>, <text1_y> Position of input field
<text1_r> or <text1_w> Right edge or width of input field
<background_color> Background colour (hex RGB)
<key> Defines a key with position, legend, and action code

Add up to 10 input fields using <prompt1> through <prompt10>.

Prompt attributes:

  • mandatory="1" — user must enter text before OK
  • email_address="1" — validates as an email address
  • password="1" — masks input with asterisks
  • rows="3" — multi-line input
  • id="name" — identifies the field for survey data tokens

 

Checkboxes

Add up to 10 checkboxes using <chkbox1_prompt> through <chkbox10_prompt>. Set mandatory="1" to require the checkbox to be ticked. Use id to name the checkbox for token access.

 

Radio buttons

Use <radio_btn> tags with a group attribute to create sets of mutually exclusive options. Access selected values via {survey1_radio_groupname}.

 

Special key codes

Code Action
OK Close keyboard and accept input (requires mandatory fields complete)
OK none Accept input even if no text is entered
Cancel Close and discard input
Close Close and return to ready screen
Shift Toggle upper/lower case
Delete Delete last character
Clear Clear all input fields
info Display optional info screen
info close Close the info screen

 

Keyboard image files

Custom keyboard appearance can be defined using TIFF (or JPEG) images named:

  • keyboard_lowercase.tif
  • keyboard_lowercase_pressed.tif
  • keyboard_uppercase.tif
  • keyboard_uppercase_pressed.tif

When keyboard images are present, the <prompt>, <legend>, and <background_color> tags in the XML are ignored. Use the XML only to define key positions and actions.

Email, message, Twitter, and MMS keyboards use the same naming pattern with their respective prefixes (email_keyboard_, message_keyboard_, twitter_keyboard_, mms_keyboard_).

 

Data storage

Text entered by the user is saved in the XML photo booth summary file in <user_data> (and <user2_data> for a second field). Checkbox status is saved in <chkbox1>, <chkbox2> etc.

Use the token {user1_data} in print captions to display the entered text on prints.