Thursday, December 31, 2009

Repton Through Wine

A couple of days ago I rather glibly said that the PC versions of the computer game Repton ran fine with WINE on the GNU/Linux operating system. That's not quite true, so I thought I'd take a closer look at running Superior Interactive's PC versions of Repton 1, Repton 2 and Repton 3 on GNU/Linux.


WINE Is Not an Emulator

I have two computers here. They both run the GNU/Linux operating system with the GNOME desktop and have WINE installed. In case you didn't know, WINE is the little bit of free software magic that lets you run programs written for Microsoft Windows on GNU/Linux, Mac OS, FreeBSD and Solaris. My wife's computer runs the Fedora 12 distribution (or distro) of GNU/Linux and the free nouveau graphics driver. I've installed version 1.1.32 of Wine on my wife's computer. My computer currently runs Ubuntu 9.10 (Karmic) distro of GNU/Linux with the non-free nVidia driver. It has version 1.1.35 of WINE installed.

WINE 1.1.32 is the version currently available for popular distros such as Ubuntu or Fedora, and will therefore be the version most users are running. WINE 1.1.35 is the very latest version, and instructions on how to obtain it are available here.

The PC Repton games can be run "full screen" or in "windowed" mode, in a window on your desktop. You can toggle between these modes by pressing F10.

Repton 1

On WINE 1.1.32 the game will not run properly in "full screen" mode. It will run in "windowed" mode but suffers from a couple of issues. The first is masking - the masking of sprites and the pointer does not work at all.


Repton 1 masking visible on WINE 1.1.32

The second issue is digits missing from the screen selector boxes on the main menu screen.


The boxes at the base should contain digits

On WINE 1.1.35 Repton 1 runs perfectly in "windowed" mode so if you have WINE 1.1.35 or above I can recommend Repton 1 to anyone running GNU/Linux provided you're happy to have the game running in a window.


No masking visible on WINE 1.1.35


And the digits are present on WINE 1.1.35 too

It also runs reasonably well in "full screen" mode. The sprites are stretched, as no compensation is made for the aspect ratio of my widescreen monitor when making the display full screen. The game also suffers from the masking problems that affected Repton in "windowed" mode on WINE 1.1.32. But it does not suffer from the missing digits on the screen selector boxes that affected WINE 1.1.32.

Apart from the masking issue and the stretched sprites the game plays very well "full screen".

The Repton 1 level and sprite editor works with no issues on both versions of WINE.

Repton 2

On WINE 1.1.32 the game will not run properly in "full screen" mode. It will run in "windowed" mode but suffers from the same masking issue as Repton 1.


Repton 1 & 2 have same mask issue on WINE 1.1.32

On WINE 1.1.35 Repton 2 runs perfectly in "windowed" mode so, again, if you have WINE 1.1.35 or above I can recommend Repton 2 to anyone running GNU/Linux provided you're happy to have the game running in a window.


No mask issues on Repton 2 with WINE 1.1.35

It also runs reasonably well in "full screen" mode. The sprites are stretched, as again no compensation is made for the aspect ratio of my widescreen monitor when making the display full screen. The game also suffers from the masking problems that affected Repton 1 in "windowed" mode on WINE 1.1.32.


On exiting Repton 2 from full screen mode

However, unlike Repton 1, it crashes messily on exiting the program having been in full screen mode.

The level and sprite editor works with no issues on both versions of WINE.

Repton 3

The issues with Repton 3 are identical for both versions of WINE.

The game will not at all in "full screen" mode - in fact, selecting it will cause the game to crash messily. It leaves the screen at low resolution as it crashes so you have to either log out and in again.


Repton 3 in "windowed" mode

It will run in "windowed" mode, with issues. The first is that selecting "Run game in high priority mode" will cause the game to crash, and you need to reinstall the game before you can use it again.

The second is selecting the map. If you try and select the map the game will crash. So, Repton 3 will run (and run very well) in Windowed mode provided you don't try and look at the maps.


I told you not to look at the map...

The level and sprite editor works with no issues on both versions of WINE.

