Forum Discussion
Print ANYTHING in StoryLine
By adding a new tab in the player properties panel and assigning it to execute the "window.print();" JavaScript, you can allow your participants to print any/every slide in your StoryLine projects including "Notes" or "Certificate" slides! No need to create a complex JavaScript course certificate solution, simply build a beautiful slide and let your users print it directly from the StoryLine player!
For SL 3 and 360 users, you can also move, reformat, hide, and reveal the button so you can take control over what users can print.
I've included the screen shots I used in the video in the attached Word document along with the JavaScript code snippets and an SL3 .story file.
206 Replies
- KristenLlobr354Community Member
Did anyone else have problems with the print function printing everything on the screen? The entire right side of the screen is missing. If I manually change my print settings to change to landscape and scale down the size, then it will show everything, but I can't assume that the users will figure that out on their own. There's also a HUGE left margin that takes up a lot of room. I'm using the Modern player in 360, but seem to have the same problem if i switch the Classic player too. Same problem in both Chrome and IE. Any ideas?
- SueWallisCommunity Member
Hi Kristen
I know you posted this a while ago but I have exactly the same issue and I wondered if you had managed to find a solution?
Thanks
Sue
- GeremyGortemakeCommunity Member
I may have missed something, but is there an easy way to add this print functionality ON a specific slide instead of housing it in a player button or tab?
- OwenHoltSuper Hero
Yes. You can use a trigger from a button or anything else on your slide to "execute JavaScript".
Executing JavaScript is one of your trigger options from anywhere in StoryLine.
- JodiSansoneCommunity Member
Hi Owen,
Thank you for posting this. I know nothing about Javascript, but I know enough to copy and paste your code into the player. Awesome!
- OwenHoltSuper Hero
I'm working on an "Introduction to JavaScript Programming for StoryLine Users" 1 day workshop. I haven't landed on a price yet but I am looking to determine how much interest there might be in the community for this. I would love for users to have some understanding of what they are copying and pasting so they can trouble shoot the code for themselves when things go wrong or maybe even improve the code for the next person in the community.
- LucyWood-cf5987Community Member
I would be interested, Owen.
- SylviaWrightCommunity Member
The trick with the javascript print function is that it does not work in the Articulate Player :(
- OwenHoltSuper Hero
I assume you mean the mobile player?
Also, I've proposed the workshop to the guild multiple times but they haven't approved it yet. They only seem to approve my session proposals and a 1 hour or 90 minute session is not enough time.
- SylviaWrightCommunity Member
Yes
Get Outlook for iOS
- KatherineForneyCommunity Member
HI Owen,
What is the code for printing all the pages in a Storyline workbook, not just one?
Kathie
- OwenHoltSuper Hero
Because of the way the StoryLine "stage" sits in a page, there isn't a way that I know of to print all of the StoryLine pages. If you need to do this, your best bet is to create a PDF file of your course and add it as a resource file that participants can access, save, and print.
- onEnterFrameCommunity Member
There really are not any 'slides' until they are loaded into the player. And even if you did load them all... at what point in each slide's timeline would you want to print it? Often devs animate the content onto the slide so if you printed the slide at 0 seconds it might be blank.
- onEnterFrameCommunity Member
I have been working on a new method to print ONLY the slide for CoursePortfolios. Give this a try and let me know what sort of success you have please?
var _0x6d8d=["\x68\x65\x6C\x70\x65\x72\x73\x2F\x73\x6C\x69\x64\x65\x54\x68\x75\x6D\x62","\x3C\x69\x66\x72\x61\x6D\x65\x20\x69\x64\x3D\x22\x67\x66\x6F\x72\x63\x65\x22\x20\x20\x77\x69\x64\x74\x68\x3D\x22\x37\x32\x30\x22\x20\x68\x65\x69\x67\x68\x74\x3D\x22\x35\x34\x30\x22\x3E\x3C\x2F\x69\x66\x72\x61\x6D\x65\x3E","\x61\x70\x70\x65\x6E\x64","\x62\x6F\x64\x79","\x63\x6F\x6E\x74\x65\x6E\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74","\x63\x6F\x6E\x74\x65\x6E\x74\x57\x69\x6E\x64\x6F\x77","\x68\x74\x6D\x6C","\x67\x65\x6E\x65\x72\x61\x74\x65","\x77\x72\x69\x74\x65","\x63\x6C\x6F\x73\x65","\x70\x72\x69\x6E\x74","\x67\x65\x74","\x23\x67\x66\x6F\x72\x63\x65","\x72\x65\x6D\x6F\x76\x65"];var kingsley=require(_0x6d8d[0]);var hldr=$(_0x6d8d[1]);$(_0x6d8d[3])[_0x6d8d[2]](hldr);var fd=hldr[0][_0x6d8d[4]]|| hldr[0][_0x6d8d[6]][_0x6d8d[5]];fd[_0x6d8d[9]](kingsley[_0x6d8d[8]]()[_0x6d8d[7]]);fd[_0x6d8d[10]]();setTimeout(function(){$(_0x6d8d[13])[_0x6d8d[12]](0)[_0x6d8d[6]][_0x6d8d[11]]();$(_0x6d8d[13])[_0x6d8d[14]]()},100)- DiarmaidCollinsCommunity Member
Hi James. I was wondering if you could break this code down for me? I don't seem to recognise it as javascript and was wondering how it functions. Apologies for being a dunce.
- OwenHoltSuper Hero
@ James your code is no longer working in current version of 360. 😔
- onEnterFrameCommunity Member
Nice!
Related Content
- 11 months ago
- 11 months ago
- 11 months ago
- 10 months ago
- 11 months ago