From ccd7f09ad8c783e6c42262a03b71df03034dc35e Mon Sep 17 00:00:00 2001 From: Elena ``of Valhalla'' Grandi Date: Fri, 23 Jun 2017 16:56:32 +0200 Subject: Finished Converting graph-paper to jinja2 template --- conf/margins/10mm.yaml | 2 + conf/settings/graph-paper/2mm.yaml | 8 ++ designs/graph-paper-2mm-a4.yaml | 2 +- src/graph-paper.ps | 187 ------------------------------------- src/graph-paper.ps.j2 | 187 +++++++++++++++++++++++++++++++++++++ 5 files changed, 198 insertions(+), 188 deletions(-) create mode 100644 conf/settings/graph-paper/2mm.yaml delete mode 100644 src/graph-paper.ps create mode 100644 src/graph-paper.ps.j2 diff --git a/conf/margins/10mm.yaml b/conf/margins/10mm.yaml index c5db32a..3ff91a9 100644 --- a/conf/margins/10mm.yaml +++ b/conf/margins/10mm.yaml @@ -2,3 +2,5 @@ margin_top: '10 mm' margin_bottom: '10 mm' margin_left: '10 mm' margin_right: '10 mm' + +border: 1 diff --git a/conf/settings/graph-paper/2mm.yaml b/conf/settings/graph-paper/2mm.yaml new file mode 100644 index 0000000..256c096 --- /dev/null +++ b/conf/settings/graph-paper/2mm.yaml @@ -0,0 +1,8 @@ +x_len: 2 mm +y_len: 2 mm + +x_count: 5 +y_count: 5 + +x_trasl: 0 mm +y_trasl: 0 mm diff --git a/designs/graph-paper-2mm-a4.yaml b/designs/graph-paper-2mm-a4.yaml index 433bca4..8e30e94 100644 --- a/designs/graph-paper-2mm-a4.yaml +++ b/designs/graph-paper-2mm-a4.yaml @@ -1,4 +1,4 @@ paper: a4 margins: 10mm theme: thin_lines -custom: 5mm +settings: 2mm diff --git a/src/graph-paper.ps b/src/graph-paper.ps deleted file mode 100644 index 3383341..0000000 --- a/src/graph-paper.ps +++ /dev/null @@ -1,187 +0,0 @@ -%!PS-Adobe-1.0 -%%Title: graph-paper - part of rpgTools by Elena of Valhalla -%%Pages:1 -%%BoundingBox: {{ bounding_box }} -%%DocumentPaperSizes: {{ paper_name }} -%%CreationDate: 2004/10/19 -%%DocumentData: Clean7Bit -%%LanguageLevel: 1 -%%EndComments -%%BeginProlog -% Copyright (C) 2004 Elena Grandi -% All rights reserved. -% -% Redistribution and use in source and binary forms, with or without -% modification, are permitted provided that the following conditions are met: -% -% * Redistributions of source code must retain the above copyright -% notice, this list of conditions and the following disclaimer. -% * Redistributions in binary form must reproduce the above copyright -% notice, this list of conditions and the following disclaimer in the -% documentation and/or other materials provided with the distribution. -% * Neither the name of the nor the -% names of its contributors may be used to endorse or promote products -% derived from this software without specific prior written permission. -% -% THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -% AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -% IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -% ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY -% DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -% (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -% LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -% ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -% (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -% SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -% ------ Usage ---------------------------------------------------------------- - -% To use this file either send it to a postscript printer, or use your -% favourite postscript interpreter to visualize and print it. - -% You can customize the result by changing the values in the Settings -% section below (see the comments for details) - -% ------ sizes ---------------------------------------------------------------- -% This will allow you to give measurements in inches or millimiters -% do not change -/inch {72 mul} def -/mm {0.03937 inch mul} def - -% ------ Settings ------------------------------------------------------------- - -% ------ Basic settings - -/SquaXLen 4 mm def % hor spacing between lines -/SquaYLen 4 mm def % ver spacing between lines - -/SquaXStr 5 def % hor number of thin lines between strong ones -/SquaYStr 5 def % ver number of thin lines between strong ones - -% line width and color for thin lines -/LineSizeThin {{ thin_line_size }} def -/LineColoThin {{ thin_line_color }} def -% line width and color for strong lines -/LineSizeStro {{ heavy_line_size }} def -/LineColoStro {{ heavy_line_color }} def -% line width and color for border -/LineSizeBord {{ border_line_size }} def -/LineColoBord {{ border_line_color }} def - -/BackColo {{ background_color }} def % background color - -% page size: if you change this, you should change the BoundingBox -% in line 4 accordingly (you CAN'T use mm or inch over there) -/PageWidth {{ page_width }} def -/PageHeight {{ page_height }} def - -% white margins -/BorderTop 10 mm def -/BorderBottom 10 mm def -/BorderLeft 10 mm def -/BorderRight 10 mm def - -% ------ Advanced settings - -% translation of the starting point of the pattern -/PattTrasX 00 mm def -/PattTrasY 02 mm def - -% ------ Behaviour - -% Whether to print a line around the margins (1) or not (0) -/WillPrintBorder 1 def - -% From here on you shouldn't worry about changing or configuring anything -% ------ Variables ------------------------------------------------------------ - -% number of vert and hor lines -/SquaXNum PageWidth BorderLeft sub BorderRight sub SquaXLen div def -/SquaYNum PageHeight BorderTop sub BorderBottom sub SquaYLen div def - -% starting vert and hor line num -/SquaXSta PattTrasX SquaXLen div cvi neg def -/SquaYSta PattTrasY SquaYLen div cvi neg def - -% ending vert and hor line num -/SquaXEnd SquaXNum SquaXSta add def -/SquaYEnd SquaYNum SquaYSta add def - -% ------ Procedures ----------------------------------------------------------- - -% Describes the printable area (does NOT print anything) -/UsedArea { - newpath - BorderLeft BorderBottom moveto - BorderLeft PageHeight BorderTop sub lineto - PageWidth BorderRight sub PageHeight BorderTop sub lineto - PageWidth BorderRight sub BorderBottom lineto - closepath -} def - -%%EndProlog -%%Page: 1 - -% set printing area -UsedArea clip - -% print background -BackColo setrgbcolor -UsedArea fill - -% print hor thin line pattern -newpath - SquaXSta 1 SquaXEnd { %for - SquaXLen mul BorderLeft add PattTrasX add BorderBottom moveto - 0 PageHeight BorderTop sub BorderBottom sub rlineto - } for - LineSizeThin setlinewidth - LineColoThin setrgbcolor -stroke - -% print hor strong line pattern -newpath - SquaXSta 1 SquaXEnd { %for - dup - SquaXStr mod 0 eq { %if - SquaXLen mul BorderLeft add PattTrasX add BorderBottom moveto - 0 PageHeight BorderTop sub BorderBottom sub rlineto - } if - } for - LineSizeStro setlinewidth - LineColoStro setrgbcolor -stroke - -% print vert thin line pattern -newpath - SquaYSta 1 SquaYEnd { %for - SquaYLen mul BorderBottom add PattTrasY add BorderLeft exch moveto - PageWidth BorderLeft sub BorderRight sub 0 rlineto - } for - LineSizeThin setlinewidth - LineColoThin setrgbcolor -stroke - -% print vert strong line pattern -newpath - SquaYSta 1 SquaYEnd { %for - dup - SquaYStr mod 0 eq { %if - SquaYLen mul BorderBottom add PattTrasY add BorderLeft exch moveto - PageWidth BorderLeft sub BorderRight sub 0 rlineto - } if - } for - LineSizeStro setlinewidth - LineColoStro setrgbcolor -stroke - - -% print border (if WillPrintBorder is not 0 ) -WillPrintBorder 0 ne { - LineSizeBord setlinewidth - LineColoBord setrgbcolor - UsedArea stroke -} if - -showpage -%%Trailer diff --git a/src/graph-paper.ps.j2 b/src/graph-paper.ps.j2 new file mode 100644 index 0000000..d888a5b --- /dev/null +++ b/src/graph-paper.ps.j2 @@ -0,0 +1,187 @@ +%!PS-Adobe-1.0 +%%Title: graph-paper - part of rpgTools by Elena of Valhalla +%%Pages:1 +%%BoundingBox: {{ bounding_box }} +%%DocumentPaperSizes: {{ paper_name }} +%%CreationDate: 2004/10/19 +%%DocumentData: Clean7Bit +%%LanguageLevel: 1 +%%EndComments +%%BeginProlog +% Copyright (C) 2004 Elena Grandi +% All rights reserved. +% +% Redistribution and use in source and binary forms, with or without +% modification, are permitted provided that the following conditions are met: +% +% * Redistributions of source code must retain the above copyright +% notice, this list of conditions and the following disclaimer. +% * Redistributions in binary form must reproduce the above copyright +% notice, this list of conditions and the following disclaimer in the +% documentation and/or other materials provided with the distribution. +% * Neither the name of the nor the +% names of its contributors may be used to endorse or promote products +% derived from this software without specific prior written permission. +% +% THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +% AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +% IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +% ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY +% DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +% (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +% LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +% ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +% (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +% SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +% ------ Usage ---------------------------------------------------------------- + +% To use this file either send it to a postscript printer, or use your +% favourite postscript interpreter to visualize and print it. + +% You can customize the result by changing the values in the Settings +% section below (see the comments for details) + +% ------ sizes ---------------------------------------------------------------- +% This will allow you to give measurements in inches or millimiters +% do not change +/inch {72 mul} def +/mm {0.03937 inch mul} def + +% ------ Settings ------------------------------------------------------------- + +% ------ Basic settings + +/SquaXLen {{ x_len }} def % hor spacing between lines +/SquaYLen {{ y_len }} def % ver spacing between lines + +/SquaXStr {{ x_count }} def % hor number of thin lines between strong ones +/SquaYStr {{ y_count }} def % ver number of thin lines between strong ones + +% line width and color for thin lines +/LineSizeThin {{ thin_line_size }} def +/LineColoThin {{ thin_line_color }} def +% line width and color for strong lines +/LineSizeStro {{ heavy_line_size }} def +/LineColoStro {{ heavy_line_color }} def +% line width and color for border +/LineSizeBord {{ border_line_size }} def +/LineColoBord {{ border_line_color }} def + +/BackColo {{ background_color }} def % background color + +% page size: if you change this, you should change the BoundingBox +% in line 4 accordingly (you CAN'T use mm or inch over there) +/PageWidth {{ page_width }} def +/PageHeight {{ page_height }} def + +% white margins +/BorderTop {{ margin_top }} def +/BorderBottom {{ margin_bottom }} def +/BorderLeft {{ margin_left }} def +/BorderRight {{ margin_right }} def + +% ------ Advanced settings + +% translation of the starting point of the pattern +/PattTrasX {{ x_trasl }} def +/PattTrasY {{ y_trasl }} def + +% ------ Behaviour + +% Whether to print a line around the margins (1) or not (0) +/WillPrintBorder {{ 1 if border else 0 }} def + +% From here on you shouldn't worry about changing or configuring anything +% ------ Variables ------------------------------------------------------------ + +% number of vert and hor lines +/SquaXNum PageWidth BorderLeft sub BorderRight sub SquaXLen div def +/SquaYNum PageHeight BorderTop sub BorderBottom sub SquaYLen div def + +% starting vert and hor line num +/SquaXSta PattTrasX SquaXLen div cvi neg def +/SquaYSta PattTrasY SquaYLen div cvi neg def + +% ending vert and hor line num +/SquaXEnd SquaXNum SquaXSta add def +/SquaYEnd SquaYNum SquaYSta add def + +% ------ Procedures ----------------------------------------------------------- + +% Describes the printable area (does NOT print anything) +/UsedArea { + newpath + BorderLeft BorderBottom moveto + BorderLeft PageHeight BorderTop sub lineto + PageWidth BorderRight sub PageHeight BorderTop sub lineto + PageWidth BorderRight sub BorderBottom lineto + closepath +} def + +%%EndProlog +%%Page: 1 + +% set printing area +UsedArea clip + +% print background +BackColo setrgbcolor +UsedArea fill + +% print hor thin line pattern +newpath + SquaXSta 1 SquaXEnd { %for + SquaXLen mul BorderLeft add PattTrasX add BorderBottom moveto + 0 PageHeight BorderTop sub BorderBottom sub rlineto + } for + LineSizeThin setlinewidth + LineColoThin setrgbcolor +stroke + +% print hor strong line pattern +newpath + SquaXSta 1 SquaXEnd { %for + dup + SquaXStr mod 0 eq { %if + SquaXLen mul BorderLeft add PattTrasX add BorderBottom moveto + 0 PageHeight BorderTop sub BorderBottom sub rlineto + } if + } for + LineSizeStro setlinewidth + LineColoStro setrgbcolor +stroke + +% print vert thin line pattern +newpath + SquaYSta 1 SquaYEnd { %for + SquaYLen mul BorderBottom add PattTrasY add BorderLeft exch moveto + PageWidth BorderLeft sub BorderRight sub 0 rlineto + } for + LineSizeThin setlinewidth + LineColoThin setrgbcolor +stroke + +% print vert strong line pattern +newpath + SquaYSta 1 SquaYEnd { %for + dup + SquaYStr mod 0 eq { %if + SquaYLen mul BorderBottom add PattTrasY add BorderLeft exch moveto + PageWidth BorderLeft sub BorderRight sub 0 rlineto + } if + } for + LineSizeStro setlinewidth + LineColoStro setrgbcolor +stroke + + +% print border (if WillPrintBorder is not 0 ) +WillPrintBorder 0 ne { + LineSizeBord setlinewidth + LineColoBord setrgbcolor + UsedArea stroke +} if + +showpage +%%Trailer -- cgit v1.2.3