Go Back   Rhinocerus > Newsgroup > Newsgroup comp.lang.* 1 > Newsgroup comp.lang.postscript

Reply
 
Thread Tools Display Modes
  #1 (permalink)  
Old 11-10-2003, 12:33 PM
Ghee
Guest
 
Posts: n/a
Default Illustrator EPS and PS files - font embedding

Hello,

When using Illustrator 10 to create (v10) EPS files, I've noticed that
it has the funny habits of :

(i) embedding standard fonts, such as Helvetica, etc

(ii) creating a new font as a subset of another whenever the font
changes size, etc - sometimes adding to the subset later on in
the file

I have similar problems when printing to file to generate PostScript
output - I guess the two file creation mechanisms are similar (in fact,
the generic Adobe Windows printer driver does this too, even when the
PPD is modified so that there are no font version differences (so the
version of Helvetica is 001.006 everywhere, etc)).

I'm sticking to the "standard" tpyefaces, so as far as I am concerned,
there should be no need for Illustrator to do either of the above. The
application that I am writing at the moment changes/replaces text within
a PostScript file at runtime*, so this un-necessary subsetting of fonts
is causing a bit of a headache.

I can modify the EPS/PS files by hand, and I can even stop Illustrator
from embedding fonts, but I'd rather not have to. I've tried saving the
EPS files as earlier versions, but the text typically gets broken up
more than in v10, so it doesn't help that much.

I get the feeling that I've probably missed something obvious somewhere
- so - my questions are:

(i) in addition to the PPD, what "tells" Illustrator that I have
certain fonts in ROM, and therefore not to embed them

(ii) how can I stop Illustrator from creating subsets from either
fully embedded or standard ROM fonts?

Thanks for any advice,

Ghee


*I guess that this is a case of mis-using a PostScript program, but it
works so well...

Reply With Quote
Alt Today
Advertising
 
and become member of Rhinocerus
Standard Sponsored Links

  #2 (permalink)  
Old 11-10-2003, 12:53 PM
Aandi Inston
Guest
 
Posts: n/a
Default Re: Illustrator EPS and PS files - font embedding

Ghee <ghee2ghee@yahoo.co.uk> wrote:

>(i) in addition to the PPD, what "tells" Illustrator that I have
> certain fonts in ROM, and therefore not to embed them


I think this idea has been largely abandoned. The cost of sending a
font to a printer is now negligible, so why not always include it?
That makes sure everyone is working with the same font, a problem in
many workflows. Even without customized fonts, there are issues like
the Euro character.
----------------------------------------
Aandi Inston quite@dial.pipex.com http://www.quite.com
Please support usenet! Post replies and follow-ups, don't e-mail them.

Reply With Quote
  #3 (permalink)  
Old 11-11-2003, 07:36 AM
Ghee
Guest
 
Posts: n/a
Default Re: Illustrator EPS and PS files - font embedding

Aandi Inston wrote:
> I think this idea has been largely abandoned. The cost of sending a
> font to a printer is now negligible, so why not always include it?
> That makes sure everyone is working with the same font, a problem in
> many workflows. Even without customized fonts, there are issues like
> the Euro character.


Well, I guess I'll have to live with that...

Any ideas about the second point though? That's the annoying one - I
can't see why the application subsets a font already resident/downloaded
in it's entirety. Looking at the PostScript around the new font
creation, the only things that seem to happening are (i) the encoding
vector is changed/rebuilt, and (ii) the font is scaled up to the
appropriate size be applying a matrix to it.

I've included an example of the offending code at the end, for what it's
worth. It could simply have been written as

/Times-Roman 7.81969 selectfont
391.277 49.6226 mov
(foo) sh

I've looked through the options in Illustrator again, and gone through
all I can find. I've done a similar job with the printer driver. I
still can't see anything that would have a bearing on the generation of
the subsets. The only thing that came close was an option on saving in
AI format to specify the percentage of a font at which to subset - but
I'm not using PDF-style files; I need PostScript.

Perhaps I'll just have to fiddle the PostScript by hand (or by script).

Thanks,

Ghee


%%IncludeResource: font Times-Roman
/Times-Roman*1
[
32{/.notdef}repeat /space 14{/.notdef}repeat /slash 18{/.notdef}repeat
/B 6{/.notdef}repeat /I
6{/.notdef}repeat /P 3{/.notdef}repeat /T 12{/.notdef}repeat /a /.notdef /c
/.notdef /e /f 2{/.notdef}repeat /i /.notdef /k /.notdef
/m /n /o 2{/.notdef}repeat /r /s /.notdef /u
2{/.notdef}repeat /x 135{/.notdef}repeat
] /Times-Roman nfnt
/Times-Roman*1 findfont [7.81969 0 0 -7.81969 0 0 ]mfnt sfnt
391.277 49.6226 mov
(foo) sh