Conclusions

So there you have it. Other than no full screen mode Repton 1 and 2 work well on the latest version of WINE. Repton 3 has a serious fault (the lack of maps) and more minor niggles (no full screen mode, and the crasher upon selecting High Priority mode) but other than that is perfectly playable.

If you have tried to run one of these games with WINE I'd be interested to hear how you got on.

Wednesday, December 30, 2009

From The North

Recently I had another nice surprise - Michael S. Repton has uploaded a play-through of ROVERS, the Coronation Street theme I created for the BBC Micro version Superior's Repton 3 in the late 1980s, to his YouTube channel.




I've already described the "Rovers" Repton set here, but as always it's fascinating to watch a player as good as Michael tackle my levels.

You can download the "Rovers" theme for the PC version of Repton 3 from here.

Monday, December 28, 2009

Repton's Silver Jubilee

I've just turned 38, which means I've been a keen Repton fan for 24 years. It seems incredible, but next year is Repton's Silver Jubilee.

If you don't know what I'm talking about, if you look through the Blog Archive you'll see I've talked about the computer game Repton several times: both the cover art and graphics I've done recently for Retro Software and also some of the screens and graphics I designed on my BBC Micro back in the 80s.

This time of year - Christmas and my birthday - always makes me think of Repton. Waiting for Christmas 1986 was almost unbearable as it was then I was going to get a copy of the latest Repton release, Repton 3. I didn't have a disc drive at the time, so my copy of Repton 3 would be on cassette tape for the BBC Micro.

The excitement was because, for the first time ever, I was going to be able to design my own levels and graphics for the game and I couldn't wait. I only had a couple of C15 cassette tapes to store my levels at first, and I as I designed levels and graphics I'd save over my previous work again and again. And sometimes a quirk of the cassette recorder volume or tone control meant that the file wouldn't save properly. I dread to think of the number of levels and character designs I lost.

However, one of the very first levels I designed that Christmas I was so pleased with it just seemed to hang around and hang around and I still have it to this day. The password for the level is "TIMOTHY" - named after my pet goat at the time and it was always screen G (for Goat).

Screen G - TIMOTHY

I actually could only complete this level with great difficulty for many years - I used to be happy if only I died twice when completing it.

Eventually, using information I'd gleaned in a Hac-Man article in The Micro User I culled all the easy levels I'd created on various tapes and 5.25" floppies into one set - Set1.

Set1 also featured a customised set of graphics. I was very disappointed with the graphics in Repton 3. This was because they didn't look like the abandoned diamond mine on the cover art. They were all clean and clinical and didn't have much character. So I sat in front of Repton 2 with coloured pencils and recorded every sprite faithfully on graph paper.

My original drawings from 1986

Then I entered all the character designs into the Repton 3 editor - a process that took a very long time and was rather difficult on a fuzzy Microvitec CUB CRT monitor.

The graphics entered into Repton 3

Recently I've been thoroughly enjoying the Repton level play throughs posted onto YouTube by SentinelProxima, ReptonGeek and TestPilotMonkey. SentinelProxima is the YouTube channel name of Michael S. Repton, undoubtedly the world's best Repton player.

I was curious to see how Michael would tackle Screen G, as I take an age to complete the level even now. Michael very kindly produced a long playthrough of all the screens.

The first four levels are completed here:


And the second four levels are completed here:


It was incredible to watch Michael complete my levels - all far more elegantly and with greater efficiency than I could ever manage. As I've said before, the effect of watching someone so good play Repton is as compulsive as watching a 147 break in snooker. It really was a pleasure to watch, and it was a truly fantastic birthday present.

Lovingly prepared new versions of Repton 1, Repton 2, Repton 3 and Repton Spectacular are available to buy for the Microsoft Windows operating system from Superior Interactive. And, for those lucky enough to use the GNU/Linux operating system, you'll be pleased to hear all three games work reasonably well with WINE.

You can download my levels for Repton 3 for the PC version of Repton 3 from here.

Saturday, December 05, 2009

But what's it for?

