Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-15-SP2:GA
transfig.12287
fig2dev-3.2.6-genps_oldpatterns.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File fig2dev-3.2.6-genps_oldpatterns.patch of Package transfig.12287
Author: Roland Rosenfeld <roland@debian.org> Description: Reinvent the old genps.oldpatterns.[ch] (removed from 3.2.5a), because the new version does not write the patterns correctly into PS and EPS files (Bug #348034). Bug-Debian: http://bugs.debian.org/348034 diff --git a/fig2dev-3.2.6a/fig2dev/dev/genps.c b/fig2dev-3.2.6a/fig2dev/dev/genps.c --- a/fig2dev-3.2.6a/fig2dev/dev/genps.c +++ b/fig2dev-3.2.6a/fig2dev/dev/genps.c @@ -140,7 +140,6 @@ static void convert_xpm_colors(unsigned static void genps_itp_spline(F_spline *s); static void genps_ctl_spline(F_spline *s); -static int removestr(char *buf, char *str, int *len); #define SHADEVAL(F) 1.0*(F)/(NUMSHADES-1) #define TINTVAL(F) 1.0*(F-NUMSHADES+1)/NUMTINTS @@ -204,6 +203,31 @@ char *fill_def[NUMPATTERNS] = { FILL_PAT21,FILL_PAT22, }; +int patmat[NUMPATTERNS][2] = { + {16, -8}, + {16, -8}, + {16, -8}, + {16, -16}, + {16, -16}, + {16, -16}, + {16, 16}, + {16, -16}, + {16, -8}, + { 8, -16}, + {16, -16}, + {24, -24}, + {24, -24}, + {24, -24}, + {24, -24}, + {16, -8}, + { 8, -8}, + {16, -16}, + {30, -18}, + {16, -16}, + {16, -8}, + { 8, -16}, + }; + static double scalex, scaley; static double origx, origy; static double userorigx, userorigy; @@ -786,6 +810,10 @@ genps_start(F_compound *objects) /* (rotation and y flipping is done in %%BeginPageSetup area */ if (pats_used) { int i; + fprintf(tfp, "\n%s%s%s", FILL_PROLOG1,FILL_PROLOG2,FILL_PROLOG3); + fprintf(tfp, "\n%s%s%s", FILL_PROLOG4,FILL_PROLOG5,FILL_PROLOG6); + fprintf(tfp, "\n%s%s%s", FILL_PROLOG7,FILL_PROLOG8,FILL_PROLOG9); + fprintf(tfp, "\n%s%s", FILL_PROLOG10,FILL_PROLOG11); /* only define the patterns that are used */ for (i=0; i<NUMPATTERNS; i++) if (pattern_used[i]) @@ -947,9 +975,6 @@ genps_grid(float major, float minor) fprintf(tfp,"%% Grid\n"); fprintf(tfp,"0.5 setgray\n"); - /* adjust scale for difference in xfig/actual scale in metric mode */ - if (metric) - fprintf(tfp,"gs 450 472 div dup scale\n"); /* first the vertical lines */ fprintf(tfp,"%% Vertical\n"); for (x = lx; x <= ux; x += m) { @@ -998,9 +1023,6 @@ genps_grid(float major, float minor) } draw_gridline(lx, y, ux, y); } - /* restore original scale */ - if (metric) - fprintf(tfp,"gr\n"); } static void @@ -1290,22 +1312,6 @@ set_linewidth(double w) } } -static int -removestr(char *buf, char *str, int *len) -{ - int slen = strlen(str)-1; - int found=0; - char *cp = buf; - - while (cp=strstr(buf,str)) { - *len = *len - slen; - memmove(cp, cp+slen, *len-(cp-buf)); - *(buf+*len) = '\0'; - found = 1; - } - return found; -} - void genps_line(F_line *l) { @@ -1686,11 +1692,6 @@ genps_line(F_line *l) /* but flush buffer first */ fflush(tfp); while ((len = read(fileno(picf),buf,sizeof(buf))) > 0) { - /* remove any %EOF or %%EOF in file */ - while (removestr(buf,"\n%EOF\n",&len) != 0) - ; - while (removestr(buf,"\n%%EOF\n",&len) != 0) - ; write(fileno(tfp),buf,len); } close_picfile(picf,filtype); @@ -2422,27 +2423,22 @@ fill_area(int fill, int pen_color, int f else { /* one of the patterns */ int patnum = fill-NUMSHADES-NUMTINTS+1; - char colorspace[13], pencolor[25], fillcolor[25]; if (grayonly) { float grayfill, graypen; grayfill = rgb2luminance(fill_r, fill_g, fill_b); graypen = rgb2luminance(pen_r, pen_g, pen_b); - sprintf(colorspace, "/DeviceGray"); - sprintf(fillcolor, "%.2f", grayfill); - sprintf(pencolor, "%.2f", graypen); + fprintf(tfp, "gs /PC [[%.2f %.2f %.2f] [%.2f %.2f %.2f]] def\n", + grayfill, grayfill, grayfill, graypen, graypen, graypen); } else { - sprintf(colorspace, "/DeviceRGB"); - sprintf(fillcolor, "%.2f %.2f %.2f", fill_r, fill_g, fill_b); - sprintf(pencolor, "%.2f %.2f %.2f", pen_r, pen_g, pen_b); + fprintf(tfp, "gs /PC [[%.2f %.2f %.2f] [%.2f %.2f %.2f]] def\n", + fill_r, fill_g, fill_b, pen_r, pen_g, pen_b); } - fprintf(tfp, "\n%% Fill with pattern background color\n"); - fprintf(tfp, "gs %s setcolorspace %s setcolor fill gr\n", - colorspace, fillcolor); - fprintf(tfp, "\n%% Fill with pattern pen color\n"); - fprintf(tfp, "gs %s setcolorspace %s P%d setpattern fill gr\n\n", - colorspace, pencolor, patnum); + fprintf(tfp, "%.2f %.2f sc P%d [%d 0 0 %d %.2f %.2f] PATmp PATsp ef gr PATusp ", + THICK_SCALE, THICK_SCALE, patnum, + patmat[patnum-1][0],patmat[patnum-1][1], + (float)ulx/THICK_SCALE, (float)uly/THICK_SCALE); } } diff --git a/fig2dev-3.2.6a/fig2dev/dev/psprolog.h b/fig2dev-3.2.6a/fig2dev/dev/psprolog.h --- a/fig2dev-3.2.6a/fig2dev/dev/psprolog.h +++ b/fig2dev-3.2.6a/fig2dev/dev/psprolog.h @@ -39,553 +39,1003 @@ $F2psDict /mtrx matrix put\n\ 4 -2 roll mul srgb} bind def\n\ " + +#define FILL_PROLOG1 "\ +% This junk string is used by the show operators\n\ +/PATsstr 1 string def\n\ +/PATawidthshow { % cx cy cchar rx ry string\n\ + % Loop over each character in the string\n\ + { % cx cy cchar rx ry char\n\ + % Show the character\n\ + dup % cx cy cchar rx ry char char\n\ + PATsstr dup 0 4 -1 roll put % cx cy cchar rx ry char (char)\n\ + false charpath % cx cy cchar rx ry char\n\ + /clip load PATdraw\n\ + % Move past the character (charpath modified the\n\ + % current point)\n\ + currentpoint % cx cy cchar rx ry char x y\n\ + newpath\n\ + moveto % cx cy cchar rx ry char\n\ + % Reposition by cx,cy if the character in the string is cchar\n\ + 3 index eq { % cx cy cchar rx ry\n\ + 4 index 4 index rmoveto\n\ + } if\n\ + % Reposition all characters by rx ry\n\ + 2 copy rmoveto % cx cy cchar rx ry\n\ + } forall\n\ + pop pop pop pop pop % -\n\ + currentpoint\n\ + newpath\n\ + moveto\n\ +} bind def\n\ +" +#define FILL_PROLOG2 "\ +/PATcg {\n\ + 7 dict dup begin\n\ + /lw currentlinewidth def\n\ + /lc currentlinecap def\n\ + /lj currentlinejoin def\n\ + /ml currentmiterlimit def\n\ + /ds [ currentdash ] def\n\ + /cc [ currentrgbcolor ] def\n\ + /cm matrix currentmatrix def\n\ + end\n\ +} bind def\n\ +% PATdraw - calculates the boundaries of the object and\n\ +% fills it with the current pattern\n\ +/PATdraw { % proc\n\ + save exch\n\ + PATpcalc % proc nw nh px py\n\ + 5 -1 roll exec % nw nh px py\n\ + newpath\n\ + PATfill % -\n\ + restore\n\ +} bind def\n\ +" +#define FILL_PROLOG3 "\ +% PATfill - performs the tiling for the shape\n\ +/PATfill { % nw nh px py PATfill -\n\ + PATDict /CurrentPattern get dup begin\n\ + setfont\n\ + % Set the coordinate system to Pattern Space\n\ + PatternGState PATsg\n\ + % Set the color for uncolored pattezns\n\ + PaintType 2 eq { PATDict /PColor get PATsc } if\n\ + % Create the string for showing\n\ + 3 index string % nw nh px py str\n\ + % Loop for each of the pattern sources\n\ + 0 1 Multi 1 sub { % nw nh px py str source\n\ + % Move to the starting location\n\ + 3 index 3 index % nw nh px py str source px py\n\ + moveto % nw nh px py str source\n\ + % For multiple sources, set the appropriate color\n\ + Multi 1 ne { dup PC exch get PATsc } if\n\ + % Set the appropriate string for the source\n\ + 0 1 7 index 1 sub { 2 index exch 2 index put } for pop\n\ + % Loop over the number of vertical cells\n\ + 3 index % nw nh px py str nh\n\ + { % nw nh px py str\n\ + currentpoint % nw nh px py str cx cy\n\ + 2 index oldshow % nw nh px py str cx cy\n\ + YStep add moveto % nw nh px py str\n\ + } repeat % nw nh px py str\n\ + } for\n\ + 5 { pop } repeat\n\ + end\n\ +} bind def\n\ +" +#define FILL_PROLOG4 "\ +% PATkshow - kshow with the current pattezn\n\ +/PATkshow { % proc string\n\ + exch bind % string proc\n\ + 1 index 0 get % string proc char\n\ + % Loop over all but the last character in the string\n\ + 0 1 4 index length 2 sub {\n\ + % string proc char idx\n\ + % Find the n+1th character in the string\n\ + 3 index exch 1 add get % string proc char char+1\n\ + exch 2 copy % strinq proc char+1 char char+1 char\n\ + % Now show the nth character\n\ + PATsstr dup 0 4 -1 roll put % string proc chr+1 chr chr+1 (chr)\n\ + false charpath % string proc char+1 char char+1\n\ + /clip load PATdraw\n\ + % Move past the character (charpath modified the current point)\n\ + currentpoint newpath moveto\n\ + % Execute the user proc (should consume char and char+1)\n\ + mark 3 1 roll % string proc char+1 mark char char+1\n\ + 4 index exec % string proc char+1 mark...\n\ + cleartomark % string proc char+1\n\ + } for\n\ + % Now display the last character\n\ + PATsstr dup 0 4 -1 roll put % string proc (char+1)\n\ + false charpath % string proc\n\ + /clip load PATdraw\n\ + neewath\n\ + pop pop % -\n\ +} bind def\n\ +" +#define FILL_PROLOG5 "\ +% PATmp - the makepattern equivalent\n\ +/PATmp { % patdict patmtx PATmp patinstance\n\ + exch dup length 7 add % We will add 6 new entries plus 1 FID\n\ + dict copy % Create a new dictionary\n\ + begin\n\ + % Matrix to install when painting the pattern\n\ + TilingType PATtcalc\n\ + /PatternGState PATcg def\n\ + PatternGState /cm 3 -1 roll put\n\ + % Check for multi pattern sources (Level 1 fast color patterns)\n\ + currentdict /Multi known not { /Multi 1 def } if\n\ + % Font dictionary definitions\n\ + /FontType 3 def\n\ + % Create a dummy encoding vector\n\ + /Encoding 256 array def\n\ + 3 string 0 1 255 {\n\ + Encoding exch dup 3 index cvs cvn put } for pop\n\ + /FontMatrix matrix def\n\ + /FontBBox BBox def\n\ + /BuildChar {\n\ + mark 3 1 roll % mark dict char\n\ + exch begin\n\ + Multi 1 ne {PaintData exch get}{pop} ifelse % mark [paintdata]\n\ + PaintType 2 eq Multi 1 ne or\n\ + { XStep 0 FontBBox aload pop setcachedevice }\n\ + { XStep 0 setcharwidth } ifelse\n\ + currentdict % mark [paintdata] dict\n\ + /PaintProc load % mark [paintdata] dict paintproc\n\ + end\n\ + gsave\n\ + false PATredef exec true PATredef\n\ + grestore\n\ + cleartomark % -\n\ + } bind def\n\ + currentdict\n\ + end % newdict\n\ + /foo exch % /foo newlict\n\ + definefont % newfont\n\ +} bind def\n\ +" +#define FILL_PROLOG6 "\ +% PATpcalc - calculates the starting point and width/height\n\ +% of the tile fill for the shape\n\ +/PATpcalc { % - PATpcalc nw nh px py\n\ + PATDict /CurrentPattern get begin\n\ + gsave\n\ + % Set up the coordinate system to Pattern Space\n\ + % and lock down pattern\n\ + PatternGState /cm get setmatrix\n\ + BBox aload pop pop pop translate\n\ + % Determine the bounding box of the shape\n\ + pathbbox % llx lly urx ury\n\ + grestore\n\ + % Determine (nw, nh) the # of cells to paint width and height\n\ + PatHeight div ceiling % llx lly urx qh\n\ + 4 1 roll % qh llx lly urx\n\ + PatWidth div ceiling % qh llx lly qw\n\ + 4 1 roll % qw qh llx lly\n\ + PatHeight div floor % qw qh llx ph\n\ + 4 1 roll % ph qw qh llx\n\ + PatWidth div floor % ph qw qh pw\n\ + 4 1 roll % pw ph qw qh\n\ + 2 index sub cvi abs % pw ph qs qh-ph\n\ + exch 3 index sub cvi abs exch % pw ph nw=qw-pw nh=qh-ph\n\ + % Determine the starting point of the pattern fill\n\ + %(px, py)\n\ + 4 2 roll % nw nh pw ph\n\ + PatHeight mul % nw nh pw py\n\ + exch % nw nh py pw\n\ + PatWidth mul exch % nw nh px py\n\ + end\n\ +} bind def\n\ +" +#define FILL_PROLOG7 "\ +% Save the original routines so that we can use them later on\n\ +/oldfill /fill load def\n\ +/oldeofill /eofill load def\n\ +/oldstroke /stroke load def\n\ +/oldshow /show load def\n\ +/oldashow /ashow load def\n\ +/oldwidthshow /widthshow load def\n\ +/oldawidthshow /awidthshow load def\n\ +/oldkshow /kshow load def\n\ +\n\ +% These defs are necessary so that subsequent procs don't bind in\n\ +% the originals\n\ +/fill { oldfill } bind def\n\ +/eofill { oldeofill } bind def\n\ +/stroke { oldstroke } bind def\n\ +/show { oldshow } bind def\n\ +/ashow { oldashow } bind def\n\ +/widthshow { oldwidthshow } bind def\n\ +/awidthshow { oldawidthshow } bind def\n\ +/kshow { oldkshow } bind def\n\ +" +#define FILL_PROLOG8 "\ +/PATredef {\n\ + MyAppDict begin\n\ + {\n\ + /fill { /clip load PATdraw newpath } bind def\n\ + /eofill { /eoclip load PATdraw newpath } bind def\n\ + /stroke { PATstroke } bind def\n\ + /show { 0 0 null 0 0 6 -1 roll PATawidthshow } bind def\n\ + /ashow { 0 0 null 6 3 roll PATawidthshow }\n\ + bind def\n\ + /widthshow { 0 0 3 -1 roll PATawidthshow }\n\ + bind def\n\ + /awidthshow { PATawidthshow } bind def\n\ + /kshow { PATkshow } bind def\n\ + } {\n\ + /fill { oldfill } bind def\n\ + /eofill { oldeofill } bind def\n\ + /stroke { oldstroke } bind def\n\ + /show { oldshow } bind def\n\ + /ashow { oldashow } bind def\n\ + /widthshow { oldwidthshow } bind def\n\ + /awidthshow { oldawidthshow } bind def\n\ + /kshow { oldkshow } bind def\n\ + } ifelse\n\ + end\n\ +} bind def\n\ +false PATredef\n\ +" +#define FILL_PROLOG9 "\ +% Conditionally define setcmykcolor if not available\n\ +/setcmykcolor where { pop } {\n\ + /setcmykcolor {\n\ + 1 sub 4 1 roll\n\ + 3 {\n\ + 3 index add neg dup 0 lt { pop 0 } if 3 1 roll\n\ + } repeat\n\ + setrgbcolor - pop\n\ + } bind def\n\ +} ifelse\n\ +/PATsc { % colorarray\n\ + aload length % c1 ... cn length\n\ + dup 1 eq { pop setgray } { 3 eq { setrgbcolor } { setcmykcolor\n\ + } ifelse } ifelse\n\ +} bind def\n\ +/PATsg { % dict\n\ + begin\n\ + lw setlinewidth\n\ + lc setlinecap\n\ + lj setlinejoin\n\ + ml setmiterlimit\n\ + ds aload pop setdash\n\ + cc aload pop setrgbcolor\n\ + cm setmatrix\n\ + end\n\ +} bind def\n\ +" +#define FILL_PROLOG10 "\ +/PATDict 3 dict def\n\ +/PATsp {\n\ + true PATredef\n\ + PATDict begin\n\ + /CurrentPattern exch def\n\ + % If it's an uncolored pattern, save the color\n\ + CurrentPattern /PaintType get 2 eq {\n\ + /PColor exch def\n\ + } if\n\ + /CColor [ currentrgbcolor ] def\n\ + end\n\ +} bind def\n\ +% PATstroke - stroke with the current pattern\n\ +/PATstroke {\n\ + countdictstack\n\ + save\n\ + mark\n\ + {\n\ + currentpoint strokepath moveto\n\ + PATpcalc % proc nw nh px py\n\ + clip newpath PATfill\n\ + } stopped {\n\ + (*** PATstroke Warning: Path is too complex, stroking\n\ + with gray) =\n\ + cleartomark\n\ + restore\n\ + countdictstack exch sub dup 0 gt\n\ + { { end } repeat } { pop } ifelse\n\ + gsave 0.5 setgray oldstroke grestore\n\ + } { pop restore pop } ifelse\n\ + newpath\n\ +} bind def\n\ +" +#define FILL_PROLOG11 "\ +/PATtcalc { % modmtx tilingtype PATtcalc tilematrix\n\ + % Note: tiling types 2 and 3 are not supported\n\ + gsave\n\ + exch concat % tilingtype\n\ + matrix currentmatrix exch % cmtx tilingtype\n\ + % Tiling type 1 and 3: constant spacing\n\ + 2 ne {\n\ + % Distort the pattern so that it occupies\n\ + % an integral number of device pixels\n\ + dup 4 get exch dup 5 get exch % tx ty cmtx\n\ + XStep 0 dtransform\n\ + round exch round exch % tx ty cmtx dx.x dx.y\n\ + XStep div exch XStep div exch % tx ty cmtx a b\n\ + 0 YStep dtransform\n\ + round exch round exch % tx ty cmtx a b dy.x dy.y\n\ + YStep div exch YStep div exch % tx ty cmtx a b c d\n\ + 7 -3 roll astore % { a b c d tx ty }\n\ + } if\n\ + grestore\n\ +} bind def\n\ +/PATusp {\n\ + false PATredef\n\ + PATDict begin\n\ + CColor PATsc\n\ + end\n\ +} bind def\n\ +" #define FILL_PAT01 "\ +% this is the pattern fill program from the Second edition Reference Manual\n\ +% with changes to call the above pattern fill\n\ % left30\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [-2 -4 10 5]\n\ - /XStep 8\n\ - /YStep 4\n\ - /PaintProc\n\ - {\n\ - pop\n\ - newpath\n\ - -2 5 moveto\n\ - .7 setlinewidth\n\ - 12 -6 rlineto\n\ - stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 32 16 true [ 32 0 0 -16 0 16 ]\n\ + {<c000c000300030000c000c000300030000c000c000300030\n\ + 000c000c00030003c000c000300030000c000c0003000300\n\ + 00c000c000300030000c000c00030003>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P1 exch def\n\ " #define FILL_PAT02 "\ % right30\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [-2 -4 10 5]\n\ - /XStep 8\n\ - /YStep 4\n\ - /PaintProc\n\ - {\n\ - pop\n\ - newpath\n\ - .7 setlinewidth\n\ - -2 -1 moveto\n\ - 12 6 rlineto\n\ - stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 32 16 true [ 32 0 0 -16 0 16 ]\n\ + {<00030003000c000c0030003000c000c0030003000c000c00\n\ + 30003000c000c00000030003000c000c0030003000c000c0\n\ + 030003000c000c0030003000c000c000>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P2 exch def\n\ " #define FILL_PAT03 "\ % crosshatch30\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [-2 -4 10 5]\n\ - /XStep 8\n\ - /YStep 4\n\ - /PaintProc\n\ - {\n\ - pop\n\ - newpath\n\ - .7 setlinewidth\n\ - -2 5 moveto\n\ - 12 -6 rlineto\n\ - stroke\n\ - newpath\n\ - .7 setlinewidth\n\ - -2 -1 moveto\n\ - 12 6 rlineto\n\ - stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 32 16 true [ 32 0 0 -16 0 16 ]\n\ + {<033003300c0c0c0c30033003c000c000300330030c0c0c0c\n\ + 0330033000c000c0033003300c0c0c0c30033003c000c000\n\ + 300330030c0c0c0c0330033000c000c0>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P3 exch def\n\ " #define FILL_PAT04 "\ % left45\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [-1 -1 9 9]\n\ - /XStep 8\n\ - /YStep 8\n\ - /PaintProc\n\ - {\n\ - pop\n\ - newpath\n\ - 1 setlinewidth\n\ - -1 9 moveto\n\ - 9 -1 lineto\n\ - stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 20 20 true [ 20 0 0 -20 0 20 ]\n\ + {<8020004010002008001004000802000401000200\n\ + 8001004000802000401080200040100020080010\n\ + 0400080200040100020080010040008020004010>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P4 exch def\n\ " #define FILL_PAT05 "\ % right45\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [-1 -1 9 9]\n\ - /XStep 8\n\ - /YStep 8\n\ - /PaintProc\n\ - {\n\ - pop\n\ - newpath\n\ - 1 setlinewidth\n\ - -1 -1 moveto\n\ - 9 9 lineto\n\ - stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 20 20 true [ 20 0 0 -20 0 20 ]\n\ + {<0040100080200100400200800401000802001004\n\ + 0020080040100080200000401000802001004002\n\ + 0080040100080200100400200800401000802000>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P5 exch def\n\ " #define FILL_PAT06 "\ % crosshatch45\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [-1 -1 9 9] \n\ - /XStep 8\n\ - /YStep 8\n\ - /PaintProc\n\ - {\n\ - pop\n\ - newpath\n\ - 1 setlinewidth\n\ - -1 9 moveto\n\ - 9 -1 lineto\n\ - stroke\n\ - -1 -1 moveto\n\ - 9 9 lineto\n\ - stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 20 20 true [ 20 0 0 -20 0 20 ]\n\ + {<8020004050102088201104400a02800401000a02\n\ + 8011044020882040501080200040501020882011\n\ + 04400a02800401000a0280110440208820405010>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P6 exch def\n\ " #define FILL_PAT07 "\ % bricks\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [-1 0 17 17] % At least linewidth bigger than Xstep and Ystep\n\ - /XStep 16 % These numbers mimic old Xfig bitmaps\n\ - /YStep 16\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 1 setlinewidth 0 setlinecap\n\ - newpath 0 0 moveto 0 8 lineto stroke\n\ - newpath 8 8 moveto 8 16 lineto stroke\n\ - newpath 0 8 moveto 16 8 lineto stroke\n\ - newpath 0 16 moveto 16 16 lineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 16 16 true [ 16 0 0 -16 0 16 ]\n\ + {<008000800080008000800080\n\ + 0080ffff8000800080008000\n\ + 800080008000ffff>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P7 exch def\n\ " #define FILL_PAT08 "\ % vertical bricks\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 -1 17 17] % At least linewidth bigger than Xstep and Ystep\n\ - /XStep 16\n\ - /YStep 16\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 1 setlinewidth 0 setlinecap\n\ - newpath 0 0 moveto 8 0 lineto stroke\n\ - newpath 8 8 moveto 16 8 lineto stroke\n\ - newpath 8 0 moveto 8 16 lineto stroke\n\ - newpath 16 0 moveto 16 16 lineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 16 16 true [ 16 0 0 -16 0 16 ]\n\ + {<ff8080808080808080808080\n\ + 8080808080ff808080808080\n\ + 8080808080808080> }\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P8 exch def\n\ " #define FILL_PAT09 "\ % horizontal lines\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 0 4 4] % At least linewidth bigger than Xstep and Ystep\n\ - /XStep 4\n\ - /YStep 4\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 1 setlinewidth 0 setlinecap\n\ - newpath 0 3.5 moveto 4 3.5 lineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 16 8 true [ 16 0 0 -8 0 8 ]\n\ + {< ffff000000000000ffff000000000000>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P9 exch def\n\ " #define FILL_PAT10 "\ % vertical lines\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 0 4 4]\n\ - /XStep 4\n\ - /YStep 4\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 1 setlinewidth 0 setlinecap\n\ - newpath 3.5 0 moveto 3.5 4 lineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 8 16 true [ 8 0 0 -16 0 16 ]\n\ + {<11111111111111111111111111111111>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P10 exch def\n\ " #define FILL_PAT11 "\ % crosshatch lines\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 0 4 4]\n\ - /XStep 4\n\ - /YStep 4\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 1 setlinewidth 0 setlinecap\n\ - newpath 3.5 0 moveto 3.5 4 lineto stroke\n\ - newpath 0 3.5 moveto 4 3.5 lineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 16 16 true [ 16 0 0 -16 0 16 ]\n\ + {<ffff111111111111ffff111111111111ffff111111111111\n\ + ffff111111111111>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P11 exch def\n\ " #define FILL_PAT12 "\ % left-shingles\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 0 25 24]\n\ - /XStep 24\n\ - /YStep 24\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 1 setlinewidth 0 setlinecap\n\ - newpath 0 0.5 moveto 24 0.5 lineto stroke\n\ - newpath 0 8.5 moveto 24 8.5 lineto stroke\n\ - newpath 0 16.5 moveto 24 16.5 lineto stroke\n\ - newpath 4 8.5 moveto 8 16.5 lineto stroke\n\ - newpath 12 0.5 moveto 16 8.5 lineto stroke\n\ - newpath 20 16.5 moveto 24 24.5 lineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 48 48 true [ 48 0 0 -48 0 48 ]\n\ + {<000000000001000000000001000000000002000000000002\n\ + 000000000004000000000004000000000008000000000008\n\ + 000000000010000000000010000000000020000000000020\n\ + 000000000040000000000040000000000080ffffffffffff\n\ + 000000010000000000010000000000020000000000020000\n\ + 000000040000000000040000000000080000000000080000\n\ + 000000100000000000100000000000200000000000200000\n\ + 000000400000000000400000000000800000ffffffffffff\n\ + 000100000000000100000000000200000000000200000000\n\ + 000400000000000400000000000800000000000800000000\n\ + 001000000000001000000000002000000000002000000000\n\ + 004000000000004000000000008000000000ffffffffffff>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P12 exch def\n\ " #define FILL_PAT13 "\ % right-shingles\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 0 25 24]\n\ - /XStep 24\n\ - /YStep 24\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 1 setlinewidth 0 setlinecap\n\ - newpath 0 0.5 moveto 24 0.5 lineto stroke\n\ - newpath 0 8.5 moveto 24 8.5 lineto stroke\n\ - newpath 0 16.5 moveto 24 16.5 lineto stroke\n\ - newpath 4 24.5 moveto 8 16.5 lineto stroke\n\ - newpath 16 0.5 moveto 12 8.5 lineto stroke\n\ - newpath 20 16.5 moveto 24 8.5 lineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 48 48 true [ 48 0 0 -48 0 48 ]\n\ + {<000000000080000000000080000000000040000000000040\n\ + 000000000020000000000020000000000010000000000010\n\ + 000000000008000000000008000000000004000000000004\n\ + 000000000002000000000002000000000001ffffffffffff\n\ + 008000000000008000000000004000000000004000000000\n\ + 002000000000002000000000001000000000001000000000\n\ + 000800000000000800000000000400000000000400000000\n\ + 000200000000000200000000000100000000ffffffffffff\n\ + 000000800000000000800000000000400000000000400000\n\ + 000000200000000000200000000000100000000000100000\n\ + 000000080000000000080000000000040000000000040000\n\ + 000000020000000000020000000000010000ffffffffffff>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P13 exch def\n\ " #define FILL_PAT14 "\ % vertical left-shingles\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 0 25 25]\n\ - /XStep 24\n\ - /YStep 24\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 1 setlinewidth 0 setlinecap\n\ - newpath 0.5 0 moveto 0.5 24 lineto stroke\n\ - newpath 8.5 0 moveto 8.5 24 lineto stroke\n\ - newpath 16.5 0 moveto 16.5 24 lineto stroke\n\ - newpath 24.5 4 moveto 16.5 8 lineto stroke\n\ - newpath 0.5 16 moveto 8.5 12 lineto stroke\n\ - newpath 16.5 20 moveto 8.5 24 lineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 48 48 true [ 48 0 0 -48 0 48 ]\n\ + {<000100010001000100010001000100010001000100010001\n\ + 000100010001000100010001000100010001000100010001\n\ + 000180010001000160010001000118010001000106010001\n\ + 000101810001000100610001000100190001000100070001\n\ + 000100010001000100010001000100010001000100010001\n\ + 000100010001000100010001000100010001000100010001\n\ + 000100018001000100016001000100011801000100010601\n\ + 000100010181000100010061000100010019000100010007\n\ + 000100010001000100010001000100010001000100010001\n\ + 000100010001000100010001000100010001000100010001\n\ + 800100010001600100010001180100010001060100010001\n\ + 018100010001006100010001001900010001000700010001>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P14 exch def\n\ " #define FILL_PAT15 "\ % vertical right-shingles\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 0 24 25]\n\ - /XStep 24\n\ - /YStep 24\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 1 setlinewidth 0 setlinecap\n\ - newpath 0.5 0 moveto 0.5 24 lineto stroke\n\ - newpath 8.5 0 moveto 8.5 24 lineto stroke\n\ - newpath 16.5 0 moveto 16.5 24 lineto stroke\n\ - newpath 8.5 4 moveto 16.5 8 lineto stroke\n\ - newpath 0.5 12 moveto 8.5 16 lineto stroke\n\ - newpath 16.5 20 moveto 24.5 24 lineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 48 48 true [ 48 0 0 -48 0 48 ]\n\ + {<000100010001000100010001000100010001000100010001\n\ + 000100010001000100010001000100010001000100010001\n\ + 000100010007000100010019000100010061000100010181\n\ + 000100010601000100011801000100016001000100018001\n\ + 000100010001000100010001000100010001000100010001\n\ + 000100010001000100010001000100010001000100010001\n\ + 000100070001000100190001000100610001000101810001\n\ + 000106010001000118010001000160010001000180010001\n\ + 000100010001000100010001000100010001000100010001\n\ + 000100010001000100010001000100010001000100010001\n\ + 000700010001001900010001006100010001018100010001\n\ + 060100010001180100010001600100010001800100010001>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P15 exch def\n\ " #define FILL_PAT16 "\ % fishscales\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 -1 17 9]\n\ - /XStep 16\n\ - /YStep 8\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 0.7 setlinewidth 0 setlinecap\n\ - newpath 8 15 11 223 317 arc stroke\n\ - newpath 0 11 11 223 317 arc stroke\n\ - newpath 16 11 11 223 317 arc stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 32 16 true [ 32 0 0 -16 0 16 ]\n\ + {<0007e000000c30000018180000700e0001c003800f0000f0\n\ + 7800001ec0000003600000063000000c180000180e000070\n\ + 038001c000f00f00001e78000003c000>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P16 exch def\n\ " #define FILL_PAT17 "\ % small fishscales\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 -0.5 8 8.5]\n\ - /XStep 8\n\ - /YStep 8\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 0.7 setlinewidth 0 setlinecap\n\ - newpath 4 8 4 180 360 arc stroke\n\ - newpath 0 4 4 180 360 arc stroke\n\ - newpath 8 4 4 180 360 arc stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 16 16 true [ 16 0 0 -16 0 16 ]\n\ + {<008000800080014001400220\n\ + 0c187007c001800080004001\n\ + 40012002180c0770>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P17 exch def\n\ " #define FILL_PAT18 "\ % circles\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [-0.35 -0.35 16.35 16.35] % (0, 16) plus 1/2 linewidth\n\ - /XStep 16\n\ - /YStep 16\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 0.7 setlinewidth 0 setlinecap\n\ - newpath 8 8 8 0 360 arc stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 48 48 true [ 48 0 0 -48 0 48 ]\n\ + {<000007f000000000780f000000038000e000000c00001800\n\ + 001000000400006000000300008000000080010000000040\n\ + 020000000020040000000010040000000010080000000008\n\ + 100000000004100000000004200000000002200000000002\n\ + 200000000002400000000001400000000001400000000001\n\ + 400000000001800000000000800000000000800000000000\n\ + 800000000000800000000000800000000000800000000000\n\ + 400000000001400000000001400000000001400000000001\n\ + 200000000002200000000002200000000002100000000004\n\ + 100000000004080000000008040000000010040000000010\n\ + 020000000020010000000040008000000080006000000300\n\ + 001000000400000c0000180000038000e0000000780f0000>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P18 exch def\n\ " #define FILL_PAT19 "\ % hexagons\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 1\n\ - /BBox [-0.5 -0.35 27 17]\n\ - /XStep 26\n\ - /YStep 16\n\ - /PaintProc\n\ - {\n\ - pop\n\ - 0.7 setlinewidth 0 setlinejoin newpath\n\ - 4 0 moveto\n\ - 9 0 rlineto % right\n\ - 4 8 rlineto % up-right\n\ - -4 8 rlineto % up-left\n\ - -9 0 rmoveto % back\n\ - -4 -8 rlineto % down-left\n\ - 4 -8 rlineto 1 0 rlineto stroke % down-right\n\ - newpath 17 8 moveto 9 0 rlineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 60 36 true [ 60 0 0 -36 0 36 ]\n\ + {<008000040000000001000002000000000100000200000000\n\ + 020000010000000002000001000000000400000080000000\n\ + 040000008000000008000000400000000800000040000000\n\ + 100000002000000010000000200000002000000010000000\n\ + 200000001000000040000000080000004000000008000000\n\ + 800000000400000080000000040000000000000003fffff0\n\ + 800000000400000080000000040000004000000008000000\n\ + 400000000800000020000000100000002000000010000000\n\ + 100000002000000010000000200000000800000040000000\n\ + 080000004000000004000000800000000400000080000000\n\ + 020000010000000002000001000000000100000200000000\n\ + 0100000200000000008000040000000000fffffc00000000>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P19 exch def\n\ " #define FILL_PAT20 "\ % octagons\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 2\n\ - /BBox [0 0 16 16]\n\ - /XStep 16\n\ - /YStep 16\n\ - /PaintProc\n\ - {\n\ - pop\n\ - .8 setlinewidth 0 setlinejoin newpath\n\ - 5 0 moveto 6 0 rlineto 5 5 rlineto 0 6 rlineto\n\ - -5 5 rlineto -6 0 rlineto -5 -5 rlineto 0 -6 rlineto closepath stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 32 32 true [ 32 0 0 -32 0 32 ]\n\ + {<003fff000040008000800040010000200200001004000008\n\ + 080000041000000220000001400000008000000080000000\n\ + 800000008000000080000000800000008000000080000000\n\ + 800000008000000080000000800000008000000080000000\n\ + 400000012000000210000004080000080400001002000020\n\ + 0100004000800080>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P20 exch def\n\ " #define FILL_PAT21 "\ % horizontal sawtooth lines\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 1\n\ - /BBox [0 0 8 8]\n\ - /XStep 8\n\ - /YStep 8\n\ - /PaintProc\n\ - {\n\ - pop\n\ - .8 setlinewidth 0 setlinejoin newpath\n\ - -1 3 moveto 1 -1 rlineto 4 4 rlineto 4 -4 rlineto 1 1 rlineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 32 16 true [ 32 0 0 -16 0 16 ]\n\ + {<000000000000000000000000000000000000000000000000\n\ + 000000000100010002800280044004400820082010101010\n\ + 20082008400440048002800200010001>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P21 exch def\n\ " #define FILL_PAT22 "\ % vertical sawtooth lines\n\ -<<\n\ - /PatternType 1\n\ - /PaintType 2\n\ - /TilingType 1\n\ - /BBox [0 0 8.5 8]\n\ - /XStep 8\n\ - /YStep 8\n\ - /PaintProc\n\ - {\n\ - pop\n\ - .8 setlinewidth 0 setlinejoin newpath\n\ - 3 -1 moveto -1 1 rlineto 4 4 rlineto -4 4 rlineto 1 1 rlineto stroke\n\ - } bind\n\ -\n\ ->>\n\ -\n\ -matrix\n\ -makepattern\n\ +11 dict begin\n\ +/PaintType 1 def\n\ +/PatternType 1 def\n\ +/TilingType 1 def\n\ +/BBox [0 0 1 1] def\n\ +/XStep 1 def\n\ +/YStep 1 def\n\ +/PatWidth 1 def\n\ +/PatHeight 1 def\n\ +/Multi 2 def\n\ +/PaintData [\n\ + { clippath } bind\n\ + { 16 32 true [ 16 0 0 -32 0 32 ]\n\ + {<400020001000080004000200010000800100020004000800\n\ + 100020004000800040002000100008000400020001000080\n\ + 01000200040008001000200040008000>}\n\ + imagemask } bind\n\ +] def\n\ +/PaintProc {\n\ + pop\n\ + exec fill\n\ +} def\n\ +currentdict\n\ +end\n\ /P22 exch def\n\ "
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor