December 4, 2011

Multiple Language Options in a Single Course with Adobe Captivate 5.5

When we create courses for global audience, oftentimes we come across a need for localized version of the course. The common workflow is to create the course in one language and then duplicate the course and then change the language for text/graphics/audio. This is the easiest way to localize content, but is an inefficient workflow for course maintenance, where you need to make the same edits in each version of the course.

To overcome this problem, Adobe Captivate provides you a way to create a single course with multiple language options. This can be done by using Advanced Actions and Variables.

Here’s an example of a course with multiple language options. Take a look…

If you know how to use advanced actions and variables in Adobe Captivate, it’s very easy to create such a course. The logic used here is that each language is associated with a variable. The default value of these variables is zero. When a learner clicks the button related to a particulate language, the value of the variable changes to one and he/she is taken to the next slide. On entering the next slide, Captivate checks for the value of the variable and shows/hides the captions accordingly.

Here are the detailed steps:

  1. Create the screen layout and add the common screen elements for the course.
  2. Add the buttons/click boxes related to each language on the first screen.
  3. Add text related to each language on the screen and label the text captions appropriately.
  4. Uncheck Visible for all the text captions.
  5. Select the text captions on the screen, right-click and select Align > Align and resize to the same size. This will place all the text captions on top of each other.
  6. Repeat this step for the rest of the screens.
  7. Click Project > Variables.
  8. Add a variable for each language and set their value to 0.
  9. Then define the advanced actions. Click Project > Advanced Actions.
  10. Define standard actions for each language button where if the learner clicks on a button, the variable value related to the button should change to 1.
  11. Now define a conditional action which will check the value of variables and display the captions accordingly. The limitation with Advanced Actions is that you can show an object on a slide only if it is present on that particular slide. But we will use it for our advantage by creating just one conditional action for all the slides. :)
  12. The conditional action should check if the variable values are equal to one and show all text captions for that particular language else hide all.
  13.  Select the English button on the slide. Set the On Success action to Execute Advanced Actions and select English as script.
  14. Select the French button on the slide. Set the On Success action to Execute Advanced Actions and select French as script.
  15. Select the Spanish button on the slide. Set the On Success action to Execute Advanced Actions and select Spanish as script.
  16. In the Filmstrip view, select slide 3, 4, and 5. Set the On Success action to Execute Advanced Actions and select Language as script.


Feel comfortable working if you have an example in front of you? Here’s the link to download the example project.

Happy captivating! :)

Posted by poojajaisingh10:58 PM
  • Bill Broome

    Too bad this example doesn’t address the complete localization process, which would include localized playerbar controls and TOC.

  • Miles McDude

    Beautiful… what are the properties of the restart button? Is that a native captivate function?

    • Lieve Weymeis

      Miles, this is not a native captivate function in this example. Just jumping to the first slide with the button Restart will not be sufficient, because you have to ‘reset’ the user variables Eng, Frn, Spn. This can be done with an advanced action triggered by the Reset button. Personally I would use an other approach (hope Pooja will not curse me): would trigger an advanced action on Entering the first slide, setting those variables to value=0. In that case you do not need to add a default value on defining those variables, which I find more convenient.
      Even like to offer another approach: why use 3 variables, you can do it with one user variable v_lang which will store the language choice. If the user clicks on the button English, it will get the value 1 (or Eng if you prefer), for French value 2 (or Frn), for Spanish 3 (or Spn). Change the IF conditions in the conditional action to IF v_lang=1 (instead of IF Eng=1) etc… you get the same result. But you do not have to reset the variable v_lang, which is a timesaver. You can even add a button ‘Same choice’ to the first screen, so that the user keeps his first language choice?

      • Dr. Pooja Jaisingh

        Thanks for suggesting an alternate workflow Lieve. I was resetting the variable values to zero on clicking Restart, but setting the values at the first slide also sounds good. And using one variable is a great way to make the process lean. :)

  • Lieve Weymeis

    Pooja, having created lot of courses in different languages, and despite being an advanced actions freak, I did not and will never use the approach you explain here. There is a lot more to be localized to offer the student an optimal experience: TOC and playbar have to be localized, quizzing environment has to be localized, those are only a few examples. Moreover this approach results in a file that is mostly way to big. If it is necessary to offer the language choice to the student, working with a menu file that offers the choice and linking to different files, each in their proper language, would be more efficient IMO. Sorry for my disagreement :-)

    • Dr. Pooja Jaisingh

      Thanks for sharing your thoughts. I understand that we cannot localize the TOC and Playbar using this approach, but if we have shorter courses where we don’t use a TOC, this approach can be used.

  • Pingback: Multiple Language Options in a Single Course with Adobe Captivate 5.5 | elearning&knowledge_management |

  • darlingNikki

    What about the closed captioning? Would that require a separate course? I don’t believe CP allows you to store the CCing as an external XML.

  • Ping

    Anyone with experience developing courses in Mandarin? What are the advantages or challenges using Captivate vs. another tool such as Lectora?

  • Loading
  • Categories

  • Archives

  • Authors

  • Recent Comments

    • Elly Brewer: We are using Captivate 8 and loaded into our LMS. When the learner is in a course, and cannot finish, we...
    • Alfonso: I use Captivate 8 on a OSX 10.10 in spanish. After clicking on “Generate audio” an error in...
    • Background Remover: Adobe Know How is really awesome and I am loving this.
    • Background Remover: Seems cool to me. Gonna try :)
    • Background Remover: How you create that design? Can you share whole tutorial with us???
  • Captivate & eLearning Videos

    Subscribe to Adobe eLearning on YouTube.

    Check out the latest eLearning Videos on AdobeTV

Recently Approved