Wednesday, May 13, 2009

Removing the Captivate file bloat

Have you ever noticed that copying original slides and objects from an existing project to a new one can dramatically reduce the file size of the new project?

Manoj from the Adobe Captivate team has recently provided some insight on why the copy paste trick is so effective.

[Quote]From a programmers perspective this is what is happening.

Earlier versions of Captivate had some inaccuracy in cleaning up resources.

A resource ( there are many which are internal and not visible to the user other than those in Library) is always linked to some captivate object. When this object was deleted or changed then the corresponding resource use-count should go down.

This resource should be removed once the project is saved so as to maintain proper resources.

With the number of workflows it turned out that the use-count of these resources are not 0 even though these are no longer being used.

Once this happens captivate sees a particular resource with use-count > 0 and keeps loading/saving it all the time, slowly increasing the size of the project.

How does copy-paste help us out ?

When you copy paste, the items is copied and pasted with exactly the only resource its using, Thus the new file need not bother about unused internal resources. Hope this clears the mystery surrounding this trick.

Why has this not been done already ?

If this has to be corrected then every time a project loads we might have to check for all resources' mapping with objects in the project, without looking at the use-count. This will lead to unreasonable project load times.

A repair tool can be made, but the workaround being so simple it better be left as it is. [/Quote]

Removing Unused objects
Another great way to ensure that your Captivate project files are kept small is to select all of the unwanted objects in the Library panel by pressing the Select Unused Items button and then pressing the Delete button.

Adobe Captivate Library panel with Unused Objects selected

By default in Adobe Captivate 4 when you first open a project, you will also be notified of any unused objects that are present in your file project.

If project bloat is something that you would like to see addressed in the next version of Adobe Captivate then please file an enhancement request via the Adobe Captivate Feature Request/Bug Report Form. According to Manoj since Captivate is currently being overhauled for the next version (Adobe Captivate 5) now is the best time to get this kind of request from the Adobe Community.

1 comment:

Anonymous said...

by "currently being overhauled" I assume it is basically being re-written, since they undoubtedly had to do a lot of that for the Mac version that is now in beta. Haven't seen it myself yet as I don't own a Mac anymore, but I would bet that the core features (ie, screen captures, fullscreen recording, audio, etc) are much better implemented in the Mac version of CP than the bloated PC version. CP4 for the PC is *much* better than prior versions though.