Building better code one byte at a time.

How to publish a stubborn Articulate Presenter project

Although this article refers specifically to lengthy presentations, this should also allow you to publish right-to-left languages!

To skip the ugly detail and get right to the solution, click here.

It’s not uncommon for presentations with a large number of slides to take longer to publish than a presentation with fewer slides. However, on occasion you might notice some slides take much longer. Why?

When selecting the Publish button from Articulate Presenter there are many functions that start processing, converting and temporarily storing every object, character and audio wave; all of which are later combined into a single .swf file. This set of operations is reset for every slide in the presentation, continuing to create a new .swf for each slide until every object is processed.  Depending on drive fragmentation, available space and other system resources, publishing times can vary greatly on different machines. If resources are taxed this could impact performance, sometimes forcing Presenter to close or stop responding.

So what can be done to help get those stubborn PowerPoint projects to publish in Articulate Presenter?

1. Although it’s not always an option, it’s sometimes better to split a large project or a project with a large number of slides into several smaller projects. Each presentation can be linked to the other with a “click here to continue” hyperlink or button.  This in effect allows the student or viewer to take a short intermission before continuing on. In addition, smaller projects helps to keep the project size manageable. Having to republish a 300 presentation just to fix a single spelling error can easily turn into an hour long process. This isn’t a good use of time. So remember, keep it manageable for you and your students. Fewer slides require less read/writes to the system drive and therefore increases the probability for a successful publish.

2. Whenever possible, combine slide objects, text and shapes into a single group, save as an image and replace the group with the saved image. As stated above, every object on the slide must be processed, compressed and stored. So why not combine everything that is not animated into a single image? Depending on the number of objects per slide, this can decrease publishing times 10 fold, saving on drive space and greatly increasing the probability for a successful publish.

3. Every letter or character (one by one) is converted and stored as a vector format. This allows the text to scale without affecting quality (sharpness). With Non-Western languages or complex fonts, this conversion can slow publishing times significantly. Converting text to an image and replacing will remove the ability to further edit the text but will significantly decrease publishing times.

Did you know if you rotate a PowerPoint text box on the z-axis by .1 degrees, this, in effect, will be treated as an image when published by Articulate Presenter?

Rotating an object or text box has a minimum effect on the quality and keeps the text in an editable format. This is a great option for projects that contain a large amount of non-western text or complex fonts. A sample side by side screen shot is shown below to help illustrate the publishing quality and publishing time difference.

So to reiterate, the above text prior to rotating on the Z- axis, took 4 minutes and 23 seconds to publish. The rotated text took only 2.5 seconds. WOW!

To demonstrate how rotating a text box on the Z-axis works, I created the Screenr below.

Although this workaround is great, it could take some time to implement for large PowerPoint presentations.

In comes the OptimizeMyPreso.pptm macro!

This macro-enabled PowerPoint file applies the above noted .1 Z-axis rotation to every text box in a PowerPoint presentation and is done with a single mouse click. Please watch the Screenr below to learn how to apply this automated workaround to your PowerPoint projects.


The instructions below are for PowerPoint 2007/2010 only.


Always backup your original PowerPoint file before applying any macro. There is a known issue where Articulate Presenter will ignore text box animations that have a 3-D Rotation applied. To work around this issue, where needed, this Macro will apply a 100% Transparent Fill to the text box but could affect how some animations work.

