Goat 1000 home

Welcome to Goat 1000 - this is where you'll find some of the bits and pieces of software that I cobble together for fun. Please feel free to download them and try them out. All this stuff is freeware, no guarantee that it will do anything, etc. (though if it does fail to do anything, please let me know!)

RSS Feed



TagCanvas 2.7

TagCanvas 2.7 adds a few simple options, cleans up the touchscreen controls and fixes a couple of little bugs. Here's an example cloud:

Don't read this, look at the canvas.

Custom shape with repeated tags

The first thing you are likely to notice about this cloud is the unusual shape - TagCanvas now supports using your own custom callback function to define the shape of the cloud. I added this because Peter Petrov has added a load of interesting shapes to his WordPress plugin and I wanted to make it easier to use other shapes without hardcoding them into the TagCanvas script. There is no new option for this, just provide the name of your function to the “shape” option. There is some documentation and another example on the TagCanvas shapes page.

The list of links used by TagCanvas to draw the cloud above only contains four links. Four tags would not show off the custom shape very well, which is where the new options come in handy. “minTags” and “repeatTags” repeat the list of links to create extra tags in the cloud. “repeatTags” repeats the list a specified number of times, while “minTags” specifies a minimum number of tags, repeating the list as many times as required to reach that number. The options are limited to prevent creating vast numbers of tags, but they should allow for some quite large clouds.

Read more . . .


JPEG Saver 4.14

JPEG Saver 4.14 doesn't contain anything truly amazing, but it does have a new item for adding to the display: an analog clock. I first played with an analog clock item back in 2010, drawing the hands as Direct3D meshes. It worked, but it looked awful so I shelved the code. The analog clock in version 4.14 works the same way that the text clock does - drawing to an off-screen bitmap and then pasting it on top. It looks a lot better and makes it easier to preview the clock in the item configuration dialog.

I thought about adding a shadow option to the analog clock, but then I realised it was already easy enough to do using JPEG Saver's items list. Set up your clock the way you want it to look then create a copy, set the colour of the copy to grey (or whatever colour you want the shadow to be), change the offset by a few pixels and then drag the copy above the original clock in the items list. Items are drawn in the order they appear in the list, so the shadow should be above the main clock to be drawn first.

This version also adds some extra format tokens for the “Image info” item, for displaying some properties that can be updated in Windows Explorer. These are the title, subject, keywords (or tags), comments and author. The properties are actually stored in the Exif metadata, but are not part of the Exif standard (which is why I hadn't thought to include them before).

Read more . . .


SVGGraph 2.18

In previous versions of SVGGraph there were labels for some bars and labels for pie slices, but that was about it. They used different code, had different option names, and supported different styles and things. Version 2.18 attempts to bring the labels together, support labelling all the data items, and provide more options for what the labels look like.

Not a pipe organ

This example StackedBarGraph shows some of the new features. The labels are displayed using a data_label_type of “bubble”, with the data_label_filter option used to only create 1 in 3 labels for the second dataset and all labels for the first. What do you mean, you can't see the labels for the first dataset?

You can't see the labels for the first dataset because the data_label_fade_in_speed and data_label_fade_out_speed are both set to allow the labels to fade in and out, and the data_label_click option is set to array('hide','show'). This hides the labels of the first dataset and shows the labels of the second from the start, but they are all still there.

Read more . . .

Older news . . .


Contact me

If you want to contact me, my email address is at the bottom of the Readme.txt file or PDF in any of the zip files, or in the source of Javascript files, or you could try to figure it out from a combination of my name, (graham) this domain name (goat1000.com) and the @ sign.

About this site

All pages on this site are written in PHP. Syntax highlighting is performed using GeSHi. Titles and sub-titles use the Franchise font, with CSS @font-face files generated by the Font Squirrel @font-face generator.

Use of Cookies

This site uses cookies for usage statistics, adverts and the sharing buttons. If you disable cookies in your browser, the adverts you see might be less relevant to you and my statistics might be less accurate, but apart from that the site should work fine.

If you are wondering what the point of that paragraph was, please take a look at the EU Cookie Directive site.

Site search

The search box on this web site (“Search Box”) is powered by Google Inc (“Google”). You acknowledge and agree that Google's privacy policy (located at http://www.google.co.uk/privacy.html) shall apply to your use of the Search Box and by using the Search Box you consent to Google using your personal data in accordance with its privacy policy.

Updated 28/05/2015.