where ():
mfnt is defined as makefont
sfnt is defined as setfont
nfnt is defined as (I hope the indentation is right!)
/newencodedfont
{
currentglobal
{
SharedFontDirectory 3 index known
{
SharedFontDirectory 3 index get
/FontReferenced known
}
{
false
} ifelse
}
{
FontDirectory 3 index known
{
FontDirectory 3 index get
/FontReferenced known
}
{
SharedFontDirectory 3 index known
{
SharedFontDirectory 3 index get /FontReferenced known
}
{
false
} ifelse
} ifelse
} ifelse
dup
{
3 index findfont
/FontReferenced get 2 index findfont ne
{
pop false
} if
} if
{
pop 1 index findfont
/Encoding get exch 0 1 255
{
2 copy get 3 index 3 1
roll put
} for
pop pop pop
}
{
findfont dup dup maxlength 2 add dict begin exch
{
1 index
/FID ne
{
def
}
{
pop pop
} ifelse
} forall
/FontReferenced exch def
/Encoding exch dup length array copy def
/FontName 1 index dup type /stringtype eq
{
cvn
} if
def
currentdict end definefont pop
} ifelse
} bind def

Reply With Quote
  #4 (permalink)  
Old 11-11-2003, 01:16 PM
Helge Blischke
Guest
 
Posts: n/a
Default Re: Illustrator EPS and PS files - font embedding

Ghee wrote:
>
> Aandi Inston wrote:
> > I think this idea has been largely abandoned. The cost of sending a
> > font to a printer is now negligible, so why not always include it?
> > That makes sure everyone is working with the same font, a problem in
> > many workflows. Even without customized fonts, there are issues like
> > the Euro character.

>
> Well, I guess I'll have to live with that...
>
> Any ideas about the second point though? That's the annoying one - I
> can't see why the application subsets a font already resident/downloaded
> in it's entirety. Looking at the PostScript around the new font
> creation, the only things that seem to happening are (i) the encoding
> vector is changed/rebuilt, and (ii) the font is scaled up to the
> appropriate size be applying a matrix to it.
>
> I've included an example of the offending code at the end, for what it's
> worth. It could simply have been written as
>
> /Times-Roman 7.81969 selectfont
> 391.277 49.6226 mov
> (foo) sh
>
> I've looked through the options in Illustrator again, and gone through
> all I can find. I've done a similar job with the printer driver. I
> still can't see anything that would have a bearing on the generation of
> the subsets. The only thing that came close was an option on saving in
> AI format to specify the percentage of a font at which to subset - but
> I'm not using PDF-style files; I need PostScript.
>
> Perhaps I'll just have to fiddle the PostScript by hand (or by script).
>
> Thanks,
>
> Ghee
>
> %%IncludeResource: font Times-Roman
> /Times-Roman*1
> [
> 32{/.notdef}repeat /space 14{/.notdef}repeat /slash 18{/.notdef}repeat
> /B 6{/.notdef}repeat /I
> 6{/.notdef}repeat /P 3{/.notdef}repeat /T 12{/.notdef}repeat /a /.notdef /c
> /.notdef /e /f 2{/.notdef}repeat /i /.notdef /k /.notdef
> /m /n /o 2{/.notdef}repeat /r /s /.notdef /u
> 2{/.notdef}repeat /x 135{/.notdef}repeat
> ] /Times-Roman nfnt
> /Times-Roman*1 findfont [7.81969 0 0 -7.81969 0 0 ]mfnt sfnt
> 391.277 49.6226 mov
> (foo) sh
>
> where ():
> mfnt is defined as makefont
> sfnt is defined as setfont
> nfnt is defined as (I hope the indentation is right!)

(as far as T1 fonts are concerned, perhaps, but ...)

The main reason for font subsetting by applications like Illustrator
(and the PostScript printer
driver(s) as well) is the support of TrueType and OpenType fonts and
Unicode.
Unicode compliant (more or less) TrueType or OpenType fonts usually
contain several thousand glyphs.
Embedding such fonts in toto would considerably bloat the output file
with - for the intended
use - useless information; thus subsetting for those fonts is mandatory.
On the other hand, following
a different strategy with Type1 fonts of "conventional" size would
unnecessarily complate the
application.

Helge



--
H.Blischke@srz-berlin.de
H.Blischke@srz-berlin.com
H.Blischke@acm.org
Reply With Quote
 
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Re: How to change .xls files into .txt files in SAS Alan Churchill Newsgroup comp.soft-sys.sas 0 06-23-2006 08:20 PM
Re: How to change .xls files into .txt files in SAS SUBSCRIBE SAS-L Chandra Gadde Newsgroup comp.soft-sys.sas 0 06-23-2006 07:18 PM
Re: How to change .xls files into .txt files in SAS Terjeson, Mark Newsgroup comp.soft-sys.sas 0 06-23-2006 07:11 PM
Re: Processing multiple CSV files from a directory David L. Cassell Newsgroup comp.soft-sys.sas 0 05-09-2005 10:56 PM



All times are GMT. The time now is 06:11 AM.


Copyright ©2009

LinkBacks Enabled by vBSEO 3.3.0 RC2 © 2009, Crawlability, Inc.