Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

SUMMARY: Calamus font trouble

14 views
Skip to first unread message

Kristian Koehntopp

unread,
Jul 26, 1992, 1:58:57 PM7/26/92
to
In <H.roai...@jonh.wimsey.bc.ca> jhen...@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 <A9...@MZ.maus.de>, Pierre...@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."

0 new messages