76 lines
2.1 KiB
PostScript
76 lines
2.1 KiB
PostScript
% Copyright (C) 1994, 2000 Aladdin Enterprises. All rights reserved.
|
|
%
|
|
% This software is provided AS-IS with no warranty, either express or
|
|
% implied.
|
|
%
|
|
% This software is distributed under license and may not be copied,
|
|
% modified or distributed except as expressly authorized under the terms
|
|
% of the license contained in the file LICENSE in this distribution.
|
|
%
|
|
% For more information about licensing, please refer to
|
|
% http://www.ghostscript.com/licensing/. For information on
|
|
% commercial licensing, go to http://www.artifex.com/licensing/ or
|
|
% contact Artifex Software, Inc., 101 Lucas Valley Road #110,
|
|
% San Rafael, CA 94903, U.S.A., +1(415)492-9861.
|
|
|
|
% $Id: gs_ccfnt.ps,v 1.8 2003/04/12 18:08:18 ray Exp $
|
|
% Find and register all the precompiled font operators in systemdict.
|
|
|
|
/registerfont % <fontname> <fontdict> registerfont <font>
|
|
{ CCFONTDEBUG { (Registering ) print 1 index = } if
|
|
dup begin
|
|
Encoding type /nametype eq
|
|
{ Encoding .findencoding /Encoding exch def
|
|
}
|
|
if
|
|
dup /PrefEnc known
|
|
{ PrefEnc type /nametype eq
|
|
{ PrefEnc .findencoding /PrefEnc exch def
|
|
}
|
|
if
|
|
}
|
|
if
|
|
dup /FDepVector known
|
|
{ /FDepVector [ FDepVector
|
|
{ .FontDirectory 1 index .knownget
|
|
{ exch pop }
|
|
{ ccfonts 1 index .knownget
|
|
{ registerfont
|
|
}
|
|
{ Fontmap 1 index known
|
|
{ findfont }
|
|
{ pop NullFont }
|
|
ifelse
|
|
}
|
|
ifelse
|
|
}
|
|
ifelse
|
|
}
|
|
forall ] readonly def
|
|
}
|
|
if
|
|
end
|
|
% Use the value of definefont appropriate at run-time, not bind-time
|
|
/definefont load exec
|
|
} bind odef
|
|
% Bind recursive call (bind descends into oparrays: feature!)
|
|
/registerfont dup load bind def
|
|
|
|
/.loadinitialfonts {
|
|
//.loadinitialfonts exec
|
|
NOCCFONTS not {
|
|
/ccfonts mark
|
|
0 1 null .getccfont 1 sub { .getccfont dup /FontName get exch } for
|
|
.dicttomark def
|
|
% Make sure these fonts are registered as "resources".
|
|
currentfile {
|
|
pop ccfonts {
|
|
.FontDirectory 2 index known { pop pop } { registerfont pop } ifelse
|
|
} forall
|
|
} .execasresource
|
|
currentdict /ccfonts .undef
|
|
} if
|
|
} bind def
|
|
|
|
currentdict /registerfont .undef
|