1 . Make sure the PowerPoint Developer Ribbon is enabled. View the following link for instructions on how to enable this. (http://msdn.microsoft.com/en-us/library/bb608625.aspx)
2. Open the OptimizeMyPreso.pptm file and allow Macros if prompted. (Security Warning –> Options… –>Enable this content)
3. With the OptimizeMyPreso.pptm file still open, select the Open menu and locate the problematic PowerPoint file.
4. If it is not already in pptx format, save the problematic file as a .pptx (PowerPoint 2007 or greater).

Note: This Macro will not work for PowerPoint files saved as any other version. If your file has a .ppt extension please save as a .pptx. I also recommend saving the file with a new name. This will ensure you a have a backup of your original PowerPoint file.

5. From the problem file, select the Developer Ribbon–> Macros button; this will open the Macro dialog.
6. From the Macro dialog, select: All open presentations from the Macro in: dropdown.
7. Select ‘OptimizeMyPreso.pptm’!OptimizeMyPreso from the Macro name list and then the Run button.

Please note: Although this has been fully tested, this method is not supported by Articulate.

Download: OptimizeMyPreso.zip

Microsoft Help Document: How to: Show the Developer Tab on the Ribbon
Microsoft Help Document: Enable blocked macros in MS Office
Articulate KB Article: Presenter ’09 does not support right to left languages such as Arabic

27 comments for “How to publish a stubborn Articulate Presenter project

  1. Krista M
    October 4, 2011 at 2:50 pm

    Thank you so much for this tip!!! It has literally shaved 80% off of my publishing time (we have some text heavy training programs).

    • David
      October 4, 2011 at 3:46 pm

      Krista M,

      Thats Great!

  2. Pink Lady
    October 14, 2011 at 3:50 pm

    Unfortunately it didn’t work for my presentation. I have a 150- slide presentation and followed all of your directions correctly, but it actually took longer to publish it with the macro applied (27 minutes) than it did in it’s original format (20 minutes).
    The Macro told me it couldn’t apply the changes to 5 slides, but it applied it to all the other slides. Did I do something wrong?
    Thank you for your help.

    • David
      October 14, 2011 at 8:28 pm

      Pink Lady,

      If the Macro completion dialog shows some slides were not changed, this would indicate a ‘By Level’ animation or 3-D Rotation was already applied to the text box being optimized. Rotating a “By Level” animation will prevent the animation from publishing. This is why I have the Macro skip these.

      In regard to the publish time difference, I’m not sure why it would take any longer, without looking at the project file. You might want to try saving the project again with a new name after applying the Macro. Close, then reopen the newly saved project and publish.

      I hope this helps!

  3. dositton
    October 22, 2011 at 1:15 am

    Thank you for the info on publishing long PPts. However, I did not see anything about publishing RTL languages. Did I miss something???


    • David
      October 24, 2011 at 11:23 am


      When I originally created this Macro to help speed publishing times, an added bonus was noted by a colleague of mine. Because the Macro will rotate text boxes slightly, this in effect treats all text as a snapshot or image and why right-left languages are now possible. I added a link to the Articulate KB stating my Macro will publish right-left languages, but never added the note to my Blog.

  4. Brandon Delsin
    November 11, 2011 at 7:16 am

    David, I followed exactly the steps you said.
    Unfortunately it did not work. Actually took twice as long!

    • David
      November 11, 2011 at 9:43 am


      In regard to the publish time difference, I’m not sure why it would take any longer, without looking at the project file. You might want to try saving the project again with a new name after applying the Macro. Close, then reopen the newly saved project and publish.

      Please note, this macro was designed to publish projects that would otherwise fail.

  5. Shiri
    December 28, 2011 at 2:54 pm

    I liked the idea and tried using this method for a Hebrew presentation (right to left).
    The slides came out well, but the player template text labels would not accept any Hebrew…

    • David
      December 28, 2011 at 3:10 pm


      Unfortunately, this workaround is for slide level items only.

  6. Ronak
    January 28, 2012 at 8:48 am


    Will this technique work for slide notes of the ppt file?
    I want a articulate presentation having left to right text.
    The slide items work fine but I need to keep the slide notes in also left to right text.


    • David
      January 29, 2012 at 7:34 pm


      I’m sorry, this workaround is for slide elements only.

  7. Ben
    February 27, 2012 at 9:16 am

    At first sight an elegant little fix… er if only it were usable.

    Unfortunately, even at the minimum z-rotation of 0.1 deg, it renders the text so blurry, I would never consider inflicting it on users.

    You fail to make this sufficiently clear.

    • David
      February 27, 2012 at 1:32 pm


      I’m sorry to hear this free workaround is unacceptable.

      Rotating text on the z-axis will indeed convert the text to a raster format (not scalable) and could have a minimal impact on quality, however, my inspiration for developing workarounds is to help users where there is no other option.

      Adjusting your publish quality in Articulate Presenter can help sharpen the text when the rendered text quality is unacceptable.

      Thanks for the feedback.

    • Ben
      February 28, 2012 at 7:32 am

      I understand. It is an intriguing trick and probably would be practical in display type and other situations where fine or small typefaces can be avoided.

  8. peter
    July 4, 2012 at 2:14 am

    I have applied the said procedure to my powerpoint file. And it works fine, but my notes section and my slide properties for the slide titles were still having problem.

    My notes section are still displaying those squares instead of the desired hindi/tamil alphabets.

    Is there any way that the notes section can be included in this process?

    • David
      July 4, 2012 at 9:16 am


      The procedure provided on this blog is applied to slide level text only. I’m sorry to say I don’t have a workaround for this. This is a known issue with Articulate (http://www.articulate.com/support/kb_article.php)product=ap9&id=uw67pwi5yb2m)

  9. Scott
    July 20, 2012 at 6:12 am

    Hi David,

    I’m getting a RunTime error when trying to use this macro.

    “Run-time error ‘-2147024809 (80070057)’:

    The specified value is out of range.”

    Are there any known issues if there are .swf or .flv files embedded?

    Many thanks,

    • David
      July 20, 2012 at 9:54 pm


      Not that I am aware of. Try saving your project with a new name (as a backup), delete half of the slides, then run the Macro. This can help identify where the macro is failing. Or you could send me the zipped project file and I can take a look for myself.

  10. October 25, 2012 at 7:51 pm


    I wonder if you can look at one of my PPTX’s and see if you can get your fix to work. I have tried to follow your directions but my skills are limited. I have some Russian language PPTXs and my boss just doesn’t understand why I can’t just zip them into working order.

    Thanks for all you do!


    • David
      October 25, 2012 at 8:52 pm


      I can certainly try. How big is the project file when zipped? If not to big, you could try sending it to david@builtbyburton.com. Let me know when you have sent it.

  11. nabil
    December 9, 2012 at 6:10 pm

    great workaround. thanks!

    • David
      December 10, 2012 at 7:50 am


      I’m pleased you found this useful.

      Happy Holidays.

  12. July 10, 2013 at 4:50 am

    Hi David, thx for this very helpful macro.

    Using it, I had some Out ouf Bounds error with connectors during applying Transparent fill to text box.
    I also noticed that it doesn’t enter into groups.

    I’ve made some changes to correct these two issues
    Corrected version: http://www.e-teach.ch/download/Macro_z_rotation.zip

    Hope it’s helpful for someone

    • David
      July 10, 2013 at 7:05 am


      I noticed the macro doesn’t cover/handle every object type or groups as it should. I’ll have to consider revising to handling these better. In the meantime, if you know what slides are causing the error you can delete these slides, run the macro then reinsert any deleted slides. It’s best to perform this with a copy of your project so you can paste slides back in. I hope this helps.

  13. Michele
    January 10, 2014 at 1:18 pm

    Yikes…it published…but it deleted my text!

    • David
      January 17, 2014 at 10:56 am


      Yikes is right, however, there’s nothing in the code that would delete text. Please make sure your project file is NOT on a USB thumb drive or other networked attached storage device or location. Working from these devices can negatively impact your project file. Try and reproduce the issue with a copy of your project reduced to just a few slides and send me the reduced project prior to applying my workaround. Make sure you do all testing from your local drive.

Leave a Reply

Your email address will not be published. Required fields are marked *