When I posted about my VHS and PAL plug-ins for The GIMP, I forgot to say why I originally wrote them. As I was using the VHS plug-in last night, I thought it might be interesting to explain what I was using it for.

I often find myself taking captions found on old multi-generation VHS tapes, and trying to recreate them in Inkscape (or, in the old days, in Macromedia Flash).

The trouble is that VHS changes can change the way captions appear. In particular, it changes the way the text on captions appears. This makes it very hard to match the typefaces used on captions with ones I have in TrueType, Postcript or OpenType format.

Take this caption, for example (click on it to make it bigger).

Could you help someone coping with franchise loss?

When I saw it, I knew immediately that the "PUBLIC SERVICE ANNOUNCEMENT" text was in Compacta Bold. However, when you create the caption in Inkscape it simply doesn't look right (click on it to make it bigger).

Together we can beat pipe smoking.

As you can see, the text looks so much thicker it's almost as if I've used the wrong font weight. But I know that the text is not Compacta Medium - that would be far too thin. And I also know there were no other weights of Compacta available to Scraggie and his friends in the Mecanorma or Letraset dry transfer lettering catalogues in the 1970s. So what's going on?

If I load the Inkscape caption into The GIMP and put it through my VHS filter, which reproduces the mangling that VHS inflicts on television pictures, you get something that looks like this.

Dinage isn't the problem it was.

The weight of the font in the caption above looks more like the original - and I've clearly used the right typeface all along.

The Southern Television logo is used courtesy of Nic Ayling.

Tuesday, December 01, 2009

Hey Jemima let's go popping....

Having got heartily fed up of Ubuntu GNU/Linux snap, crackling and popping at me at the slightest provocation, I ended up looking for a solution. After a quick Google I found the answer. It turns out I'm having this audio issue because Ubuntu is utilising a power saving "feature" of Intel integrated sound hardware.

At the command line, if you type:

gksu gedit /etc/modprobe.d/alsa-base.conf

