[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: More flexible rotated text for 1.6.0, font-sizes etc..



On Tue, 2009-06-09 at 13:45 +0100, Peter Clifton wrote:
> On Tue, 2009-06-09 at 12:00 +0100, Peter TB Brett wrote:
> > On Tue, 09 Jun 2009 11:58:01 +0100, Peter Clifton <pcjc2@xxxxxxxxx> wrote:
> > 
> > > A. Match postscript point size - so a 10pt font prints / views as a 10pt
> > > font. (When printed on a title-block which matches the size of the paper
> > > - printed with no margin).
> > > 
> > > This takes the definition of 1pt as 1/72 of an inch, and scales the
> > > fonts assuming gschem units are 1/1000th of an inch. (Oh - and this size
> > > doesn't actually correspond to anything explicitly measurable on the
> > > typeface, it is just the logical design height of the font).
> > > 
> > > Screen sizes change (until we bump schematic schematics)
> > > Postscript sizes remain (until we bump schematic sizes)
> > > Conversion tools required to fix on-screen sizes.
> > 
> > This is my preferred solution, FWIW.
> 
> It has been my preferred solution, although I wish I could figure some
> way to make the transition easier.

More options...

A + C hybrid (described below).

Reasoning:

* I think it is kindest not to force people to bump their font sizes on 
  every schematic they ever drew in older gEDA versions.

* We can't necessarily ensure they will have write-access to the symbol 
  library, so at some point we would have to make the decision for them 
  - whether to bump it or not

* I strongly doubt that people over-exaggerate their on-screen size to
  get bigger print fonts - so bumping their printed post-script size
  won't hurt too much.


Details:

Schematics bearing the file-format version prior to gEDA 1.6.0, or
utilising the pre 1.6.0 syntax will quote their font sizes in the
existing "gschem font units".

Whilst stashing the "gschem font size" for re-saving, internally, we
will compute "font_size_pt = gschem_font_size * 1.3", and render + print
with that.

Printed output will match on-screen rendering, and will be much larger
than before. (See middle boxes in the example I attached earlier in the
thread).

New text elements created by gEDA 1.6.0 will be sized directly in
points, assuming gschem world coordinate units are 1/1000th of an inch,
and 1pt is 1/72 of an inch.

New text elements will be saved with "pt" appended to the digits:

E.g.:

OLD:

T 16900 35800 3 10 1 0 0 0 1
Text string!

NEW:

T 16900 35800 3 13pt 1 0 0 0 1
Text string!

(Note that the two are equivalent in rendered size).

This addition of "pt" allows us save from gEDA 1.6.0 without having had
to make a permanent decision as to how the fonts should be migrated from
their old sizes.

We "may" provide some automated tool to migrate to the new sizes, by
multiplying by 1.3, and adding "pt" to all text element sizes.

I "think" we should pre-migrate the library to use equivalent "pt" sizes
- UNLESS we decide to provide some option to force interpretation of old
sizes as literal size in points. (see below)


Items I'm unsure about:

Whether to move to a floating point representation - allowing more
accurate conversion between old and new units?

Whether to display the old units (e.g. "10", "11") or new (e.g. "13pt",
"14.3pt") in the text editor for an object sized in the old units?

Whether or not to force conversion to "pt" units if the user edits the
text in gschem?

Whether to automatically update the size upon saving (to an equivalent
point size), or whether to save out the "old size" without "pt". (If we
auto-convert, we loose one of the key benefits of the "pt" annotation).

Whether to add warning messages to the log when old sizes are
encountered?

Whether to have an option to interpret the old sizes as "size in pt"
without multiplying by 1.3? (Preserving an existing schematic's print
size, dropping its on-screen rendered size). I think I prefer not to
provide this option.


CONCERNS:

If we bump the library to "pt" sizes, we can't provide the option to
interpret the old sizes directly as "pt" sizes.

If we never bump the library to "pt" sizes, then we can never in the
future get rid of the code handling legacy font sizes - we've just
introduced a second unit.

Combine the above with the fact that unless printing with a specific
title-block, without borders - the point size is always scaled to fit
the print area...


-- 
Peter Clifton

Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA

Tel: +44 (0)7729 980173 - (No signal in the lab!)



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user