SVGGraph 2.29 is another version that mostly changes thing internally, but there are a few more visible changes too. The most obvious change should be apparent in the example below.
Box division style
_v variants) now support a new style
"box". The Y axis in the bar graph shows how they behave
with this new style when the labels are at the division marks, and the X axis
shows what happens when the labels are between the marks (usually for bars) -
the box is drawn around the label instead of inside it. I have used the
subdivision_h option set to
0.5 to enable
subdivisions on the X axis so you can see what they look like - they would not
normally be displayed.
As you can probably guess from the 0.0.1 added to the version number, this is a bugfix release. There are a few annoying bugs fixed in this version though.
First, a crash when using the shape skip option with multiple displays and the secondary displays set to not show any images. That one was easy to fix, and so was a bug preventing the screensaver from automatically progressing through the images when the secondary screens were set to show the previous image.
More complicated was an unrelated but similar bug that sometimes meant that JPEG Saver would not automatically progress through the images, and sometimes not even show the first one.
Over the years that I have been working on SVGGraph I have always been grumbling about text. Don't get me wrong - SVG is perfectly capable of displaying text, the problem is that I can never be sure what it is going to look like.
Version 2.28 is an attempt to improve things by using font metrics to calculate the sizes of strings of text more accurately. The two example graphs below demonstrate the difference between the new method and the older method.
Both graphs are using the "Times New Roman" font, where it is easy to see
that "Amanda" is a longer string than "Illicit". The new method is used for the
left-hand graph, where it displays the label boxes packed quite closely to the
text. The old method is enabled with the new
option, shown in the right-hand graph. The label box is a bit tight around
"Amanda", but much too wide for "Illicit". There is more space at the left
side of the graph too, because the old method thinks the seven-character string
"Illicit" should be longer than the six characters of "Amanda".
JPEG Saver 5.1 is a fairly small update to version 5.0, but it does include a couple of important changes. The first of these is the replacement of JasPer with OpenJPEG. These are two different software libraries for handling JPEG 2000 images, which is still a fairly obscure format even after all these years.
If you are using JPEG 2000 images, JPEG Saver should now be able to load them a bit better. OpenJPEG actually supports loading some quite unusual images, but I didn't attempt to support them in JPEG Saver because I would have first had to figure out a way to produce the weird images for testing. So if you have some JPEG 2000 images that JPEG Saver refuses to load, please get in touch and I'll see if I can get them working.
The other quite large change is to how transitions work. It shouldn't really be noticeable in the screensaver, but internally the transitions now use a much more flexible way of deciding what happens when. This should allow for more complicated transitions in future versions.
When I replaced the NSIS installer with a WiX Toolset-built MSI file for version 4.20 of JPEG Saver, I wasn't all that happy with it. It worked fine, it installed and uninstalled the files, but it still had to include the DirectX 9 installer just in case it was installing on a machine that didn't already have it installed. JPEG Saver 5.0 is the first version since 2009 that doesn't need DirectX 9 installed - because it uses DirectX 11 instead.
DirectX 11 should already be installed on Windows 7 and newer, as it is now part of the operating system instead of a separate install. I've tested on 64-bit Windows 10 with Nvidia graphics, 32-bit Windows 10 with AMD graphics, and on a 32-bit Windows 7 virtual machine with no real graphics card at all. JPEG Saver ran without any problems on these, so I'm fairly confident it should run on most configurations.
So what is actually new in this version? Very little, to be honest. I had to rewrite all the 3D rendering code used for the transitions and the real-time items on the main display, but hopefully JPEG Saver shouldn't look or behave much differently to the last DirectX 9 version.