Ajouté PROTUGAL.eps -- les datas du drapeau sont dans le eps. On pourrait faire une...
[carto.git] / cartes / 32U / postscript / carte1_JG_Distiller.ps
index 69cd1be..db0d641 100644 (file)
@@ -1,8 +1,8 @@
-%! PS
+%!PS
 
 << /PageSize [750 900] >> setpagedevice
 % ------------------------------------------------------------------------------
-% Utilisation de l'encodage latin1 (utf8 ne peut être utilisé directement).
+% Utilisation de l'encodage latin1 (utf8 ne peut être utilisé directement).
 /ISOEncode {
     dup length dict begin
                {1 index /FID ne {def} {pop pop} ifelse} forall
 } bind def
 % ------------------------------------------------------------------------------
 (C:/Users/Jürgen/Desktop/carte1/carte1/svgnames.ps) run     %% Utilisation des couleurs SVG                           
-0 450 translate                                             %% Déplacement du point origine
-gsave                                                       %% Couleur du fond
+0 450 translate                                  %% Déplacement du point origine
+gsave                                                         %% Couleur du fond
   0 0 moveto 750 0 rlineto 0 900 rlineto -750 0 rlineto
   closepath DeepSkyBlue fill
 grestore
+
 % ------------------------------------------------------------------------------
 
 (C:/Users/Jürgen/Desktop/carte1/carte1/pays.ps)    run
@@ -25,11 +26,11 @@ grestore
 (C:/Users/Jürgen/Desktop/carte1/carte1/fleuves.ps) run
 (C:/Users/Jürgen/Desktop/carte1/carte1/lacs.ps)    run
 (C:/Users/Jürgen/Desktop/carte1/carte1/villes.ps)  run
+(C:/Users/Jürgen/Desktop/carte1/carte1/noms-iles.ps)  run
+(C:/Users/Jürgen/Desktop/carte1/carte1/noms-fleuves.ps)  run
 
 % ------------------------------------------------------------------------------
 /Pas 1 def
-/RayonVille 2 def
-/LabelOffset 6 def
 % ------------------------------------------------------------------------------
 /Construction {
        /region exch def
@@ -49,61 +50,111 @@ grestore
        } for
 } def
 
-/disquedict 10 dict def
-disquedict /mtrx matrix put
+/concatstrings {
+       exch dup length    
+    2 index length add string    
+    dup dup 4 2 roll copy length
+       4 -1 roll putinterval
+} bind def
 
