2.6 (Mar 2024) - Colored emojis in text paragraphs were not correctly hidden when supposed to. This is now fixed, thus closing issue #20. - Fixed a bug that could cause PPspliT to crash in the presence of an effect with the "hide after playing" property set. - Added support for custom slideshows: slide sequences in custom slideshows are now updated to include slides that are added as a result of splitting. Although the main goal of PPspliT differs from that of custom slideshows (these are usually meant for presenting live with an audience, whereas split slides are meant for redistribution), in some cases custom slideshows may also be used as a convenient way to define slide subsets that can be readily printed (or exported to PDF using a virtual printer): this is the use case that this feature aims at addressing. Thanks to Olivier Descout for suggesting this improvement. 2.5 (May 2023) - Fixed a bug that caused PPspliT to crash if executed on a completetly empty presentation (i.e., with no slides). - Introducing support for cross-slide hyperlinks pointing to the previous or next slide: such hyperlinks have both the slide ID and the slide index set to -1, which was unhandled before. Thanks to Rolf Rabenseifner for highlighting this issue. - Fixed a bug in handling invalid cross-slide hyperlinks pointing to a non-existent slide index. This might happen in case a previously existent target slide is deleted after creating the hyperlink, and the overall slide deck becomes shorter than the index the hyperlink points to. Thanks again to Rolf Rabenseifner for submitting examples that revealed this issue. - Fixed a bug in handling animation effects with the "hide after animation" property set (the initial visibility state of the shape could have been wrong). - Improved handling of a few emphasis effects that can have a temporary effect on the shapes they are applied to. 2.4 (April 2023) - Fixed cross-slide hyperlinks after splitting. Previously, they were broken because of slide index changes occurring during the split. Thanks to Rolf Rabenseifner for pointing out this issue. - Text highlighting now (mostly) supported: its visibility is now synchronized with that of the text it is applied to. Some glitches may still occur because PowerPoint VBA does not have any native methods to clear/hide the highlighting. This fixes #17. 2.3 (January 2023) - In some rare cases slide decks may contain animation effects applied to empty paragraphs, which PowerPoint generally forbids at the user interface level. In even rarer cases, such animated empty paragraphs may occur at the end of a text frame, which causes PPspliT to fail because empty paragraphs at the end of a text frame are not even included in the total paragraphs count. Thanks to Jake Lee for pointing out this issue (in https://github.com/maxonthegit/PPspliT/issues/16), for which a workaround is now implemented. 2.2 (December 2022) - Fixed a bug that caused PPspliT to fail at the initialization stage in the presence of emphasis animation effects affecting shape colors with a target color taken from the slide color scheme. This happened regardless of whether the triggering animation effects occurred in the slides selected for being split or not. Thanks to David Doty for highlighting this issue. - Slightly improved error reporting for failures occurring during the initialization stage. - Updated regression tests to include emphasis effects with a target color from the slide color scheme as well as text paragraphs with a variety of bullet types and a structure deeper than 5 levels. 2.1 (December 2022) - Minor bug fixes. - Restored full functionality for PowerPoint 2007. 2.0 (December 2022) - Deeply redesigned core engine to eliminate the need to use the system clipboard altogether. This definitively addresses issues like #3 and #7, which highlighted race conditions triggered by external applications handling the system clipboard, and also rules out issues like #12, which highlighted a similar problem randomly occurring even in the absence of any applications interfering with the clipboard. It is therefore now safe to use the system clipboard while a slide deck is being split. - Splitting a selection of non-contiguous slides is now supported. - Handling of entry/exit effects applied to text paragraphs has been improved. In particular: - Ordered lists whose items (or paragraphs) were set to appear in any order different from their natural order resulted in item numbering being mixed up. This is now fixed. Thanks to David Wong for reporting this issue. - Bullets should now be always preserved and font resizing implied by the text auto-fit property should be correctly honored. - Text paragraphs containing a mixture of standard text and equations in the native PowerPoint 2013 format are now supported. - Leaner progress dialog box, now consisting of a single progress bar. - Worked around a known limitation affecting the ability to properly assign fill/line colors for emhpasis effects. - Improved handling of animation effects that are set for auto-reverse or being rewound after playing. - A full regression test suite is now embedded in the PPspliT macro file. - Improved code comments. +------------------------------------------------------------------------------+ | As a collateral effect of this significant set of changes, starting from | | this release no further development will happen for PowerPoint versions | | prior to 2007 (Windows only). As of PPspliT release 2.0, even users of | | PowerPoint 2007 may experience some issues. | | Although this has never been announced in advance, the following statements | | apply: | | - I consider unlikely that such versions still have a significant number of | | users nowadays, making the impact of this change likely negligible. | | - Implementing all the applied changes would be overly demanding compared to | | the benefit of such an activity. | | - Support for older PowerPoint versions is not dropped anyway: it is just | | frozen in its current state: no new features will be added or bug fixes | | will be applied for that code base. | +------------------------------------------------------------------------------+ ================================ 1.27 (April 2022) - Preserving some shape properties across slides requires using a more persistent shape property than the shape ID (which is regenerated for each copy of the same shape). AlternativeText was used as a property "carrier" so far, but this causes loss of some potentially useful information (for example for producing accessible PDFs). Now the code has switched to using Tags, which are more flexible and not expected to cause any information loss. This addresses https://github.com/maxonthegit/PPspliT/issues/11. - Slightly enlarged the about box to leave more room for text when using high-DPI displays. 1.26 (December 2021) - Apparently, per-paragraph animation effects applied to a text box can become "corrupted" when all the text in the box is deleted: instead of removing the animation steps altogether, PowerPoint leaves behind a single animation step for which the "text animation" property cannot be set (i.e., it is impossible to determine whether the animation is applied to a text paragraph or the whole containing shape) and is not even played during the slideshow. This abnormal condition caused PPspliT to mistakenly detect the animation as applied to a paragraph and, consequently, fail due to the paragraph being non-existent. An additional check has been introduced to cope with this condition. Thanks to Torsten-Karl Strempel for pointing out this issue. - Improved About dialog box: text box turned to a label, added hyperlinks. 1.25 (November 2021) - Addressed a glitch that caused text paragraphs in split slides to be aligned differently from the original slide. Thanks to Torsten-Karl Strempel for pointing out this issue. 1.24 (November 2020) - This relese fixes bug https://github.com/maxonthegit/PPspliT/issues/6: slides were improperly assigned a slide transition effect after being split. 1.23 (November 2020) - This release fixes the bug reported in https://github.com/maxonthegit/PPspliT/issues/5: the Brightness property of ColorFormat objects was sometimes accessed even in PowerPoint releases which do not implement it (most notably, PowerPoint 2007). This resulted in a quite frequent error while splitting certain animation effects in the affected PowerPoint releases (indeed, this should have impacted only PowerPoint 2007) and happened because version checking code did not work as expected. - Fixed a bug in the split modes that preserve slide numbers, which caused a "Permission denied" error when more than one placeholder among page number, date/time and footer was enabled on the slide deck. This affected only PowerPoint releases 2003 and earlier. 1.22 (August 2020) - Improved slide number adjustment function: besides preserving the original slide numbering during the split, now it is also possible to add a subindex to each slide that derives from splitting a single original slide. For example, a slide numbered 5 would be split into "5.1", "5.2", "5.3", etc. Thanks to Soumitra Pal for suggesting this new feature. - Revised add-in toolbar to accommodate the aforementioned function. - Updated documentation accordingly. 1.21 (June 2020) - No functional changes. - Comments at the beginning of the source code have been moved to README.md. - First (experimental) MacOS release. - Suppressed warning for Office 2013/2016 in Windows installer. 1.20 (June 2019) - The code for PowerPoint 2007+ is unchanged (the version number has just been updated). - Improved preservation of text properties in PowerPoint 2003- for animation effects applied to text paragraphs. Thanks to Mattia Rocco for pointing out this problem. 1.19 (March 2018) - The enhancement introduced between release 1.17 and 1.18 used an attribute that is apparently unsupported by PowerPoint 2007. This release does not introduce any new features, but simply contains an additional check that prevents usage of this attribute in PowerPoint releases prior to 2010. Thanks to David Johns for pointing out this problem. 1.18 (January 2018) - Font colors were sometimes set incorrectly when rendering text effects. In particular, text was sometimes improperly changed to white color after a text entry effect was processed by the add-in, thus making it invisible on a white background. This happened when the original font color was set to one of the scheme colors. In fact, in this case instead of restoring the original RGB values of the font color, the add-in just restored the scheme color index (correct) while disregarding the associated brightness level (incorrect). As a consequence, text that was set to a gray shade from the slide color scheme was turned to white (because, indeed, the brightness level of the gray shade was lost). Thanks to Mark Foti for pointing out this issue. 1.17 (June 2017) - When the "Split on click-triggered animations" box was unchecked, animation effects occurring in the timeline before the first mouse-triggered effect were incorrectly processed (thanks to William Bonaldo Falls for providing me with a minimal example showing the problem). 1.16 (February 2017) - Two main improvements: 1) A dialog box is now displayed when a range of slides is currently selected, to confirm the user's intention to only split slides in that range. 2) Improved rendering of text paragraph entry effects. After some testing, certain statements aimed at preserving line spacing in the processed text frames proved to be more detrimental than useful, therefore they have been commented out. This change applies only to PowerPoint 2007 and later. Thanks to Stefan Fedl for providing me with a useful test case to investigate this issue. 1.15 (June 2016) - No "real" changes. Just relaxed some warnings in the installer about PowerPoint 2016 being unsupported (which was incorrect). 1.14 (August 2015) - Improved handling of animations of text paragraphs. In particular, copying paragraphs between shapes sometimes required inserting an additional newline character at the paragraph end, which was never later removed. Although generally harmless, this caused text alignment to be garbled in some cases, especially when text was vertically aligned at bottom. Now injected newline characters are automatically removed after processing the relevant paragraphs (thanks to John Rowe for isolating the issue in a minimal example). 1.13 (February 2015) - Improved processing of bullet formatting in itemized lists. Still far from being perfect, but a richer number of cases should now be correctly handled (thanks to Scott Otterson for sending a minimal example triggering a specific instance of the problem). 1.12 (October 2014) - Fixed a bug in the clearParagraph subroutine: the bullet character was improperly set to character 160, but it had to be set to character 32 (space) instead (thanks to Leon Carvalho for pointing this out). 1.11 (Jul 2013) - Fixed a bug that could cause crashes of the add-in in at least 50% of the installations when processing path motion effects. Evidence of the bug depended on the nationality where the add-in was installed (yes, it's not a joke!) The bug lied in the conversion of decimal separator characters from the '.' character used in the internal representation of path motion effects to the character adopted in the host machine's locale setting. 1.10 (May 2013) - Fixed a small bug that could cause a crash when fixing slide numbers in the presence of multiple slide masters (the first slide master was not always displayed as the current master, causing shape selection to fail in some cases). This bug only affected the implementation for PowerPoint <=2003. - Fixed a glitch with the detection of the selected slide range. It only affected splitting on a selected range of slides, and caused errors in recognizing the range if slides were not selected in the order in which they appeared in the presentation. Now the range is assumed to start at the lowest numbered selected slide and to end at the highest numbered selected slide: regardless of the range being contiguous or not, all the slides in between are processed. - Reversed semantic for internal variables representing the status of the "Split on mouse click" and "Adjust slide numbers" buttons. This has no impact on the final user except that, in case of failure of the add-in, the internal status is reverted to "True" for both of them (until now it was reverted to "False"), regardless of the status of the buttons. 1.9 (May 2013) - Fixed a (very subtle) problem that caused skipping of some animation effects in the timeline during the preprocessing phase that deletes shapes that are supposed to appear later in a slide. The problem occurred when, during that phase, deletion of a shape caused disappearance from the timeline of effects for the same shape that preceded the currently processed effect. - Fixed release number in the about dialog for PowerPoint 2003. - Fixed progress percentage indication during the initial phase that fixes slide numbers (it contained decimals). 1.8 (Mar 2013) - Fixed some problems with animated text ranges containing text with superscript or subscript style. - Very minor fixes in the PowerPoint 2003 toolbar (there was a missing button group separator). - Removed a misplaced comment about the unsupported features in the source code for PowerPoint 2007. - The progress bar documenting the advancement of the slide number adjustment missed the percentage value in PowerPoint 2007. 1.7 (Jan 2013) - If slide numbers are displayed in slide footers, it is now possible to keep them consistent with those appearing in the original presentation: if splitting a single slide from the original presentation results in several slides, the same slide number is displayed for all of them. - When applying an animation effect to a placeholder for the first time, the "animate background shape" option is disabled but implicitly activated. Relevant effects now take this into account and implicitly assume that the whole shape is to be animated when it is a placeholder. - The ChangeLineColor emphasis effect did not apply correctly if the shape had no line shown. Same for the ChangeFillColor effect. Fixed. - Improved Office XP/2003 toolbar. - Added an about dialog box. 1.6 (Sep 2012) - Removed the progress bar from the progress form. This solves problems with missing Microsoft Form controls and relaxes architecture dependency. 1.5 (Jan 2012) - Fixed a small regression. There is a special case when for a text box there are separate animations for the shape and the contained text. In this case, just after having pasted the box to implement an entry effect, the text contents must be immediately deleted by the applyEffect function itself if they are supposed to appear later on, because they have been pasted together with the shape. Now, this behaviour must be restricted to entry effects for text paragraphs only. Applying the same behaviour (i.e., purging future effects immediately after pasting a shape) to every shape leads to incorrect results. 1.4 (Jan 2012) - Solved a small bug in shape scaling effects. Resizing failed for all shapes having a locked aspect ratio and text frames where text auto-fitting was enabled. 1.3 (Nov 2011) - Improved handling of effects affecting text paragraphs instead of entire shapes. This should solve issues such as lost text styles (bold, italic, underline, etc.) and early appearing paragraphs in the split slides. - Fixed a small bug which caused incorrect handling of rotation emphasis effects. The bug affected shapes that were already rotated before applying the effect. - Improved handling of shape resize emphasis effects in Office <=2003: now the font size is more likely to be correctly updated even when the effect operates on a group of shapes. Note that: 1) font size for text boxes in nested groups will still not be updated, and 2) sometimes the font size may be scaled incorrectly (guess why? Because PowerPoint returns a garbled size for existing text). - Improved handling of entry effects for shapes that have an entry effect on their own + an entry effect for each text paragraph they have inside. - (Again) improved icon for Office XP (2002) and 2003. Now it should match the button icon size, so that ugly scalings do not happen any longer. - The installer should now correctly issue a warning also when at least one of the detected Office releases is not recognized (e.g., Office 2000). 1.2 (Oct 2011) - Improved (un)installer: now (un)configures the add-in for every installed PowerPoint releases, not just the first one. Moreover, detection of installed PowerPoint releases has been improved. 1.1 (Dec 2010) - Worked around a PowerPoint bug affecting handling of effects with the "hide on next mouse click" option activated. - Fixed a bug in the update of the progress bar which caused a crash when handling effects with the "hide on next mouse click" option activated. - Support for Office 2010, both 32 and 64 bit versions. Installer automatically recognizes the correct architecture. - Slightly improved button icon for Office XP (2002) and 2003. 1.0 (Nov 2009) - First release