And then comment out the following line in the gedit window that appears by putting a hash (#) symbol in front of it:

options snd-hda-intel power_save=10 power_save_controller=N

You'll find that, after a reboot, there's no more popping.

I've also finally discovered a music player program for GNU/Linux that does exactly what I want. It's called Quod Libet, and comes with an excellent piece of tagging software called Ex Falso.


What exquisite taste this man has.

I've found it to be utterly fantastic for people like me who like to organise and tag their music to an inch of its life.

Inkscape 0.47 Out Now!

One of the jewels of free software is the vector graphics editing program Inkscape. Inkscape is based on the W3C Scalable Vector Graphics (SVG) file format. The SVG format is very exciting and as well as vector graphics includes both fonts and animation - at the rate Inkscape is implementing the features of the SVG specification it won't be long before Adobe's Flash has serious competition.

Inkscape 0.47 has now been released. I've been using betas of the new version for some time now, and one of the attractions of the betas were the new vector effects filters.

For instance, take a copy of my vanilla flavoured TVS .svg file:


Daring, dazzling, death-defyingly dull, divinely decadent...

Now add "Chrome Dark". In one mouse click you've got something very nice indeed. You can click to enlarge the image below:


TVS + Chrome Dark filter

One thing I would recommend when playing with the filters (and which is a bit counter-intuitive seeing as Inkscape is a vector editor), is seeing what effect you get if you make your drawing bigger - much bigger in fact. Some filters seem to work best on larger images.

Inkscape is available for the GNU/Linux, Windows and Mac OS X operating systems and if you haven't already downloaded it I strongly recommend that you do so.

Meanwhile, I'm off to play some more!

The TVS logo was originally designed by John Haiman. The TVS logo and TVS name are registered trademarks of TVS Television Productions, Vinters Park, Maidstone, Kent, ME14 5NZ.

Running Rampant

Yesterday was St. Andrew's Day, so I thought I'd listen to some Al Stewart whilst I did something related to Scottish Television - the company whose license to print money predated Quantitative Easing by quite some margin.

Here it is - traced by hand in Inkscape, from a scan of an original STV pasteboard (courtesy of Gareth Randall).


What's on Channel Ten, hen?

It's interesting, but I've found all the recent work I've been doing on fonts has helped me enormously in hand tracing complex shapes such as this accurately.

Monday, November 16, 2009

Watching DVDs on Ubuntu

Many moons ago I published a post about my problems in playing DVDs in Ubuntu GNU/Linux. The main problem was that I simply couldn't. Which is quite a big problem, particularly for me.

Well, now I can without going through the hoops I posted about last time. Thanks to the updated version of the Linux kernal found in the latest version of Ubuntu, the fix for UDF now actually works. To apply it you need to change a file you find in

/etc/fstab

You need root privileges to write to this file, so to get them I opened it up in the gedit Text Editor using the sudo command.

sudo /usr/bin/gedit /etc/fstab

Then I commented out the line that read:

/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto,exec,utf8 0       0

By putting a hash (#) symbol in front of it and then added a line underneath it that read:

/dev/scd0 /media/cdrom0 udf,iso9660 users,noauto,uid=0,gid=46,mode=0777,dmode=0777,nosuid,noexec 0 0

This should be all one line. Once that is done, video DVDs will actually mount, and you can actually play them.


Now I can watch DVDs just like this one!

I had another problem with video in Ubuntu, and that was Totem never seems to be able to work out the duration of a VOB or MPG video file. It thinks no MPG file is longer than about 24 seconds. Mind you, that's about four times the average attention span these days, which is probably why the bug hasn't been picked up yet.

I fixed this by the simple expedient of installing the excellent free software media player VLC. It particularly excels with video, and allows me to have lovely jittery interlaced fields using the Video -> Deinterlace -> Linear option.

What a waste of time...

This morning, I stumbled upon...

http://new.myfonts.com/fonts/profonts/sportowy/

Head -> Desk -> Head -> Desk -> Head -> Desk.

And it's about fifty times better than the version I did.

Head -> Desk -> Head -> Desk -> Head -> Desk.

If I had known I wouldn't have bothered.

Head -> Desk -> Head -> Desk -> Head -> Desk.

Look how elegant the sportowy @ sign is, and the sportowy circumflex and breve, and how they managed to get the inner stroke proportions correct as they had decent source material to work from...

Head -> Desk -> Head -> Desk -> Head -> Desk.

And overhead a rainbow appeared. In black and white.

Sunday, November 15, 2009

The Final Scene

I've finally finished my Scene.ttf font (which you can find out more about here and here). I added all the glyphs I think I'll ever want to add to it - I'm sick of it now! Mind you I enjoyed delving into the strange world of macrons, ligatures, ogoneks, cedillas and breves. That is, I enjoyed it until I had to produce dozens and dozens of glyphs using the damn things!

As you can see from the FontForge font view window below, there are rather a lot. You can click on the picture to make it bigger.


Dave's fuller house

After I added Hungarian characters, I also wanted to add Welsh and once I had added Welsh I thought I might as well add the lot. The font is in truetype format, but because of all the extra characters it now uses the Unicode BMP encoding.

I showed my Scene font to a friend of mind called John Livens. He is a retired printer (and also an excellent painter). He said:
OXFORD!!!! I remember it well. If you’ve ever tried to rub down a line of Letraset, especially an old sheet of Letraset, you’ll not forget Oxford...
Anyway, now you can use something approaching the old Letraset Oxford face in the comfort of your own home without having to worry about inking the gaps in broken lines with pen or running out of "e"'s. The finished font is licensed under the SIL Open Font Licence 1.1 and can be downloaded from here.

Right, I'm off for a lie down...

Friday, November 13, 2009

Making more of a Scene...

After producing Version v.0.001 of my Scene font (my version of the Letraset Oxford typeface) I found all the empty glyph spaces I was left with in the FontForge Font View window rather unsatisfying. It felt like the font was only half finished.


More free spaces than a Cheeky Girls gig

The trouble was that I'd created all the glyphs that had appeared in the original Letraset Oxford face, so if I wanted to add all of the missing glyphs I'd have design them myself - in particular, I'd need to design the whole of the upper case. Despite worrying what on earth I'd end up with, I fired up Inkscape and decided to have a go.

There were some letters such as B or D where I thought it was pretty clear what an upper case version would look like. The font as a whole reminded me of the plastic stencils I used to have as a child which contained what looked like German DIN rounded faces.

The first test I did was the upper case A. I used the same angle of slope as the lower case letter v in the original Letraset Oxford face and the same height as the lower case letter letter l. The only decision then was where to place the cross bar on the A, and though I did toy with making it an extension of the horizontal line that joins up the letters in the end I decided to put it higher up, where I thought it looked best.


Eh?

However, when I came to the D and B I found it far more problematic to get them looking right. The lower-case letters look like a condensed face and are quite rectangular, so one problem I faced was to get the right width to height ratio. It took several attempts to get the D correct.


I could do with a D...

Once I'd sorted out the D, the B was even worse. The main feature of the Oxford face is the line that threads all the letter and number glyphs together. The lower case letters were designed to keep the area around the horizontal threading line as clear as possible, and therefore my first thought was to make the line that bisects the B as high as possible. However, this ruined the readability that is such an important part of the font, and also made it look rather 1930s instead of 1960s/70s.


To B or not to B?

You'll notice in the B and D examples above that I also had to make all the right angles rounded in order to make the face look consistent.

The next problem was the letter E. There were two considerations here. First, there was the fact that the lower case e in the original Letraset Oxford face was one of the most distinctive features of the face, and I wanted the upper case E to be distinctive as well. The second problem was that pesky threading horizontal line.

The bottom bar of the capital E was going to interfere with this, and I really didn't want that to happen on such a commonly used letter. I decided I needed some kind of rounded E, but I had a four attempts before I settled on my third design.


E's are good. Well, one of them is.

An identical problem was presented by the letters L and Z. In the original Letraset face they just ignored the problem and let the bottom of the lower case z and the threading line clash with each other. So for the upper case Z I just did that too. For the L I did experiment with having a rounded bottom, but it looked dreadful and therefore created another clashing horizontal monstrosity.


L no! L yes!


One of the most distinctive features of the original Letraset Oxford font was the rounded bottom on the lower case letter w. I like a nice rounded bottom, so I decided to keep that feature in the upper case letter W.


Nice rounded bottoms

If you tried version v.0.002 of scene.ttf you'll know that the face is proportionally spaced, but it is not kerned. That means that the spacing can appear odd with certain letter combinations. This is unavoidable, as most font renderers make a rather horrible effect on the threading horizontal stripe if you try to kern letter pairs closer together.


An ugly Kern. And I don't mean András.

The spacings on the lower case are the same as on the dry transfer lettering version of the Letraset Oxford face. The spacings on the upper case are my best attempt at being as useful as possible, but in some circumstances the kerning won't look right. However, this is easy to fix if you using the font in a tool such as Inkscape.

Another distinctive feature of the Letraset Oxford typeface is that the numeric glyphs are not full height, but are the same height as the lower case letters. This meant that I made all the symbols that are used mainly in connection with the number glyphs look best when used with the rather small numbers. This includes the vulgar fractions, the currency symbols, the degree sign, the multiply and divide signs and the ordinal indicators. This means they may not look very good when used with upper case letters, but I hope what I've done is the best compromise.

Hopefully you'll appreciate what I did with the plus, minus and equals symbol. They can either be used "threaded" with no gaps between them and digits, or they can be used with "capped" ends so that they can be used with spaces. The example below shows both, and the sequence of letters needed to create each string.


Johnny Ball stuff

The @ or "at" character was a tricky one to design. I thought that the main usage of it these days would be to create e-mail addresses, so I designed it to look best in email addresses made up of lower case characters. This means it doesn't look very nice in strings of upper case letters. However it does look fine when used with digits, which is the other place you would expect it to be used.


Where it's at

When I came to create accented versions of my newly designed upper case glyphs I got a rather nasty surprise. With acute or grave accents my characters are too high. In TrueType or Postscript fonts glyphs should not normally appear above the 819 pixel mark. In the picture below the top horizontal rule is at 819 pixels - and my acute accent goes over this by quite some margin! This was caused by my inexperience and next time I create a typeface I'll ensure that the accented characters are a legal height.


Oh, too high...

Creating accented versions in FontForge is very easy, as you can copy references to characters and accents so that you only need to describe each part of a glyph once. The capital O with an acute accent is made up of a reference to the O character and a reference to the acute accent which means that if I want to change either the O or the acute accent they will automagically be changed everywhere else too. Of course, as another bonus this also saves space too.

A glyph that I'm not very happy with and am still thinking about is the capital letter Ash. The letter Ash is the letter A joined to the letter E to make Æ. I particularly wanted the letter Ash to look nice because my favourite band is called Mæstoso. However, The problem I faced was joining my rounded capital E to a non-rounded A - the end result is a bit too narrow for my taste.


Gone Ash tray -  (the letter, not the material)


The finished v.0.002 of my Scene.ttf font contains all of the glyphs in the Latin1 (ISO8859-1) character set.


Dave's Full House

As I have said before, I want to add Hungarian characters with double acute accents and also a Euro symbol to the Scene face. To do whis I need to add the glyphs in the Latin0 (ISO/IEC 8859-15) and Latin2 (ISO8859-2) character sets. I plan to do that in v.0.003 as and when I get the time and write another blog post when that version is ready.

Meanwhile, version v.0.002 is licensed under the SIL Open Font Licence 1.1 and can be downloaded from here.

Friday, November 06, 2009

Interlude

Well, time to put the blog to sleep again for a week or two due to a pressing need to actually do some stuff that I can blog about.

In the meantime, here's a picture of a fat bloke in a red jacket...


You'll have to supply your own harpsichord

Thursday, November 05, 2009

Anyone for a Ketamined Kangaroo?

I'm a big fan of free software in general and the GNU/Linux operating system in particular. The first distribution or "distro" of GNU/Linux I ever tried was Ubuntu, and being a huge fan of brown and orange it's the version I'm still using on my computer to this day.

I like free software because even though I don't have time to write many programs these days, I like fiddling with software and I like sharing software with my friends, and free software positively encourages you to do both.

GNU/Linux is also a natural choice in our household as it's multilingual - it allows us all to run the operating system and applications in whatever language that suits us whenever it suits us.

Recently I've been testing the Beta and Release Candidates of the latest version of Ubuntu - version 9.10 or "Karmic Koala" as it's known. As you read this I hope to be sat in front of the full release version.

I've noticed that there is a new feature that makes my life a lot easier in Karmic, and that is the font previews you get in the Nautilus file browser.


Font previews in Nautilus - invaluable

This is a lovely feature and saves me hours of work in an average week when I'm hunting for a font I've forgotten the name of out of a collection of thousands.

For those of a typographical persuasion there is also an excellent article about using fonts on Ubuntu here.

If you've never tried GNU/Linux, doing so - even for just an hour or two - is easier than ever and I do recommend you give it a whirl.

Wednesday, November 04, 2009

Show Business

You may remember I blogged about bits and bobs I did for the Acorn World Show, which was held on the 13th September 2009 in Huddersfield. You also probably know I've also done a lot of work this year for one of the main exhibitors, Retro Software.

The Centre For Computing History, the museum that's preserving some of my work for posterity, made video recordings of some of the speakers at the Acorn World show and one of the speakers happened to be one of the geniuses behind the BBC Microcomputer and the Acorn Risc Machine or ARM chip, Professor Steve Furber CBE.


Professor Steve Furber and my artwork. It doesn't get much better!

They've posted Professor Furber's talk online, and I'm delighted to say that you can see him wandering about in front of my posters for pretty much the whole video. I'm sure he was only standing in front of them so they wouldn't make the audience vomit, but it still made me incredibly happy.

The Retro Software stand at the event was so successful that Dave Moore of Retro Software was asked by the organisers of the RISC OS London show if he would exhibit it there too.  Dave sent me a picture of the Retro Software stand at the show, complete with three posters two adverts and a banner I'd designed for him. It looks incredible and, again, it made me feel very happy.


Click to enlarge.

Before the RISC OS London show, Dave was offered a free advert in the new .pdf format RISC OS magazine "Drag And Drop". Dave asked me to modify one of the adverts I'd designed for him.

One of the modifications he asked me to make was to replace the "See us at the Acorn World" flash with a "See us at the RISC OS London Show" flash. To do this, I needed to make a vector copy of the small bitmap RISC OS London Show logo Dave supplied me in Inkscape. I copied the logo quite faithfully, but I couldn't resist changing the Gill Sans for the rather more fitting Johnston's Underground.


Johnston's Underground

You can see the advert in the sample copy of "Drag And Drop" that's available here.

Tuesday, November 03, 2009

The Oxford Node Show

There was one typeface that I remembered as a child that kept popping up in the same sort of places. It seemed to have a particular attraction for the education sector. It was beloved of polytechnics, tiny companies selling electronic bits and bobs to school science labs or programmes for schools and colleges. Perhaps its most famous use was on the BBC's Scene, adorning some cardboard cut-outs of cows.


Fay Weldon, Willy Russell and Tom Stoppard

Much later, thanks to the excellent Sanskrit Web, I downloaded a Letraset catalogue from the 1970s and saw that the font was called Oxford. For the next couple of years I began frantically searching for the typeface, from both commercial sellers and free font sites and kept drawing a blank. It didn't seem to be available in any kind of digital format.

However, I did find this picture amongst the wealth of goodies here:





Keep drawing lines until you get something like this. Then stop.

When it came to the open and close quotation marks, I was very lucky that I also managed to find the picture below on the Google Images, which showed me how they would have been used.


Groovy!

In a moment of madness, I decided it might be a nice exercise to try and draw the font myself using my old friends Inkscape and FontForge 2.0.

The first thing I decided to do was base my drawings on the large, clear 96pt letter 'a' at the top right of the scan. The letter a was 96pt which, on a 90dpi display, is 120 pixels. So I decided to draw my characters at 120 pixels high in Inkscape as I thought that would mean I would have a good chance that if I did the various elements of the font would sit on nice round numbers.

So I created two horizontal guides, 120 pixels apart, then scaled the scan of the font so that the letter a was also 120 pixels tall. Now I could work out the width of the letter a, which turned out to be 102 pixels. So I added two vertical guides at 102 pixels apart.

The most important line in the typeface was the line that threads all the letters together, and I could see this was centred at 40 pixels up, so that was another guide. The final guide I wanted to add was the top of the innermost letter, and that was at 108 pixels up. So with all my guides in place on top of my scan, I had an image that looked like this:


Eh?

Now I needed to work out the width of the stripes that composed the letter. After experimenting a bit, I found that the outer "thick" stripe was 5 pixels, and other stripes were 3.5 pixels. The latter value would cause me no-end of problems later when I came to import the font into FontForge 2.0.

The next job was to work out the position of the ascenders (of high letters like d) and descnders (like g) and add these as guides. I did this by moving the scan left and right and finding the best place for the guides. So now I ended up with a full set of guides.


Guides


Now I was ready to start drawing the letters (or glyphs). I first drew the bits and pieces that made up the most common inner glyph shapes, using a 3.5 point stroke.


Bits and bobs for making letters

For each glyph, I would use these bits to make up the innermost glyph shape. I would then stroke this shape by 7 points, convert the stroke into an outline. I would stroke this outline by 7 points, convert the resulting stroke into an outline. I would take this outline, stroke it by 10 points and convert this stroke into an outline.

I had to keep cleaning up the nodes in my outlines as I went. This is because Inkscape adds various unnecessary nodes when you convert a stroke into and outline. These have to be removed so that import to FontForge goes smoothly.

At the end of the process I would have four shapes.


Very y's.

By aligning them on top of each other and using the Path Subtract feature I would end up with a nice shape.


Two subtracts and four aligns later

For the numbers, I added some additional shapes to the set of outlines I used to construct glyphs. You'll notice most of the numbers were based on one or both of the two circles that made up the number 8.


The bits and bobs I used to make the numbers

I found the construction of the letters to be incredibly consistent - every single one of the glyphs was created by simply expanding the central shape with two exceptions - 5 and 8.


The bounders! The cheats!

The letter "j" presented an interesting kerning problem. The j shown in the scan of the Letraset original is fine if used in words like "ajax". But try ajjax!



J's fluid?

The only way to get around this is to give an extra piece of stripe in the "-" character and a long piece of stripe in the "=" character to allow you to "kern" the shape by hand.

I also had the problem of where to put the little caps for the end of the stripe that connects the glyphs together. In the end I settled on "{" and "}", but that may change.


With (left) or without (right) caps.

So, eventually, I had a nice set of glyphs in Inkscape all ready to import into FontForge.


Finished glyphs drawn in Inkscape

I exported each shape as an individual .svg file. I made the individual .svg files 1024 x 1024 pixels in size with the descender line at 200 pixels. This meant I had to scale each of my glyphs by 400%.


SVG files ready to import into FontForge

All I had to do was import these SVG files into FontForge. And this the bit where I nearly gave up. To start with all looked fine.


I always use a letter m on my font blog posts

However, tested how my glyphs looked in the FontForge Metrics window they looked absolutely terrible. All my nice neat Inkscape work looked as if I'd drawn it in crayon with my left foot. Fortunately I decided to create a test font using just the letter "a" to see what was going on. I got a load of errors spewing out of FontForge. In the past I've just ignored these but I decided that I perhaps should pay them some attention.

The main problem I had was that the position of all your points and control points for a font should really be on whole number boundaries. This is where my 3.5 point strokes bit me on the bum. However, FontForge can fix this for you automagically using it's Find Problems feature. All you need to do is check "Integral Co-ordinates" and it'll happily pull all your nodes into true for you.


The Find Problems dialogue is your bestest friend

Another problem I had was "Intersecting Paths". This is caused by Inkscape adding points that are on top of each other when you convert strokes to outlines. Again, FontForge can highlight the offending points for you if you check "Intersecting Paths" in the Find Problems Window. Often, selecting the offending points and using the Element Simplify feature was enough.


A common problem if you used Inkscape to draw glyphs

The only other problem I had was a rather nasty condition called "Missing Points at Extrema".  With a font, there needs to be a point (or node, as they are called in Inkscape) at the extreme left, right, top and bottom of a glyph. Normally they are there anyway simply because of the way your glyph is built, but diagonal lines with rounded ends often cause problems:


Click to enlarge

As you can see above, the shape on the left hand side does not have it's right hand extrema marked by a point. On the right the missing point has been added.

It is actually very easy to fix, as usually FontForge will do this for you, and once you know about it you design your glyphs with this requirement in mind.

After fixing all these problems, I could generate my font with no errors whatsoever - this is the first error free font I've ever created in FontForge and I'm rather proud of myself! And, better still, FontForge wasn't mangling up all my nice outlines any more - the glyphs looked just like they did in Inkscape.


Ta-dah!

I called the font "Scene" in honour of the cardboard cows. It's missing rather a lot of glyphs - which I will add gradually as and when I get the time and inclination. I particularly want to create a CE (Central European) version as I want to write some Hungarian words with double acutes.

The font is licensed under the SIL Open Font Licence. This is a new license for me, but apparently it is the most commonly used license for free software fontography. As an added bonus, FontForge 2.0 can actually apply the licence to your font for you.



The finished "Scene.ttf" TrueType font is available to download here. If you are using Windows you might not be able to unpack a tar.gz file. If so, there is an excellent free software utility called 7-zip that you can get here (thanks to Bernie for reminding me).

My "Scene.ttf" font is not the Letraset Oxford face - I would need better source material and a lot more time to do something approaching that. I'm sure eventually Letraset will get around to releasing the typeface as a TrueType or OpenType font themselves and do a much more professional job than I could in three days. But I am happy with what I've created and I hope you might find it useful too.