-/Ville (Ville) def
-/Position -1 def
-/PlacePoint {  
-       aload pop
-       /Position exch def
-       /Ville exch def
-       newpath
-       disquedict begin
+%% PlacePoint et PlaceNom ------------------------------------------------------
+%% [e n (nom) angle] PlacePoint ensuite PlaceNom récupère ce qu'il lui faut dans
+%% dictionnaire placedict
+%%
+%% Usage : [e n (nom) pos (proc)] PlacePoint .... PlaceNom
+%% Le cinquième argument est facultatif....
+
+/placedict 10 dict def
+placedict /mtrx matrix put
+
+/PlacePoint {
+       placedict begin
+               /argv exch def /argn argv length def
+               argv aload pop
+               /proc (Place_Defaut) def
+               argn 4 gt { (Place_) exch concatstrings /proc exch def } if
+               /pos exch def /nom exch def
                /Y exch def /X exch def
+               newpath
                /savematrix mtrx currentmatrix def
-               X Y translate RayonVille dup scale
+               X Y translate RayonDisque dup scale
                0 0 1 0 360 arc
                savematrix setmatrix
        end
 } def
-/fontfacteur 14 def
+
 /PlaceNom {
-       Position -1 gt {
-               disquedict begin
+       placedict begin
+               pos -1 gt {
                        /savematrix mtrx currentmatrix def                      
                        X Y translate
-                       %% Dimension (largeur) du nom -------------------------
-                       /Helvetica-Bold findfont fontfacteur scalefont ISOEncode setfont
-                       Ville stringwidth pop /WX exch def
+                       %% Dimension (largeur) du nom -------------------------                 
+                       nom stringwidth pop /wx exch def
                        %% ----------------------------------------------------
-                       Position cos LabelOffset mul /X exch def
-                       Position sin LabelOffset mul /Y exch def
-                       X 0 gt {
-                               %% Nom à droite
-                               X Y 5 sub moveto
-                       } {
-                               X 0 lt {
-                                       %% Nom à gauche
-                                       X WX sub Y 5 sub moveto
-                               } {
-                                       Y 0 gt {
-                                               %% Nom au dessus
-                                               X WX 2 div sub Y moveto
-                                       } {
-                                               %% Nom en dessous
-                                               X WX 2 div sub Y 10 sub moveto
-                                       } ifelse
-                               } ifelse                
-                       } ifelse
-                       %% Présentation du nom --------------------------------                 
-                       0.7 setgray Ville show
-                       CouleurNom WX neg 0.65 sub 0.65 rmoveto Ville show
+                       proc cvx exec
                        %% ----------------------------------------------------
                        savematrix setmatrix
-               end
-       } if
+               } if
+       end
+} def
+
+/Place_Defaut_Position {
+       pos cos LabelOffset mul /X exch def
+       pos sin LabelOffset mul /Y exch def
+       X 0 gt {
+               %% Nom Ã  droite
+               X Y HauteurCaractere 2 div sub moveto
+       } {
+               X 0 lt {
+                       %% Nom Ã  gauche
+                       X wx sub Y HauteurCaractere 2 div sub moveto
+               } {
+                       Y 0 gt {
+                               %% Nom au dessus
+                               X wx 2 div sub Y moveto
+                       } {
+                               %% Nom en dessous
+                               X wx 2 div sub Y HauteurCaractere sub moveto
+                       } ifelse
+               } ifelse                
+       } ifelse
 } def
+
+/Place_Defaut {
+       Place_Defaut_Position
+       %% Présentation du nom --------------------------------                        
+       0.7 setgray nom show
+       CouleurNom wx neg 0.65 sub 0.65 rmoveto nom show        
+} def
+
+/Place_Centering {
+       wx 2 div neg wx 2 div neg rmoveto
+       %% Présentation du nom --------------------------------                        
+       0.7 setgray nom show
+       CouleurNom wx neg 0.65 sub 0.65 rmoveto nom show
+} def
+
+/Place_Rotate {
+       pos cos 0 ge {
+               pos rotate 
+               LabelOffset HauteurCaractere 2 div neg moveto
+       } {
+               pos 180 sub rotate
+               LabelOffset wx add neg HauteurCaractere 2 div neg moveto
+       } ifelse
+       %% Présentation du nom --------------------------------                        
+       0.7 setgray nom show
+       CouleurNom wx neg 0.65 sub 0.65 rmoveto nom show
+} def
+
+/Place_RotateCentering {
+       pos rotate wx 2 div neg HauteurCaractere 2 div neg moveto
+       %% Présentation du nom --------------------------------                        
+       0.7 setgray nom show
+       CouleurNom wx neg 0.65 sub 0.65 rmoveto nom show
+} def
+
+
 % ------------------------------------------------------------------------------
 
 1 setlinejoin
@@ -120,64 +171,74 @@ allemagne { Construction closepath gsave LightGoldenrod fill grestore} forall
        { Construction closepath gsave DarkBlue fill grestore} forall
 } forall
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Pays (frontières) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Pays (frontières) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 [allemagne hollande france suisse tchequie pologne belgique autriche
   luxembourg liechtenstein danemark] {
        { Construction closepath DarkGray stroke } forall 
 } forall
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Länder (frontières) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Länder (frontières) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 lander { Construction closepath WhiteSmoke 0.5 setlinewidth stroke} forall
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Fleuves et rivières %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-[rhin saone elbe neckar rhone doubs danube oder weser ems main mosel saale] {
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Fleuves et rivières %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+[rhin saone elbe neckar rhone doubs danube oder saale mosel weser ems main] {
        { Construction DarkBlue 0.25 setlinewidth stroke} forall
 } forall
 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Villes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/Helvetica-Bold   findfont 8 scalefont ISOEncode setfont
+/HauteurCaractere 6 def
+/CouleurNom       {DarkGreen} def
+/RayonDisque      2 def
+/LabelOffset      5 def
+[V_hollande V_belgique V_luxembourg V_france V_suisse V_autriche
+V_tchequie V_pologne] {
+       { PlacePoint gsave DarkGreen fill grestore PlaceNom} forall
+} forall
 
-%% Les océans
-/mo /moveto load def
-/Helvetica-Bold findfont 20 scalefont setfont 
-/shm { gsave DarkBlue show grestore } def
-90.412 368.266 mo (Nordsee)shm
-630.412 418.266 mo (Ostsee)shm
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Capitales de Länder (points et noms) %%%%%%%%%%%%%%%%%%%%%%%%%
-/CouleurNom {Orange} def
-/RayonVille 2 def               % Des points un peu plus gros pour les capitales
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Villes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/Helvetica-Bold   findfont 8 scalefont ISOEncode setfont
+/HauteurCaractere 6 def
+/CouleurNom       {DarkRed} def
+/RayonDisque      2 def
+/LabelOffset      5 def
+V_allemagne { PlacePoint gsave DarkRed fill grestore PlaceNom} forall
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Capitales %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/Helvetica-Bold   findfont 14 scalefont ISOEncode setfont
+/HauteurCaractere 10 def
+/CouleurNom       {Orange} def
+/RayonDisque      3 def         % Des points un peu plus gros pour les capitales
+/LabelOffset      6 def
 V_allemagne_capitales_lander {
        PlacePoint gsave Orange fill grestore PlaceNom
 } forall
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Villes allemandes (points et noms) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-/CouleurNom {DarkRed} def
-/RayonVille 1.5 def
-/fontfacteur 8 def
-V_allemagne {
-     PlacePoint gsave DarkRed fill grestore PlaceNom 
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Iles (Noms) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/Helvetica-Bold   findfont 6 scalefont ISOEncode setfont
+/HauteurCaractere 5 def
+/CouleurNom       {DarkBlue} def
+/RayonDisque      3 def         
+/LabelOffset      5 def
+I_allemagne {
+       PlacePoint PlaceNom
 } forall
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Villes autres pays (points et noms) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-/CouleurNom {DarkGreen} def
-/RayonVille 1.5 def
-/fontfacteur 8 def
-[V_autriche V_suisse V_france V_tchequie V_tchequie V_belgique V_hollande V_luxembourg V_pologne] { 
-    { PlacePoint gsave DarkGreen fill grestore PlaceNom } forall
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Rivières (Noms) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/Helvetica-Bold   findfont 6 scalefont ISOEncode setfont
+/HauteurCaractere 5 def
+/CouleurNom       {DarkBlue} def       
+R_allemagne {
+       PlacePoint PlaceNom
 } forall
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Iles (points et noms) %%%%%%%%%%%%%%%%%%%%%%%%%
-/CouleurNom {DarkBlue} def
-/RayonVille 0 def
-/fontfacteur 6 def
-V_allemagne_iles {
-       PlacePoint gsave DeepSkyBlue fill grestore PlaceNom
-} forall
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Autres annotations %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+/mo /moveto load def
+/Helvetica-Bold findfont 20 scalefont setfont 
+/shm { gsave DarkBlue show grestore } def
+90.412 368.266 mo (Nordsee)shm
+630.412 418.266 mo (Ostsee)shm
 
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Rivières (points et noms) %%%%%%%%%%%%%%%%%%%%%%%%%
-/CouleurNom {DarkBlue} def
-/fontfacteur 8 def
-V_allemagne_rivers {
-       PlacePoint gsave LightGoldenrod fill grestore PlaceNom
-} forall
 
 showpage

Licence Creative Commons Les fichiers de Syracuse sont mis à disposition (sauf mention contraire) selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International.