From: kris@tpki.toppoint.de (Kristian Koehntopp)
Subject: SUMMARY: Calamus font trouble
X-Copyright: (C) Copyright 1992 Kristian Koehntopp -- All rights reserved.
		 Reproduktion, auch auszugsweise, ausserhalb elektronischer,
		 nichtkommerzieller Datennetze nur mit ausdruecklichem,
		 schriftlichem Einverstaendnis des Autors.
Organization: Toppoint Mailbox e.V.
Date: Sun, 26 Jul 1992 17:58:57 GMT
X-Excuse: X-Copyright wegen Emma, Suedwestpresse und /C'T/DISKUSSIONEN.

In <H.roaiWz2vock@jonh.wimsey.bc.ca> jhenders@jonh.wimsey.bc.ca (John Henders) writes:
>	I beleive SL refuses to load fonts that have the string " Postscript" 
>in the header, so a simple letter change can fix any font converted 
>from postscript which puts this in the header. Use one of the many
>available hex editors to change the files. 

Some time ago I let out a cry for help, because due to a serial
number change I was unable to use my old serialized calamus
fonts with my new version of calamus SL.

Many thanks go to the net, some people in Passau and in the
Netherlands who shared facts, code and grief with me. Many
thanks also go to borland for the turbo debugger, a really
powerful tool for everyone who wants to find out about what
really is going on within.

Thanks to you all who helped me to understand the calamus font
format.
	
[ dmc flame on ]

	Finding out these details delayed productive work here
	for about one week and blocked one desk and two persons.
	Potential calamus customers should add this to the cost
	for your copy of calamus if you consider buying this
	program.

	The brain dead font serialization scheme of calamus
	does stop you effectively from distributing your work or
	building pipelines of workers. For examples we here
	often get half baked documents from several other
	people that have a sample page of layout ("I should
	look like this!") and have to be finished by us.

	Since these people use fonts we don't need for our own
	work, we do not have these fonts with our serial number
	(we don't need them in our documents). To finish the
	work and use their fonts with their documents we had to
	install versions of their copy of calamus on our
	harddisk. Maximum was four different copies of calamus
	eating up valueable disk space. Sometimes we had
	differing versions with different features and bugs and
	us switching between them rapidly. This is not a
	friendly working environment.

	When we upgraded our machine to an Atari TT, their old
	versions of non-SL calamus were not longer functioning
	properly on our new machine. Our copy of calamus SL
	worked (No, it did not "work fine".  Most of the
	advanced features were "not yet implemented", rendering
	the program unusable for serveral months for us), but
	the serial number changed. There we were: Unable to use
	our purchased, serialized fonts, unable to finish the
	work other people unloaded onto our desk, with
	deadlines to keep and the clock ticking.

Resumee:

	Calamus is useful tool for page design and layout.
	Because of my personal experiences with its font
	serialization scheme and because of the experiences
	other sources, who tried to install and use public
	domain or third party fonts, shared with me, I strongly
	dicourage anyone from buying this program. I recommend
	that under all circumstances you try to get another
	tool to get your work done. This recommendation is
	solely based on experiences with this font
	serialization mechanism - if it breaks (and it did
	break for us), it stops you from getting any work done
	at all.

[ dmc flame off ]

Please note:

In message <A9208@MZ.maus.de>, Pierre_Hansen@mz.maus.de (Pierre
Hansen) wrote:
> I don't think this kind of diskussion is funny at all.
> Deserialising fonts is illegal and DMC will not watch this
> without taking action.

So if you have any problems with your calamus fonts, please
don't help yourself. Instead report your problems to your
dealer or to DMC and stop working at all. Stand by and wait for
these people to get your problem solved. This may take some
time, but don't worry. Don't worry about your deadlines, it is
not your fault if you cannot deliver in time.

Please under no condition do this:

- never set the serial number of your font to zero, i.e. don't
  setlong(font, 0x0010, 0L);

- under no circumstances set the font initial coding mask to
  zero, i.e. don't setlong(font, 0x10b6, 0L). If you do this by
  accident, forget the old mask value and don't reuse it in the
  algorithm below:

- never run the following program fragment or something similar
  on the offset block of the font. The offset block is an array
  of relative pointers to the beginning of the fonts outline.

	i = 0x1bc;
  
  	for (j=i;j<=i+size; j += 4)
	{
		position = (j-i)/4;

		l = getlong(font, j);
		l = l ^ (serial_number + mask * position);
		/* printf("%lx:%lx\t", (j-i)/4, l); */
		setlong(font, j, l);
	}

- Never sort the outline definitions of the font.

  The outlines of the first few character outlines are swapped
  or not swapped, so that the offset values into these outlines
  are not monotone increasing.  Additional serial number
  information may or may not be hidden within the order of the
  outlines for the first few characters of a font.  This
  information might or might not be checked by newer calamus
  versions.

  If you sort the outlines, any potential serial number
  information which is perhaps contained in these permutations
  would be lost.

- Never overwrite the copyright notice of your font, since it
  might or might not contain some keywords such as
  "compugraphic" or "postscript" which could be checked for by
  calamus. Calamus could not correctly reject your font, if it
  does not find these keywords. So please don't touch them.

- Never decrease the baseline value (offset 0x1e0) by one if
  its inital value is 0x2710. Should the above transformations
  be applied to any of your serialized fonts by some accident,
  rumor says that calamus could use the value 0x2710 at 0x1e0
  to correctly reject the font. So, please leave this value
  alone!

- If any of your public domain or third party vendor fonts is
  not functioning properly, please don't check if any of the
  above rules matches the problematic font. Instead don't use
  public domain or third party fonts with calamus, the are not
  good for you.

Instead, sit down, stay calm and wait. Don't panic.

Thank you,
	Kristian
-- 
Kristian Koehntopp, Harmsstrasse 98, FRG W-2300 Kiel, +49 431 676689
"Das neue Calamus. Godot wollte es noch heute vorbei bringen."
Newsgroups: comp.sys.atari.st