diff options
Diffstat (limited to 'Master/xemtex/gslib/gs_dps1.ps')
-rw-r--r-- | Master/xemtex/gslib/gs_dps1.ps | 142 |
1 files changed, 0 insertions, 142 deletions
diff --git a/Master/xemtex/gslib/gs_dps1.ps b/Master/xemtex/gslib/gs_dps1.ps deleted file mode 100644 index 177fb68ba11..00000000000 --- a/Master/xemtex/gslib/gs_dps1.ps +++ /dev/null @@ -1,142 +0,0 @@ -% Copyright (C) 1997, 1999 Aladdin Enterprises. All rights reserved. -% -% This program is free software; you can redistribute it and/or modify it -% under the terms of the GNU General Public License as published by the -% Free Software Foundation; either version 2 of the License, or (at your -% option) any later version. -% -% This program is distributed in the hope that it will be useful, but -% WITHOUT ANY WARRANTY; without even the implied warranty of -% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -% Public License for more details. -% -% You should have received a copy of the GNU General Public License along -% with this program; if not, write to the Free Software Foundation, Inc., -% 59 Temple Place, Suite 330, Boston, MA, 02111-1307. - -% $Id: gs_dps1.ps,v 1.2.6.1.2.1 2003/04/12 14:02:38 giles Exp $ -% Initialization file for most of the Display PostScript functions -% that are also included in Level 2. - -level2dict begin - -% ------ Virtual memory ------ % - -/currentshared /.currentglobal load def -/scheck /.gcheck load def -%****** FOLLOWING IS WRONG ****** -/shareddict currentdict /globaldict .knownget not { 20 dict } if def - -% Global and LocalFontDirectory must remain in systemdict -% even if we temporarily exit Level 2 mode. - -end % level2dict -systemdict begin - -/SharedFontDirectory .FontDirectory .gcheck - { .currentglobal false .setglobal - /LocalFontDirectory .FontDirectory dup maxlength dict copy - .forcedef % LocalFontDirectory is local, systemdict is global - .setglobal .FontDirectory - } - { /LocalFontDirectory .FontDirectory - .forcedef % LocalFontDirectory is local, systemdict is global - 50 dict - } -ifelse def - -end % systemdict -level2dict begin - -% setshared must rebind FontDirectory to the appropriate one of -% Local or SharedFontDirectory. - -/.setglobal % <bool> .setglobal - - { dup .setglobal - //systemdict /FontDirectory .currentglobal - { //SharedFontDirectory } - { /LocalFontDirectory .systemvar } % can't embed ref to local VM - ifelse .forceput pop % LocalFontDirectory is local, systemdict is global - } .bind odef % must bind .forceput and .setglobal - % even if NOBIND in effect -% Don't just copy (load) the definition of .setglobal: -% it gets redefined for LL3. -/setshared { /.setglobal .systemvar exec } odef -.currentglobal setshared - -% See below for changes in save and restore. - -% ------ Fonts ------ % - -/selectfont % <fontname> <size> selectfont - - { 1 index findfont - 1 index dup type /arraytype eq { makefont } { scalefont } ifelse - setfont pop pop - } odef -% undefinefont has to take local/global VM into account. -/undefinefont % <fontname> undefinefont - - { .FontDirectory 1 index .undef - .currentglobal - { % Current mode is global; delete from local directory too. - //systemdict /LocalFontDirectory .knownget - { 1 index .undef } - if - } - { % Current mode is local; if there was a shadowed global - % definition, copy it into the local directory. - //systemdict /SharedFontDirectory .knownget - { 1 index .knownget - { .FontDirectory 2 index 3 -1 roll put } - if - } - if - } - ifelse pop - } odef - -% If we load a font into global VM within an inner save, the restore -% will delete it from FontDirectory but not from SharedFontDirectory. -% We have to handle this by making restore copy missing entries from -% SharedFontDirectory to FontDirectory. Since this could slow down restore -% considerably, we define a new operator .dictcopynew for this purpose. -% Furthermore, if FAKEFONTS is in effect, we want global real fonts to -% override fake local ones. We handle this by brute force. -/restore % <save> restore - - { dup //restore % bind even if NOBIND - /LocalFontDirectory .systemvar - FAKEFONTS - { mark - % We want to delete a fake font from the local directory - % iff the global directory now has no definition for it, - % or a non-fake definition. - 1 index dup - { % Stack: lfd mark lfd key ... lfd key value - length 1 gt - { % This is a real local definition; don't do anything. - pop - } - { % This is a fake local definition, check for global. - //SharedFontDirectory 1 index .knownget - { % A global definition exists, check for fake. - length 1 eq { pop } { 1 index } ifelse - } - { % No global definition, delete the local one. - 1 index - } - ifelse - } - ifelse - } forall - pop counttomark 2 idiv { .undef } repeat pop - } - if - //SharedFontDirectory exch .dictcopynew pop - .currentglobal .setglobal % Rebind FontDirectory according to current VM. - pop - } bind odef - -% ------ Miscellaneous ------ % - -/undef /.undef load def - -end % level2dict |