summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-01-20 22:31:29 +0000
committerKarl Berry <karl@freefriends.org>2023-01-20 22:31:29 +0000
commit404df6ea55e0ee3763705c7a34349df82c5b8690 (patch)
tree13cd5da23764bad944840591cea8a8a714c52b35
parent1510ca75c014729b67762f758a83207e30f9e9c6 (diff)
writeongrid (20jan23)
git-svn-id: svn://tug.org/texlive/trunk@65598 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.pdfbin376053 -> 456766 bytes
-rw-r--r--Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.tex153
-rw-r--r--Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.pdfbin400100 -> 571900 bytes
-rw-r--r--Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.tex420
-rw-r--r--Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty349
5 files changed, 806 insertions, 116 deletions
diff --git a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.pdf b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.pdf
index bcd238b1e05..4a040de3b95 100644
--- a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.pdf
+++ b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.tex b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.tex
index 624789e9871..e03e735fa8b 100644
--- a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.tex
+++ b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-en.tex
@@ -3,8 +3,7 @@
% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)')
\documentclass[a4paper]{article}
-\usepackage[svgnames]{xcolor}
-\usepackage[french]{babel}
+\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{WriteOnGrid}
@@ -13,6 +12,7 @@
\usepackage{fontawesome5}
\usepackage{enumitem}
\usepackage{frcursive}
+\usepackage{lipsum}
\usepackage{tabularray}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
@@ -22,7 +22,22 @@
\cfoot{\sffamily\small - \thepage{} -}
\rfoot{\hyperlink{matoc}{\small\faArrowAltCircleUp[regular]}}
-\usepackage{hvlogos}
+\usepackage{hologo}
+\usepackage{xspace}
+\newcommand\tikzlogo{Ti\textit{k}Z}
+\newcommand\TeXLive{\hologo{TeX}Live\xspace}
+\let\TikZ\tikzlogo
+\newcommand\TableauDocumentation{%
+ \begin{tblr}{width=\linewidth,colspec={X[c]X[c]X[c]X[c]X[c]X[c]},cells={font=\sffamily}}
+ {\huge \LaTeX} & & & & &\\
+ & {\huge \hologo{pdfLaTeX}} & & & & \\
+ & & {\huge \hologo{LuaLaTeX}} & & & \\
+ & & & {\huge \TikZ} & & \\
+ & & & & {\huge \TeXLive} & \\
+ & & & & & {\huge \hologo{MiKTeX}} \\
+ \end{tblr}
+}
+
\usepackage{hyperref}
\urlstyle{same}
\hypersetup{pdfborder=0 0 0}
@@ -30,8 +45,8 @@
\setlength{\parindent}{0pt}
\definecolor{LightGray}{gray}{0.9}
-\def\TPversion{0.1.0}
-\def\TPdate{16/01/2023}
+\def\TPversion{0.1.1}
+\def\TPdate{20/01/2023}
\usepackage[most]{tcolorbox}
\tcbuselibrary{minted}
@@ -90,7 +105,7 @@
\vspace{0.5cm}
-{$\blacktriangleright$~~Some commands to create a grid (5x5 or Seyes) and to write \og on \fg{} the lines.}
+{$\blacktriangleright$~~Some commands to create a grid (5x5 or Seyes or Ruled) and to write "on" the lines.}
\smallskip
@@ -110,7 +125,7 @@
\end{EnvGrid}
\end{center}
-\begin{EnvGrid}[NumSquares=24x5,Margin=1,Enlarge=2/2,Seyes]
+\begin{EnvGrid}[NumSquares=24x5,Margin=1,Enlarge=2/2,Grid=Seyes]<Plum!75/LightSteelBlue!50>
\WriteLine[Scale=1.5]{\textcolor{red}{my text on line 1\ldots}}
\WriteLine[Scale=1.5]{\textcolor{blue}{my text on line 2\ldots}}
\WriteLine[Scale=1.5,OffsetH=-1]{$1+\frac{1}{2}=\frac32$ et $(1+x)^2=1+2x+x^2$ on line 3\ldots}
@@ -119,7 +134,7 @@
\vspace{0.5cm}
-%\hfill{}\textit{Merci à Denis Bitouzé et à Patrick Bideault pour leurs retours et idées !}
+\hfill{}\textit{Thanks to Patrick Bideault for ideas and help !}
\vfill
@@ -127,14 +142,7 @@
\medskip
-\begin{tblr}{width=\linewidth,colspec={X[c]X[c]X[c]X[c]X[c]X[c]},cells={font=\sffamily}}
-{\huge \LaTeX} & & & & &\\
-& {\huge \pdfLaTeX} & & & & \\
-& & {\huge \LuaLaTeX} & & & \\
-& & & {\huge \TikZ} & & \\
-& & & & {\huge \TeXLive} & \\
-& & & & & {\huge \MiKTeX} \\
-\end{tblr}
+\TableauDocumentation
\medskip
@@ -144,16 +152,16 @@
\newpage
-\part*{Introduction}
+\part*{Usage}
\section{The package}
\subsection{Loading of the package, used packages}
-The package \textsf{writeongrid} loads within the preamble :
+The package \textsf{WriteOnGrid} loads within the preamble :
\begin{PresentationCode}{listing only}
-\usepackage{writeongrid}
+\usepackage{WriteOnGrid}
\end{PresentationCode}
It’s mostly compatible with \textsf{latex}, \textsf{pdflatex}, \textsf{lualatex} or \textsf{xelatex} compilation !
@@ -163,13 +171,14 @@ It’s mostly compatible with \textsf{latex}, \textsf{pdflatex}, \textsf{lualate
It loads the following packages and libraries :
\begin{itemize}
+ \item \texttt{xcolor} with options \Cle{table,svgnames} ;
\item \texttt{tikz} with the librairies \Cle{calc} and \Cle{positionning} ;
\item \texttt{xstring}, \texttt{xparse} and \texttt{simplekv}.
\end{itemize}
\subsection{The package itself}
-The idea is to, thanks to TikZ, propose commands and environment to work with a grid, and to write on the lines.
+The idea is to, thanks to \TikZ, propose commands and environment to work with a grid, and to write on the lines.
\begin{PresentationCode}{listing only}
%environment, with keys to prepare the grid
@@ -234,48 +243,53 @@ Le left-border of the \textcolor{ForestGreen}{\textit{border}} is aligned on the
The first argument, \textit{optional}, between \texttt{[...]} give the \Cle{keys} :
\begin{itemize}
- \item \Cle{NumSwuares} to specify the size of the grid, under \texttt{(nbCol)x(nbRow)} ; \hfill~default : \Cle{17x5}
+ \item \Cle{NumSquares} to specify the size of the grid, under \texttt{(nbCol)x(nbRow)} ; \hfill~default : \Cle{17x5}
\item \Cle{Unit} to specify the scale of the grid ; \hfill~default : \Cle{1}
\item \Cle{Margin} to specify the global \textcolor{orange}{margin} at the beginning of the lines ; \hfill~default : \Cle{0}
\item \Cle{Enlarge} to specify the squares-overtakings, globally with \texttt{\textcolor{red}{L}\textcolor{blue}{R}} or side by side with \texttt{\textcolor{red}{L}/\textcolor{blue}{R}} ;\hfill~default : \Cle{0}
\item the boolean \Cle{Border} to display the basis border of the grid ;\hfill~default : \Cle{false}
- \item the boolean \Cle{Seyes} to work with a Seyes grid.\hfill~default : \Cle{false}
+ \item the key\Cle{Grille}, from \Cle{5x5/Seyes/Ruled}, to specify the grid's type.\hfill~défaut : \Cle{5x5}
\end{itemize}
-The second argument, \textit{optional}, between \texttt{<...>} is the major color of the grid, \Cle{lightgray} by default.
+The second argument, \textit{optional}, between \texttt{<...>} is the color(s) of the grid :
+
+\begin{itemize}
+ \item by \Cle{Color} (\Cle{lightgray!50} by default) for $5\times5$ or Ruled ;
+ \item by \Cle{ColorA/ColorB} (\Cle{lightgray!50/lightgray!25} by default) for Seyes.
+\end{itemize}
\medskip
\begin{PresentationCode}{listing only}
-%the borders are added to show the basis grid
-
-%30x5 small squares, w/o overtakings, basis color
-\begin{EnvGrid}[NumSquares=30x5]
+%18x4 big squares, w/o overtaking, 3-margin
+\begin{EnvGrid}[NumSquares=18x4,Grid=Seyes,Margin=3]<Plum!75/LightSteelBlue!50>
\end{EnvGrid}
%36x8 small squares, overtakings 3/3, LightSteelBlue color
\begin{EnvGrid}[NumSquares=36x8,Enlarge=3/3]<LightSteelBlue>
\end{EnvGrid}
-%15x5 big squares, overtakings 1/2, orange, centered
+%12x3 lines "Ruled", w/o overtakins, orange!50 color, centered, with 2-margin
\begin{center}
- \begin{EnvGrid}[NumSquares=15x5,Enlarge=1/2,Seyes]<orange>
+ \begin{EnvGrid}[NumSquares=12x3,Grid=Ruled,Margin=2]<orange!50>
\end{EnvGrid}
\end{center}
\end{PresentationCode}
\medskip
-\begin{EnvGrid}[NumSquares=30x5,Border]
+\begin{EnvGrid}[NumSquares=18x4,Grid=Seyes,Margin=3]<Plum!75/LightSteelBlue!50>
\end{EnvGrid}
\smallskip
-\begin{EnvGrid}[NumSquares=36x8,Enlarge=3/3,Border]<LightSteelBlue>
+\begin{EnvGrid}[NumSquares=36x8,Enlarge=3/3]<LightSteelBlue>
\end{EnvGrid}
+\smallskip
+
\begin{center}
- \begin{EnvGrid}[NumSquares=15x5,Enlarge=1/2,Seyes,Border]<orange>
+ \begin{EnvGrid}[NumSquares=12x3,Grid=Ruled,Margin=2]<orange!50>
\end{EnvGrid}
\end{center}
@@ -316,35 +330,35 @@ Le third argument, \textit{mandatory} and between \texttt{\{...\}} is the text,
\begin{PresentationCode}{listing only}
\begin{EnvGrid}[NumSquares=36x8]
- \WriteLine{my text on ligne 1\ldots}
- \WriteLine<center>{\ttfamily my tetetype text centered on line 2\ldots}
- \WriteLine<right>{right-align text on line 3\ldots}
- \WriteLine[OffsetH=0.1]{\textcolor{red}{red text, 1mm-shifted\ldots}}
+ \WriteLine[Scale=1.5]{my text on ligne 1\ldots}
+ \WriteLine[Scale=1.5]<center>{\ttfamily my tetetype text centered on line 2\ldots}
+ \WriteLine[Scale=1.5]<right>{right-align text on line 3\ldots}
+ \WriteLine[Scale=1.5,OffsetH=0.1]{\textcolor{red}{red text, 1mm-shifted\ldots}}
\PassLine
\WriteLine[Scale=0.5]{\sffamily sans serif text, reduced by 50\,\%, on line 6\ldots}
- \WriteLine[OffsetH=3]{\cursive 3 squares-shited text\ldots}
+ \WriteLine[Scale=1.5,OffsetH=3]{\cursive 3 squares-shifted text\ldots}
\end{EnvGrid}
\end{PresentationCode}
\begin{EnvGrid}[NumSquares=36x8]
- \WriteLine{my text on ligne 1\ldots}
- \WriteLine<center>{\ttfamily my tetetype text centered on line 2\ldots}
- \WriteLine<right>{right-align text on line 3\ldots}
- \WriteLine[OffsetH=0.1]{\textcolor{red}{red text, 1mm-shifted\ldots}}
+ \WriteLine[Scale=1.5]{my text on ligne 1\ldots}
+ \WriteLine[Scale=1.5]<center>{\ttfamily my tetetype text centered on line 2\ldots}
+ \WriteLine[Scale=1.5]<right>{right-align text on line 3\ldots}
+ \WriteLine[Scale=1.5,OffsetH=0.1]{\textcolor{red}{red text, 1mm-shifted\ldots}}
\PassLine
\WriteLine[Scale=0.5]{\sffamily sans serif text, reduced by 50\,\%, on line 6\ldots}
- \WriteLine[OffsetH=3]{\cursive 3 squares-shited text\ldots}
+ \WriteLine[Scale=1.5,OffsetH=3]{\cursive 3 squares-shifted text\ldots}
\end{EnvGrid}
\begin{PresentationCode}{listing only}
-\begin{EnvGrid}[NumSquares=22x4,Margin=1,Enlarge=2/3,Seyes,Border]
+\begin{EnvGrid}[NumSquares=16x4,Margin=2,Grid=Ruled]
\WriteLine[Scale=1.5]{\textcolor{red}{red text on line 1\ldots}}
\WriteLine[Scale=1.15,OffsetH=1]{$(1+x)^2=1+2x+x^2$ on line 2, with 1-square offset\ldots}
\WriteLine[OffsetH=-1]{\textcolor{blue}{blue text, back to left, on line 3\ldots}}
\end{EnvGrid}
\end{PresentationCode}
-\begin{EnvGrid}[NumSquares=22x4,Margin=1,Enlarge=2/3,Seyes,Border]
+\begin{EnvGrid}[NumSquares=16x4,Margin=2,Grid=Ruled]
\WriteLine[Scale=1.5]{\textcolor{red}{red text on line 1\ldots}}
\WriteLine[Scale=1.15,OffsetH=1]{$(1+x)^2=1+2x+x^2$ on line 2, with 1-square offset\ldots}
\WriteLine[OffsetH=-1]{\textcolor{blue}{blue text, back to left, on line 3\ldots}}
@@ -352,8 +366,59 @@ Le third argument, \textit{mandatory} and between \texttt{\{...\}} is the text,
\newpage
+\part*{Additional informations}
+
+\section{Introduction}
+
+There's few other possibilities with the package\textsf{WorkOnGrid}, but for the moment only with \textit{french} keys, so there's no specific documentation for these commands.
+
+\smallskip
+
+To sum up, they create full paper grid, with the ability to write paragraph.
+
+\section{Example}
+
+\begin{PresentationCode}{listing only}
+\begin{PleinePageRuled}[NumLignes]
+ \LignePapierRuled[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill LaTeX}
+ \LignePapierRuled[Echelle=1.25,Ligne=2,Couleur=red]<center>{\underline{\cursive\bfseries Evaluation 3}}
+ \CadreNoteRuled{3}
+ \LignePapierRuled[Echelle=1.25,Ligne=8,Couleur=ForestGreen]{\sffamily\underline{Exercise 1 :}}
+ \ParagraphePapierRuled[Ligne=9]{\cursive\lipsum[1]}
+ \ParagraphePapierRuled[Ligne=22]
+ {%
+ We try with math, $1+\frac12=\frac32$, inline, with several lines.\\
+ And another math example, $\int_0^1 2x dx = 1$.\\
+ A new line now !
+ }
+\end{PleinePageRuled}
+\end{PresentationCode}
+
+\pagebreak
+
+\thispagestyle{empty}
+
+\begin{PleinePageRuled}
+ \LignePapierRuled[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill LaTeX}
+ \LignePapierRuled[Echelle=1.25,Ligne=2,Couleur=red]<center>{\underline{\cursive\bfseries Evaluation 3}}
+ \CadreNoteRuled{3}
+ \LignePapierRuled[Echelle=1.25,Ligne=8,Couleur=ForestGreen]{\sffamily\underline{Exercise 1 :}}
+ \ParagraphePapierRuled[Ligne=9]{\cursive\lipsum[1]}
+ \ParagraphePapierRuled[Ligne=22]
+ {%
+ We try with math, $1+\frac12=\frac32$, inline, with several lines.\\
+ And another math example, $\int_0^1 2x dx = 1$.\\
+ A new line now !
+ }
+\end{PleinePageRuled}
+
+\pagebreak
+
+
\part*{History}
+\verb|v0.1.1|~:~~~~Best color choice
+
\verb|v0.1.0|~:~~~~Initial version
\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.pdf b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.pdf
index 3604f845ea6..cb3fe7aade1 100644
--- a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.pdf
+++ b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.tex b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.tex
index 57975ee6a6f..37b3191cc7a 100644
--- a/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.tex
+++ b/Master/texmf-dist/doc/latex/writeongrid/WriteOnGrid-doc-fr.tex
@@ -3,7 +3,6 @@
% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)')
\documentclass[a4paper]{article}
-\usepackage[svgnames]{xcolor}
\usepackage[french]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
@@ -13,16 +12,35 @@
\usepackage{fontawesome5}
\usepackage{enumitem}
\usepackage{frcursive}
+\usepackage{lipsum}
\usepackage{tabularray}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
+\usepackage{frcursive}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\lfoot{\sffamily\small [WriteOnGrid]}
\cfoot{\sffamily\small - \thepage{} -}
\rfoot{\hyperlink{matoc}{\small\faArrowAltCircleUp[regular]}}
-\usepackage{hvlogos}
+%\usepackage{hvlogos}
+\usepackage{hologo}
+\providecommand\tikzlogo{Ti\textit{k}Z}
+\providecommand\TeXLive{\TeX{}Live\xspace}
+\providecommand\PSTricks{\textsf{PSTricks}\xspace}
+\let\pstricks\PSTricks
+\let\TikZ\tikzlogo
+\newcommand\TableauDocumentation{%
+ \begin{tblr}{width=\linewidth,colspec={X[c]X[c]X[c]X[c]X[c]X[c]},cells={font=\sffamily}}
+ {\huge \LaTeX} & & & & &\\
+ & {\huge \hologo{pdfLaTeX}} & & & & \\
+ & & {\huge \hologo{LuaLaTeX}} & & & \\
+ & & & {\huge \TikZ} & & \\
+ & & & & {\huge \TeXLive} & \\
+ & & & & & {\huge \hologo{MiKTeX}} \\
+ \end{tblr}
+}
+
\usepackage{hyperref}
\urlstyle{same}
\hypersetup{pdfborder=0 0 0}
@@ -30,8 +48,8 @@
\setlength{\parindent}{0pt}
\definecolor{LightGray}{gray}{0.9}
-\def\TPversion{0.1.0}
-\def\TPdate{16 Janvier 2023}
+\def\TPversion{0.1.1}
+\def\TPdate{20 Janvier 2023}
\usepackage[most]{tcolorbox}
\tcbuselibrary{minted}
@@ -90,12 +108,16 @@
\vspace{0.5cm}
-{$\blacktriangleright$~~Quelques commandes créer une grille (5x5 ou Seyes) et écrire \og sur \fg{} les lignes.}
+{$\blacktriangleright$~~Quelques commandes créer une grille (5x5 ou Seyes ou Ruled) et écrire \og sur \fg{} les lignes.}
\smallskip
{$\blacktriangleright$~~Personnalisation de la taille de la grille, des marges, etc.}
+\smallskip
+
+{$\blacktriangleright$~~Possibilité de créer une page complète Seyes}
+
\vspace{1cm}
\begin{center}
@@ -110,7 +132,7 @@
\end{EnvQuadrillage}
\end{center}
-\begin{EnvQuadrillage}[NbCarreaux=24x5,Marge=1,Elargir=2/2,Seyes]
+\begin{EnvQuadrillage}[NbCarreaux=24x5,Marge=1,Elargir=2/2,Grille=Seyes]<Plum!75/LightSteelBlue!50>
\EcrireLigne[Echelle=1.5]{\textcolor{red}{mon texte sur la ligne 1\ldots}}
\EcrireLigne[Echelle=1.5]{\textcolor{blue}{mon texte sur la ligne 2\ldots}}
\EcrireLigne[Echelle=1.5,DecalH=-1]{$1+\frac{1}{2}=\frac32$ et $(1+x)^2=1+2x+x^2$ sur la ligne 3\ldots}
@@ -119,7 +141,7 @@
\vspace{0.5cm}
-%\hfill{}\textit{Merci à Denis Bitouzé et à Patrick Bideault pour leurs retours et idées !}
+\hfill{}\textit{Merci à Patrick Bideault pour ses retours et idées !}
\vfill
@@ -127,14 +149,7 @@
\medskip
-\begin{tblr}{width=\linewidth,colspec={X[c]X[c]X[c]X[c]X[c]X[c]},cells={font=\sffamily}}
-{\huge \LaTeX} & & & & &\\
-& {\huge \pdfLaTeX} & & & & \\
-& & {\huge \LuaLaTeX} & & & \\
-& & & {\huge \TikZ} & & \\
-& & & & {\huge \TeXLive} & \\
-& & & & & {\huge \MiKTeX} \\
-\end{tblr}
+\TableauDocumentation
\medskip
@@ -144,16 +159,21 @@
\newpage
-\part*{Introduction}
+\phantomsection
+\hypertarget{matoc}{}
-\section{Le package writeongrid}
+\tableofcontents
+
+\newpage
+
+\section{Le package WriteOnGrid}
\subsection{Chargement du package, packages utilisés}
-Le package \textsf{writeongrid} se charge dans le préambule via la commande :
+Le package \textsf{WriteOnGrid} se charge dans le préambule via la commande :
\begin{PresentationCode}{listing only}
-\usepackage{writeongrid}
+\usepackage{WriteOnGrid}
\end{PresentationCode}
Il est compatible avec les compilations usuelles en \textsf{latex}, \textsf{pdflatex}, \textsf{lualatex} ou \textsf{xelatex}.
@@ -163,6 +183,7 @@ Il est compatible avec les compilations usuelles en \textsf{latex}, \textsf{pdfl
Il charge les packages et librairies suivantes :
\begin{itemize}
+ \item \texttt{xcolor} avec les options \Cle{table,svgnames} ;
\item \texttt{tikz} avec les librairies \Cle{calc} et \Cle{positionning} ;
\item \texttt{xstring}, \texttt{xparse} et \texttt{simplekv}.
\end{itemize}
@@ -175,7 +196,7 @@ L'idée est de proposer, grâce à \TikZ, des \textsf{commandes} et \textsf{envi
%environnement francisé, avec clés en français pour préparer la grille
%commandes pour placer ou passer une ligne
-\begin{EnvQuadrillage}[clés]<couleur>
+\begin{EnvQuadrillage}[clés]<couleur(s)>
\EcrireLigne[clés]<alignement>{texte}
\PasseLigne
\end{EnvQuadrillage}
@@ -200,7 +221,7 @@ Ci-dessous on représente une grille $5\times5$ :
\begin{tikzpicture}
\useasboundingbox (0,0) rectangle ({0.5*24},{-0.5*5}) ;
- \draw[xstep=0.5,ystep=0.5,thin,lightgray!75] ({-0.5*2},0) grid ({0.5*24+0.5*3},{-0.5*5}) ;
+ \draw[xstep=0.5,ystep=0.5,thin,lightgray!50] ({-0.5*2},0) grid ({0.5*24+0.5*3},{-0.5*5}) ;
\draw[thick,decorate,decoration={brace,amplitude=8pt,mirror}](0,{-0.5*5-0.25})--({0.5*24},{-0.5*5-0.25}) node[midway,below=8pt,font=\small\sffamily] {24C} ;
\draw[red,thick,decorate,decoration={brace,amplitude=8pt,mirror}] ({-2*0.5},{-0.5*5-0.25})--({0},{-0.5*5-0.25}) node[midway,below=8pt,font=\small\sffamily] {2C} ;
\draw[blue,thick,decorate,decoration={brace,amplitude=8pt,mirror}] ({0.5*24},{-0.5*5-0.25})--({0.5*24+3*0.5},{-0.5*5-0.25}) node[midway,below=8pt,font=\small\sffamily] {3C} ;
@@ -219,14 +240,14 @@ De plus, le bord gauche du \textcolor{ForestGreen}{\textit{cadre}} est aligné s
\pagebreak
-\section{Commandes, clés et options}
+\section{Grilles individuelles}
\subsection{L'environnement}
\begin{PresentationCode}{listing only}
%environnement francisé, avec clés en français pour préparer la grille
-\begin{EnvQuadrillage}[clés]<couleur>
+\begin{EnvQuadrillage}[clés]<couleur(s)>
...
\end{EnvQuadrillage}
\end{PresentationCode}
@@ -239,43 +260,49 @@ Le premier argument, \textit{optionnel}, entre \texttt{[...]} propose les \Cle{c
\item \Cle{Marge} pour spécifier la \textcolor{orange}{marge} du début des lignes ; \hfill~défaut : \Cle{0}
\item \Cle{Elargir} pour préciser les carreaux de débordements, sous la forme unique \texttt{\textcolor{red}{G}\textcolor{blue}{D}} ou par côté \texttt{\textcolor{red}{G}/\textcolor{blue}{D}} ;\hfill~défaut : \Cle{0}
\item le booléen \Cle{Cadre} pour afficher le cadre de base du quadrillage ;\hfill~défaut : \Cle{false}
- \item le booléen \Cle{Seyes} pour afficher un quadrillage de type Seyes.\hfill~défaut : \Cle{false}
+ \item la clé \Cle{Grille}, parmi \Cle{5x5 / Seyes / Ruled}, pour spécifier le type de quadrillage ;\hfill~défaut : \Cle{5x5}
+ \item la clé \Cle{CouleurBarreSeyes} pour rajouter un trait vertical pour le papier Seyes .\hfill~défaut : \Cle{red!75}
\end{itemize}
-Le second argument, \textit{optionnel}, entre \texttt{<...>} est quant à lui la couleur de base du quadrillage, \Cle{lightgray} par défaut.
+Le second argument, \textit{optionnel}, entre \texttt{<...>} correspond quant à lui à la couleur de base du quadrillage :
+
+\begin{itemize}
+ \item sous la forme \Cle{Couleur} (\Cle{lightgray!50} par défaut) pour le quadrillage $5\times5$ ou Ruled ;
+ \item sous la forme \Cle{CouleurP/CouleurS} (\Cle{lightgray!50/lightgray!25} par défaut) pour le Seyes.
+\end{itemize}
\medskip
\begin{PresentationCode}{listing only}
-%les cadres ont été rajoutés pour la sortie
+%des cadres ont été rajoutés pour la sortie
-%30x5 petits carreaux, sans dépassement, couleur de base
-\begin{EnvQuadrillage}[NbCarreaux=30x5]
+%18x4 grands carreaux, sans dépassement, couleurs adaptées, marge de 3 carreaux
+\begin{EnvQuadrillage}[NbCarreaux=18x4,Grille=Seyes,Marge=3]<Plum!75/LightSteelBlue!50>
\end{EnvQuadrillage}
-%36x8 petits carreaux, avec débordements 3/3, couleur LightSteelBlue
-\begin{EnvQuadrillage}[NbCarreaux=36x8,Elargir=3/3]<LightSteelBlue>
+%36x8 petits carreaux, avec débordements 3/3, couleur LightSteelBlue!50
+\begin{EnvQuadrillage}[NbCarreaux=36x8,Elargir=3/3]<LightSteelBlue!50>
\end{EnvQuadrillage}
-%15x5 grand carreaux, avec débordements 1/2, couleur orange, centré
+%12x3 lignes "Ruled", sans débordements, couleur orange!50, centré, avec marge
\begin{center}
- \begin{EnvQuadrillage}[NbCarreaux=15x5,Elargir=1/2,Seyes]<orange>
+ \begin{EnvQuadrillage}[NbCarreaux=12x3,Elargir=2/2,Grille=Ruled,Marge=2]<orange!50>
\end{EnvQuadrillage}
\end{center}
\end{PresentationCode}
\medskip
-\begin{EnvQuadrillage}[NbCarreaux=30x5,Cadre]
+\begin{EnvQuadrillage}[NbCarreaux=18x4,Grille=Seyes,Marge=3]<Plum!75/LightSteelBlue!50>
\end{EnvQuadrillage}
\smallskip
-\begin{EnvQuadrillage}[NbCarreaux=36x8,Elargir=3/3,Cadre]<LightSteelBlue>
+\begin{EnvQuadrillage}[NbCarreaux=36x8,Elargir=3/3,Cadre]<LightSteelBlue!50>
\end{EnvQuadrillage}
\begin{center}
- \begin{EnvQuadrillage}[NbCarreaux=15x5,Elargir=1/2,Seyes,Cadre]<orange>
+ \begin{EnvQuadrillage}[NbCarreaux=12x3,Grille=Ruled,Marge=2]<orange!50>
\end{EnvQuadrillage}
\end{center}
@@ -317,7 +344,7 @@ Le troisième argument, \textit{mandataire} et entre \texttt{\{...\}} est quant
\begin{PresentationCode}{listing only}
\begin{EnvQuadrillage}[NbCarreaux=36x8]
\EcrireLigne{mon texte sur la ligne 1\ldots}
- \EcrireLigne<center>{\ttfamily mon texte, en fonte teletype augmentée de 25\,\%, centré sur la ligne 2\ldots}
+ \EcrireLigne[Echelle=1.25]<center>{\ttfamily mon texte, en fonte teletype +25\,\%, centré sur la ligne 2\ldots}
\EcrireLigne<right>{mon texte aligné à droite sur la ligne 3\ldots}
\EcrireLigne[DecalV=0.1]{\textcolor{red}{mon texte rouge sur la ligne 4, décalé de 1mm vers le haut\ldots}}
\PasseLigne
@@ -328,7 +355,7 @@ Le troisième argument, \textit{mandataire} et entre \texttt{\{...\}} est quant
\begin{EnvQuadrillage}[NbCarreaux=36x8]
\EcrireLigne{mon texte sur la ligne 1\ldots}
- \EcrireLigne<center>{\ttfamily mon texte, en fonte teletype augmentée de 25\,\%, centré sur la ligne 2\ldots}
+ \EcrireLigne[Echelle=1.25]<center>{\ttfamily mon texte, en fonte teletype augmentée de 25\,\%, centré sur la ligne 2\ldots}
\EcrireLigne<right>{mon texte aligné à droite sur la ligne 3\ldots}
\EcrireLigne[DecalV=0.1]{\textcolor{red}{mon texte rouge sur la ligne 4, décalé de 1mm vers le haut\ldots}}
\PasseLigne
@@ -337,22 +364,323 @@ Le troisième argument, \textit{mandataire} et entre \texttt{\{...\}} est quant
\end{EnvQuadrillage}
\begin{PresentationCode}{listing only}
-\begin{EnvQuadrillage}[NbCarreaux=22x4,Marge=1,Elargir=2/3,Seyes,Cadre]
- \EcrireLigne[Echelle=1.5]{\textcolor{red}{mon texte rouge, un peu agrandi,sur la ligne 1\ldots}}
- \EcrireLigne[Echelle=1.15,DecalH=1]{$(1+x)^2=1+2x+x^2$ sur la l2, avec un décal de 1 en plus de la marge\ldots}
- \EcrireLigne[DecalH=-1]{\textcolor{blue}{mon texte bleu, remis à gauche, sur la ligne 3\ldots}}
+\begin{EnvQuadrillage}[NbCarreaux=22x4,Marge=2,Elargir=2/3,Grille=Seyes]
+ \EcrireLigne[Echelle=1.5]{\textcolor{red}{mon texte rouge, un peu agrandi, sur la ligne 1\ldots}}
+ \EcrireLigne[Echelle=1.15,DecalH=1]{$(1+x)^2=1+2x+x^2$ sur la l2, avec un décal de 1 en plus\ldots}
+ \EcrireLigne[DecalH=-1.75]{\textcolor{blue}{mon texte bleu, remis un peu à gauche, sur la ligne 3\ldots}}
\end{EnvQuadrillage}
\end{PresentationCode}
-\begin{EnvQuadrillage}[NbCarreaux=22x4,Marge=1,Elargir=2/3,Seyes,Cadre]
- \EcrireLigne[Echelle=1.5]{\textcolor{red}{mon texte rouge, un peu agrandi,sur la ligne 1\ldots}}
- \EcrireLigne[Echelle=1.15,DecalH=1]{$(1+x)^2=1+2x+x^2$ sur la ligne 2, avec un décalage de 1 carreau en plus de la marge\ldots}
- \EcrireLigne[DecalH=-1]{\textcolor{blue}{mon texte bleu, remis à gauche, sur la ligne 3\ldots}}
+\begin{EnvQuadrillage}[NbCarreaux=22x4,Marge=2,Elargir=2/3,Grille=Seyes]
+ \EcrireLigne[Echelle=1.5]{\textcolor{red}{mon texte rouge, un peu agrandi, sur la ligne 1\ldots}}
+ \EcrireLigne[Echelle=1.15,DecalH=1]{$(1+x)^2=1+2x+x^2$ sur la ligne 2, avec un décalage de 1 carreau en plus\ldots}
+ \EcrireLigne[DecalH=-1.75]{\textcolor{blue}{mon texte bleu, remis un peu à gauche, sur la ligne 3\ldots}}
\end{EnvQuadrillage}
+\pagebreak
+
+\section{Page complète type Seyes}
+
+\subsection{Idée et fonctionnement global}
+
+Il s'agit ici de créer le quadrillage Seyes sur la page complète, comme pour la copie d'un élève !
+
+Dans ce cas, le type de papier utilisé \textbf{doit} être \texttt{a4}, et les unités sont fixées à 1~cm !
+
+\smallskip
+
+\faBomb{} Le fonctionnement est différent des environnements \textit{ponctuels} précédents, et l'écriture sur les lignes du quadrillage peuvent poser souci avec des environnements mathématiques !!
+
+\medskip
+
+La grille complète est liée à un environnement (basé sur \texttt{tikzpicture}), et les commandes pour écrire sont à mettre dans l'environnement.
+
+\smallskip
+
+Tout le placement est géré grâce à un point (fictif), nommé \texttt{(SeyesOrigine)}, qui correspond au point de départ de l'écriture sur la copie !
+
+\begin{PresentationCode}{listing only}
+\begin{PleinePageSeyes}[options]
+ \LignePapierSeyes[options]<alignement>(ajustement){texte}
+ \CadreNoteSeyes[hauteur]{numligne}
+ \ParagraphePapierSeyes[options]<alignement>(ajustement){texte}
+\end{PleinePageSeyes}
+\end{PresentationCode}
+
+\subsection{La grille}
+
+Pour l'environnement de création de la grille, l'argument, \textit{optionnel} et entre \texttt{[...]}, propose :
+
+\begin{itemize}
+ \item la clé \Cle{CouleurP} pour la couleur des \textit{gros traits} ;\hfill~défaut : \Cle{Plum!66}
+ \item la clé \Cle{CouleurS} pour la couleur des \textit{petits traits} ;\hfill~défaut : \Cle{LightSteelBlue!33}
+ \item la clé \Cle{CouleurMarge} pour la couleur du trait de la marge ;\hfill~défaut : \Cle{red!75}
+ \item le booléen \Cle{NumLignes} pour afficher le numéro des lignes (pour aider !). \hfill~défaut : \Cle{false}
+\end{itemize}
+
+\subsection{La commande pour saisir une ligne}
+
+La commande \texttt{LignePapierSeyes} permet de saisir une ligne \textbf{unique}, un peu comme la commande pour les petits blocs de quadrillage. Plusieurs options et arguments sont disponibles.
+
+\begin{PresentationCode}{listing only}
+\LignePapierSeyes[options]<alignement>(ajustement){texte}
+\end{PresentationCode}
+
+La commande positionne le \textsf{texte}, au niveau de la marge verticale, sur la ligne précisée !
+
+\smallskip
+
+Le premier argument, \textit{optionnel} et entre \texttt{[...]} propose :
+
+\begin{itemize}
+ \item la clé \Cle{Couleur} pour spécifier une couleur globale pour le texte ;\hfill~défaut : \Cle{black}
+ \item la clé \Cle{Echelle} pour spécifier une échelle globale pour le texte ;\hfill~défaut : \Cle{1}
+ \item la clé \Cle{Ligne} pour spécifier le numéro de ligne sur lequel on souhaite écrire ;\hfill~défaut : \Cle{1}
+ \item la clé \Cle{Largeur} pour spécifier la largeur (en cm) de la boîte dans laquelle le texte sera placé.\hfill~défaut : \Cle{16.8}
+\end{itemize}
+
+Le deuxième argument, \textit{optionnel} et entre \texttt{<...>}, permet de spécifier l'alignement souhaité pour la ligne, parmi \Cle{left/center/right}, et vaut \Cle{left} par défaut.
+
+\smallskip
+
+Le troisième argument, \textit{optionnel} et entre \texttt{(...)}, permet de positionner le texte avec un \textit{décalage fin} et \textit{relatif} de $(x\,;y)$, et il est fixé par défaut à \Cle{0,0}.
+
+\smallskip
+
+Le dernier argument, \textit{mandataire} et entre \texttt{\{...\}} est le texte à placer, avec les options classiques en langage \TeX{} !
+
+\subsection{Une commande pour un cadre de note}
+
+\begin{PresentationCode}{listing only}
+\CadreNoteSeyes[hauteur]{numligne}
+\end{PresentationCode}
+
+Cette commande permet de tracer un cadre \textsf{note/appréciation} de \Cle{hauteur} en carreaux, et placé sur la ligne \Cle{numligne}.
+
+\pagebreak
+
+\subsection{Une commande pour saisir un paragraphe (non fonctionnelle à 100\,\%)}
+
+La commande \texttt{ParagraphePapierSeyes} permet de saisir des commandes \textit{multilignes}, grâce à l'utilisation de \texttt{\textbackslash\textbackslash}.
+
+\begin{PresentationCode}{listing only}
+\ParagraphePapierSeyes[options]<alignement>(ajustement){texte}
+\end{PresentationCode}
+
+\faBomb{} Cet aspect \textit{multilignes} pourra sans doute être problématique pour un placement optimal, donc doit être utilisée avec précautions\ldots
+
+\smallskip
+
+Le premier argument, \textit{optionnel} et entre \texttt{[...]} propose :
+
+\begin{itemize}
+ \item la clé \Cle{Couleur} pour spécifier une couleur globale pour le texte ;\hfill~défaut : \Cle{black}
+ \item la clé \Cle{TaillePolice} pour spécifier la taille, en points, du texte ;\hfill~défaut : \Cle{1}
+ \item la clé \Cle{Espacement}, en points, pour que l'interligne soit OK ;\hfill~défaut : \Cle{22.792}
+ \item la clé \Cle{Largeur} pour la largeur (en cm) de la boîte dans laquelle le paragraphe sera placé.\hfill~défaut : \Cle{16.8}
+\end{itemize}
+
+Le deuxième argument, \textit{optionnel} et entre \texttt{<...>}, permet de spécifier l'alignement souhaité pour la ligne, parmi \Cle{left/center/right/justify}, et vaut \Cle{justify} par défaut.
+
+\smallskip
+
+Le troisième argument, \textit{optionnel} et entre \texttt{(...)}, permet de positionner le paragraphe avec un \textit{décalage fin} et \textit{relatif} de $(x\,;y)$, et il est fixé par défaut à \Cle{0,0}.
+
+\smallskip
+
+Le dernier argument, \textit{mandataire} et entre \texttt{\{...\}} est le paragraphe à placer, avec les options classiques en langage \TeX{}, et le passage à la ligne effectué par \texttt{\textbackslash\textbackslash} !
+
+\subsection{Exemple \og détaillé \fg}
+
+Un exemple \textit{détaillé}, avec le rendu en page suivante, avec quelques commentaires pour expliquer.
+
+\begin{PresentationCode}{listing only}
+\pagestyle{empty}
+
+\begin{PleinePageSeyes}[NumLignes]%numéro de lignes pour mieux "lire"
+ %entête
+ \LignePapierSeyes[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill LaTeX}
+ %titre
+ \LignePapierSeyes[Echelle=1.5,Ligne=2,Couleur=red]<center>{\underline{\cursive\bfseries Devoir 1}}
+ %cadre de notes
+ \CadreNoteSeyes{3}
+ %ligne pour un petit titre
+ \LignePapierSeyes[Echelle=1.5,Ligne=9,Couleur=ForestGreen]{\sffamily\underline{Exercice 1 :}}
+ %un paragraphe de quelques lignes
+ \ParagraphePapierSeyes[Ligne=10]{\cursive\lipsum[1]}
+ %un paragraphe avec des maths
+ \ParagraphePapierSeyes[Ligne=22]
+ {%
+ On essaye avec des maths $1+\frac12=\frac32$ en mode ligne avec des lignes assez longues pour voir
+ ce que ça peut donner\ldots Et une intégrale $\int_0^1 2x dx = 1$.\\On essaye en passant à la ligne !!!
+ }
+ %une ligne avec des maths
+ \LignePapierSeyes[Ligne=25]<center>{${\displaystyle\sum_{i=1}^{n} i=\displaystyle\frac{n(n+1)}{2}}$.}
+
+ %un environnement, avec ajustement manuel via (x,y)...
+ %pas fonctionnel à 100%
+ \LignePapierSeyes[Echelle=1.1,Ligne=27](-1.4,0.95)
+ {
+ \begin{align*}
+ \frac{d}{dx} \ln x &= \lim_{h\to 0} \frac{\ln(x+h) - \ln x}{h} \\
+ &= \ln e^{1/x} &&\text{How this follows is left as an exercise.}\\
+ &= \frac{1}{x} &&\text{Using the definition of ln as inverse function}
+ \end{align*}
+ }
+ %un paragraphe multiligne, avec police agrandie
+ \ParagraphePapierSeyes[TaillePolice=14,Ligne=30]
+ {BlablablaBlablabla.\\BlablablaBlablablaBlablablaBlablabla.}
+\end{PleinePageSeyes}
+\end{PresentationCode}
+
\newpage
-\part*{Historique}
+\pagestyle{empty}
+
+\begin{PleinePageSeyes}[NumLignes]%numéro de lignes pour mieux "lire"
+ %entête
+ \LignePapierSeyes[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill LaTeX}
+ %titre
+ \LignePapierSeyes[Echelle=1.5,Ligne=2,Couleur=red]<center>{\underline{\cursive\bfseries Devoir 1}}
+ %cadre de notes
+ \CadreNoteSeyes{3}
+ %ligne pour un petit titre
+ \LignePapierSeyes[Echelle=1.5,Ligne=9,Couleur=ForestGreen]{\sffamily\underline{Exercice 1 :}}
+ %un paragraphe de quelques lignes
+ \ParagraphePapierSeyes[Ligne=10]{\cursive\lipsum[1]}
+ %un paragraphe avec des maths
+ \ParagraphePapierSeyes[Ligne=22]
+ {%
+ On essaye avec des maths $1+\frac12=\frac32$ en mode ligne avec des lignes assez longues pour voir
+ ce que ça peut donner\ldots Et une intégrale $\int_0^1 2x dx = 1$.\\On essaye en passant à la ligne !!!
+ }
+ %une ligne avec des maths
+ \LignePapierSeyes[Ligne=25]<center>{${\displaystyle\sum_{i=1}^{n} i=\displaystyle\frac{n(n+1)}{2}}$.}
+
+ %un environnement, avec ajustement manuel via (x,y)...
+ %pas fonctionnel à 100%
+ \LignePapierSeyes[Echelle=1.1,Ligne=27](-1.4,0.95)
+ {
+ \begin{align*}
+ \frac{d}{dx} \ln x &= \lim_{h\to 0} \frac{\ln(x+h) - \ln x}{h} \\
+ &= \ln e^{1/x} &&\text{How this follows is left as an exercise.}\\
+ &= \frac{1}{x} &&\text{Using the definition of ln as inverse function}
+ \end{align*}
+ }
+ %un paragraphe multiligne, avec police aggrandie
+ \ParagraphePapierSeyes[TaillePolice=14,Ligne=30]
+ {BlablablaBlablabla.\\BlablablaBlablablaBlablablaBlablabla.}
+\end{PleinePageSeyes}
+
+\pagebreak
+
+\section{Pages type 5x5 et College Ruled}
+
+\subsection{Fonctionnement global}
+
+Les commandes, méthodes et remarques de la section précédente sur les grilles Seyes peuvent être adaptées pour les grilles de type 5x5 et College Ruled.
+
+\subsection{Commandes et environnements}
+
+Les commandes et environnements sont suffixées différemment, mais le reste est identique !
+
+\begin{PresentationCode}{listing only}
+\pagestyle{empty}
+
+\begin{PleinePageCinqCinq}[options]
+ \LignePapierCinqCinq[options]<alignement>(ajustement){texte}
+ \CadreNoteCinqCinq[hauteur]{numligne}
+ \ParagraphePapierCinqCinq[options]<alignement>(ajustement){texte}
+\end{PleinePageSeyes}
+\end{PresentationCode}
+
+\begin{PresentationCode}{listing only}
+\pagestyle{empty}
+
+\begin{PleinePageRuled}[options]
+ \LignePapierRuled[options]<alignement>(ajustement){texte}
+ \CadreNoteRuled[hauteur]{numligne}
+ \ParagraphePapierRuled[options]<alignement>(ajustement){texte}
+\end{PleinePageSeyes}
+\end{PresentationCode}
+
+\subsection{Exemples}
+
+Les exemples des pages suivantes ont été obtenus de la même manière que celui de la pleine page Seyes, il \textit{suffit} d'adapter les commandes et environnements avec le bon suffixe.
+
+\begin{PresentationCode}{listing only}
+\pagestyle{empty}
+
+\begin{PleinePageCinqCinq}[NumLignes]
+ \LignePapierCinqCinq[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill LaTeX}
+ \LignePapierCinqCinq[Echelle=1.25,Ligne=3,Couleur=red]<center>{\underline{\cursive\bfseries Devoir 2}}
+ \CadreNoteCinqCinq{4}
+ \LignePapierCinqCinq[Echelle=1.25,Ligne=9,Couleur=ForestGreen]{\sffamily\underline{Exercice 1 :}}
+ \ParagraphePapierCinqCinq[Ligne=11]{\cursive\lipsum[1]}
+ \ParagraphePapierCinqCinq[Ligne=30]
+ {%
+ On essaye avec des maths $1+\frac12=\frac32$ en mode ligne avec des lignes assez longues pour voir
+ ce que ça peut donner\ldots Et une intégrale $\int_0^1 2x dx = 1$.\\On essaye en passant à la ligne !!!
+ }
+\end{PleinePageCinqCinq}
+\end{PresentationCode}
+
+\begin{PresentationCode}{listing only}
+\pagestyle{empty}
+
+\begin{PleinePageRuled}[NumLignes]
+ \LignePapierRuled[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill LaTeX}
+ \LignePapierRuled[Echelle=1.25,Ligne=2,Couleur=red]<center>{\underline{\cursive\bfseries Devoir 3}}
+ \CadreNoteRuled{3}
+ \LignePapierRuled[Echelle=1.25,Ligne=8,Couleur=ForestGreen]{\sffamily\underline{Exercice 1 :}}
+ \ParagraphePapierRuled[Ligne=9]{\cursive\lipsum[1]}
+ \ParagraphePapierRuled[Ligne=22]
+ {%
+ On essaye avec des maths $1+\frac12=\frac32$ en mode ligne avec des lignes assez longues pour voir
+ ce que ça peut donner\ldots Et une intégrale $\int_0^1 2x dx = 1$.\\On essaye en passant à la ligne !!!
+ }
+\end{PleinePageRuled}
+\end{PresentationCode}
+
+\pagebreak
+
+\pagestyle{empty}
+
+\begin{PleinePageCinqCinq}[NumLignes]
+ \LignePapierCinqCinq[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill LaTeX}
+ \LignePapierCinqCinq[Echelle=1.25,Ligne=3,Couleur=red]<center>{\underline{\cursive\bfseries Devoir 2}}
+ \CadreNoteCinqCinq{4}
+ \LignePapierCinqCinq[Echelle=1.25,Ligne=9,Couleur=ForestGreen]{\sffamily\underline{Exercice 1 :}}
+ \ParagraphePapierCinqCinq[Ligne=11]{\cursive\lipsum[1]}
+ \ParagraphePapierCinqCinq[Ligne=30]
+ {%
+ On essaye avec des maths $1+\frac12=\frac32$ en mode ligne avec des lignes assez longues pour voir
+ ce que ça peut donner\ldots Et une intégrale $\int_0^1 2x dx = 1$.\\On essaye en passant à la ligne !!!
+ }
+\end{PleinePageCinqCinq}
+
+\pagebreak
+
+\pagestyle{empty}
+
+\begin{PleinePageRuled}[NumLignes]
+ \LignePapierRuled[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill LaTeX}
+ \LignePapierRuled[Echelle=1.25,Ligne=2,Couleur=red]<center>{\underline{\cursive\bfseries Devoir 3}}
+ \CadreNoteRuled{3}
+ \LignePapierRuled[Echelle=1.25,Ligne=8,Couleur=ForestGreen]{\sffamily\underline{Exercice 1 :}}
+ \ParagraphePapierRuled[Ligne=9]{\cursive\lipsum[1]}
+ \ParagraphePapierRuled[Ligne=22]
+ {%
+ On essaye avec des maths $1+\frac12=\frac32$ en mode ligne avec des lignes assez longues pour voir
+ ce que ça peut donner\ldots Et une intégrale $\int_0^1 2x dx = 1$.\\On essaye en passant à la ligne !!!
+ }
+\end{PleinePageRuled}
+
+\pagebreak
+
+\section{Historique}
+
+\verb|v0.1.1|~:~~~~Meilleure gestion des couleurs du quadrillage + Ajout pages complètes
\verb|v0.1.0|~:~~~~Version initiale
diff --git a/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty b/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty
index 096ea98be14..35924168857 100644
--- a/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty
+++ b/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty
@@ -2,10 +2,12 @@
% licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{WriteOnGrid}[2023/01/16 v0.1.0 package to write on grid lines]
+\ProvidesPackage{WriteOnGrid}[2023/01/20 v0.1.1 package to write on grid lines]
+% 0.1.1 Ajout de la couleur + modifications mineures + grille "ruled" + grilles pleine page !
% 0.1.0 Version initiale [fr] & [en]
%------Packages utiles
+\RequirePackage[table,svgnames]{xcolor}
\RequirePackage{tikz}
\RequirePackage{simplekv}
\RequirePackage{xstring}
@@ -26,37 +28,67 @@
\addtocounter{lgquadri}{1}
\useKVdefault[LigneQuadrill]
\setKV[LigneQuadrill]{#1}
- \node[text width=\fpeval{\ValeurCarreau*\QuadNbCol-\ValeurCarreau*\useKV[Quadrill]{Marge}}cm,align=#2,scale=\QuadEchelle,anchor=base west,inner sep={\useKV[LigneQuadrill]{Sep}}] at ($({\ValeurCarreau*\useKV[Quadrill]{Marge}+\ValeurCarreau*\useKV[LigneQuadrill]{DecalH}},{-\ValeurCarreau*\thelgquadri})+(0,\useKV[LigneQuadrill]{DecalV})$) {\strut #3} ;
+ \node[text width=\fpeval{\ValeurCarreau*\QuadNbCol/\QuadEchelle-\ValeurCarreau*\useKV[Quadrill]{Marge}/\QuadEchelle}cm,align=#2,scale=\QuadEchelle,anchor=base west,inner sep={\useKV[LigneQuadrill]{Sep}}] at ($({\ValeurCarreau*\useKV[Quadrill]{Marge}+\ValeurCarreau*\useKV[LigneQuadrill]{DecalH}},{-\ValeurCarreau*\thelgquadri})+(0.025,\useKV[LigneQuadrill]{DecalV})$) {\strut #3} ;
}
-\defKV[Quadrill]{NbCarreaux=\xdef\QuadNbCar{#1},Elargir=\xdef\QuadElar{#1}}%déf des clés
-\setKVdefault[Quadrill]{NbCarreaux=17x5,Unite=1,Marge=0,Elargir=0,Cadre=false,Seyes=false}%valeurs par défaut (nbc x nbl)
+\defKV[Quadrill]{%
+ Grille=\xdef\QuadType{#1},%
+ NbCarreaux=\xdef\QuadNbCar{#1},%
+ Elargir=\xdef\QuadElar{#1},%
+ CouleurBarreSeyes=\xdef\QuadCoulSeyes{#1}
+ }%déf des clés
+\setKVdefault[Quadrill]{%
+ NbCarreaux=17x5,%
+ Unite=1,%
+ Marge=0,%
+ Elargir=0,%
+ Cadre=false,%
+ Grille=5x5,%
+ CouleurBarreSeyes={red!75}
+ }
-\NewDocumentEnvironment{EnvQuadrillage}{ O{} D<>{gray} }%créer le quadrillage
+\NewDocumentEnvironment{EnvQuadrillage}{ O{} D<>{lightgray!50/lightgray!25} }%créer le quadrillage, couleurs ?
{%
\setcounter{lgquadri}{0}%on réinitialise les lignes
\useKVdefault[Quadrill]%on met les clés par défaut
\setKV[Quadrill]{#1}%on lit les clés
+ \IfSubStr{#2}{/}%on récupère les couleurs
+ {\StrCut{#2}{/}{\QuadCoulA}{\QuadCoulB}}
+ {\def\QuadCoulA{#2}\def\QuadCoulB{#2}}%
\StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}%
- \ifboolKV[Quadrill]{Seyes}%seyes ou 5x5
+ \IfStrEq{\QuadType}{Seyes}%les types de quadrillages
{\xdef\ValeurCarreau{0.8}}%
+ {}%
+ \IfStrEq{\QuadType}{5x5}%
{\xdef\ValeurCarreau{0.5}}%
+ {}%
+ \IfStrEq{\QuadType}{Ruled}%
+ {\xdef\ValeurCarreau{0.9}}%
+ {}%
\IfSubStr{\QuadElar}{/}%on récupère les élargissements G et D
{\StrCut{\QuadElar}{/}{\QuadElarG}{\QuadElarD}}%
{\def\QuadElarG{\QuadElar}\def\QuadElarD{\QuadElar}}%
- %\begin{tikzpicture}[xscale={\useKV[Quadrill]{Unite}},yscale={\useKV[Quadrill]{Unite}},trim left={(0,0)},trim right={({\QuadNbCol},0)}]
\begin{tikzpicture}[xscale={\useKV[Quadrill]{Unite}},yscale={\useKV[Quadrill]{Unite}}]
\useasboundingbox (0,0) rectangle ({\ValeurCarreau*\QuadNbCol},{-\ValeurCarreau*\QuadNbLig}) ;%on fixe la grille de base, avant élargissement éventuel
- \ifboolKV[Quadrill]{Seyes}%seyes ou 5x5
+ \IfStrEq{\QuadType}{Seyes}%
{%
- \draw[xstep=0.8,ystep=0.2,thin,#2!50] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
- \draw[xstep=0.8,ystep=0.8,#2!85] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
-
+ \draw[xstep=0.8,ystep=0.2,thin,\QuadCoulB] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
+ \draw[xstep=0.8,ystep=0.8,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
+ \draw[thick,\QuadCoulSeyes] ({\ValeurCarreau*\useKV[Quadrill]{Marge}},0) -- ({\ValeurCarreau*\useKV[Quadrill]{Marge}},{-\ValeurCarreau*\QuadNbLig}) ;%barre Seyes
}%
+ {}%
+ \IfStrEq{\QuadType}{5x5}%
{%
- \draw[xstep=0.5,ystep=0.5,thin,#2!50] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille 5x5
+ \draw[xstep=0.5,ystep=0.5,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille 5x5
}%
-
+ {}%
+ \IfStrEq{\QuadType}{Ruled}%
+ {%
+ \foreach \LLL in {0,1,...,\QuadNbLig} {\draw[,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},{-\LLL*\ValeurCarreau}) -- ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\LLL}) ; }
+ %\draw[xstep={\ValeurCarreau*\QuadNbCol},ystep=0.9,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille college
+ \draw[thin,\QuadCoulA] ({\ValeurCarreau*\useKV[Quadrill]{Marge}},0) -- ({\ValeurCarreau*\useKV[Quadrill]{Marge}},{-\ValeurCarreau*\QuadNbLig}) ;%barre college
+ }%
+ {}%
\ifboolKV[Quadrill]{Cadre}%cadre pour visualiser la "marge" (officielle)
{\draw[thick] (0,0) rectangle ({\ValeurCarreau*\QuadNbCol},{-\ValeurCarreau*\QuadNbLig}) ;}%
{}%
@@ -75,37 +107,54 @@
\addtocounter{lgquadri}{1}
\useKVdefault[LineQuadril]
\setKV[LineQuadril]{#1}
- \node[text width=\fpeval{\ValeurCarreau*\QuadNbCol-\ValeurCarreau*\useKV[Quadril]{Margin}}cm,align=#2,scale=\QuadEchelle,anchor=base west,inner sep={\useKV[LineQuadril]{Sep}}] at ($({\ValeurCarreau*\useKV[Quadril]{Margin}+\ValeurCarreau*\useKV[LineQuadril]{OffsetH}},{-\ValeurCarreau*\thelgquadri})+(0,\useKV[LineQuadril]{OffsetV})$) {\strut #3} ;
+ \node[text width=\fpeval{\ValeurCarreau*\QuadNbCol/\QuadEchelle-\ValeurCarreau*\useKV[Quadrill]{Marge}/\QuadEchelle}cm,align=#2,scale=\QuadEchelle,anchor=base west,inner sep={\useKV[LineQuadril]{Sep}}] at ($({\ValeurCarreau*\useKV[Quadril]{Margin}+\ValeurCarreau*\useKV[LineQuadril]{OffsetH}},{-\ValeurCarreau*\thelgquadri})+(0.025,\useKV[LineQuadril]{OffsetV})$) {\strut #3} ;
}
-\defKV[Quadril]{NumSquares=\xdef\QuadNbCar{#1},Enlarge=\xdef\QuadElar{#1}}%déf des clés
-\setKVdefault[Quadril]{NumSquares=17x5,Unit=1,Margin=0,Enlarge=0,Border=false,Seyes=false}%valeurs par défaut
+\defKV[Quadril]{Grid=\xdef\QuadType{#1},NumSquares=\xdef\QuadNbCar{#1},Enlarge=\xdef\QuadElar{#1}}%déf des clés
+\setKVdefault[Quadril]{Grid=5x5,NumSquares=17x5,Unit=1,Margin=0,Enlarge=0,Border=false}%valeurs par défaut
-\NewDocumentEnvironment{EnvGrid}{ O{} D<>{gray} }%créer le quadrillage
+\NewDocumentEnvironment{EnvGrid}{ O{} D<>{lightgray!50/lightgray!25} }%créer le quadrillage
{%
\setcounter{lgquadri}{0}%on réinitialise les lignes
\useKVdefault[Quadril]%on met les clés par défaut
\setKV[Quadril]{#1}%on lit les clés
+ \IfSubStr{#2}{/}%on récupère les couleurs
+ {\StrCut{#2}{/}{\QuadCoulA}{\QuadCoulB}}
+ {\def\QuadCoulA{#2}\def\QuadCoulB{#2}}%
\StrCut{\QuadNbCar}{x}{\QuadNbCol}{\QuadNbLig}%
- \ifboolKV[Quadril]{Seyes}%seyes ou 5x5
+ \IfStrEq{\QuadType}{Seyes}%les types de quadrillages
{\xdef\ValeurCarreau{0.8}}%
+ {}%
+ \IfStrEq{\QuadType}{5x5}%
{\xdef\ValeurCarreau{0.5}}%
+ {}%
+ \IfStrEq{\QuadType}{Ruled}%
+ {\xdef\ValeurCarreau{0.9}}%
+ {}%
\IfSubStr{\QuadElar}{/}%on récupère les élargissements G et D
{\StrCut{\QuadElar}{/}{\QuadElarG}{\QuadElarD}}%
{\def\QuadElarG{\QuadElar}\def\QuadElarD{\QuadElar}}%
- %\begin{tikzpicture}[xscale={\useKV[Quadril]{Unit}},yscale={\useKV[Quadril]{Unit}},trim left={(0,0)},trim right={({\QuadNbCol},0)}]
- \begin{tikzpicture}[xscale={\useKV[Quadrill]{Unite}},yscale={\useKV[Quadrill]{Unite}}]
+ \begin{tikzpicture}[xscale={\useKV[Quadril]{Unit}},yscale={\useKV[Quadril]{Unit}}]
\useasboundingbox (0,0) rectangle ({\ValeurCarreau*\QuadNbCol},{-\ValeurCarreau*\QuadNbLig}) ;%on fixe la grille de base, avant élargissement éventuel
- \ifboolKV[Quadril]{Seyes}%seyes ou 5x5
+ \IfStrEq{\QuadType}{Seyes}%
{%
- \draw[xstep=0.8,ystep=0.2,thin,#2!75] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
- \draw[xstep=0.8,ystep=0.8,#2] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
-
+ \draw[xstep=0.8,ystep=0.2,thin,\QuadCoulB] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
+ \draw[xstep=0.8,ystep=0.8,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille seyes
+ \draw[thick,\QuadCoulSeyes] ({\ValeurCarreau*\useKV[Quadril]{Margin}},0) -- ({\ValeurCarreau*\useKV[Quadril]{Margin}},{-\ValeurCarreau*\QuadNbLig}) ;%barre Seyes
}%
+ {}%
+ \IfStrEq{\QuadType}{5x5}%
{%
- \draw[xstep=0.5,ystep=0.5,thin,#2!75] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille 5x5
+ \draw[xstep=0.5,ystep=0.5,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille 5x5
}%
-
+ {}%
+ \IfStrEq{\QuadType}{Ruled}%
+ {%
+ \foreach \LLL in {0,1,...,\QuadNbLig} {\draw[,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},{-\LLL*\ValeurCarreau}) -- ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\LLL}) ; }
+ %\draw[xstep={\ValeurCarreau*\QuadNbCol},ystep=0.9,thin,\QuadCoulA] ({-\ValeurCarreau*\QuadElarG},0) grid ({\ValeurCarreau*\QuadNbCol+\ValeurCarreau*\QuadElarD},{-\ValeurCarreau*\QuadNbLig}) ;%grille college
+ \draw[thin,\QuadCoulA] ({\ValeurCarreau*\useKV[Quadril]{Margin}},0) -- ({\ValeurCarreau*\useKV[Quadril]{Margin}},{-\ValeurCarreau*\QuadNbLig}) ;%barre college
+ }%
+ {}%
\ifboolKV[Quadril]{Border}%cadre pour la "marge"
{\draw[thick] (0,0) rectangle ({\ValeurCarreau*\QuadNbCol},{-\ValeurCarreau*\QuadNbLig}) ;}%
{}%
@@ -113,4 +162,252 @@
{%
\end{tikzpicture}%
}%
+
+%------page entière seyes
+\defKV[SeyesFull]{%
+ CouleurP=\xdef\SeyesFullCoulP{#1},%
+ CouleurS=\xdef\SeyesFullCoulS{#1},%
+ CouleurMarge=\xdef\SeyesFullCoulM{#1}
+}
+\setKVdefault[SeyesFull]{%
+ CouleurP=Plum!66,%
+ CouleurS=LightSteelBlue!33,%
+ CouleurMarge=red!75,
+ NumLignes=false
+}
+
+\NewDocumentEnvironment{PleinePageSeyes}{ O{} }%semble OK ^^
+{
+ \useKVdefault[SeyesFull]
+ \setKV[SeyesFull]{#1}
+ \begin{tikzpicture}[remember picture,overlay,x=1cm,y=1cm]
+ %grille secondaire
+ \foreach \L in {0,1,...,125} {\draw[\SeyesFullCoulS] ($(current page.north west)+(0,{-2.4-\L*0.2})$)--++(21,0) ;}
+ %grille principale
+ \foreach \C in {1,2,...,21} {\draw[\SeyesFullCoulP] ($(current page.north west)+({4+0.8*\C},0)$)--($(current page.south west)+({4+0.8*\C},0)$) ;}
+ \foreach \L in {0,1,...,30} {\draw[\SeyesFullCoulP] ($(current page.north west)+(0,{-3-\L*0.8})$)--++(21,0) ;}
+ %marge
+ \draw[\SeyesFullCoulM,thick] ($(current page.north west)+(4,0)$)--($(current page.south west)+(4,0)$) ;
+ \coordinate (SeyesOrigine) at ($(current page.north west)+(4,-3)$) ;
+ \ifboolKV[SeyesFull]{NumLignes}%
+ {%
+ \foreach \lig in {1,2,...,31} {\node[gray,inner sep=0pt,anchor=base east] at ($(SeyesOrigine)+(-0.2,{-0.8*(\lig-1)})$) {\scriptsize\sffamily \lig};}
+ }%
+ {}
+}
+{
+ \end{tikzpicture}%
+}
+
+\newcommand\CadreNoteSeyes[2][3]{%on précise la {ligne de début} + [hauteur]
+ %cadre de note
+ \draw[thick] ($(SeyesOrigine)+(0,{(-#2+1)*0.8})$) --++ ({17},{0}) ;
+ \draw[thick] ($(SeyesOrigine)+(0,{(-#2+1)*0.8})$) --++ ({0},{-#1*0.8}) ;
+ \draw[thick] ($(SeyesOrigine)+(0,{(-#2+1-#1)*0.8})$) --++ ({17},{0}) ;
+ \draw[thick] ($(SeyesOrigine)+(0,{(-#2+1)*0.8})$) rectangle++ ({#1.*0.8},{-#1*0.8}) ;
+ \draw[thick] ($(SeyesOrigine)+(0,{(-#2+1-#1)*0.8})$) --++ ({#1.*0.8},{#1*0.8}) ;
+}
+
+\defKV[SeyesLigne]{%
+ Couleur=\xdef\SeyesLigneCouleur{#1},%
+ Echelle=\xdef\SeyesLigneEchelle{#1},%
+ Ligne=\xdef\SeyesLigne{#1},%
+ Largeur=\xdef\SeyesLigneLarg{#1}
+}
+\setKVdefault[SeyesLigne]{%
+ Couleur=black,%
+ Ligne=1,%
+ Echelle=1,%
+ Largeur=16.5
+}
+
+\NewDocumentCommand\LignePapierSeyes{ O{} D<>{left} D(){0,0} m }{%
+ \useKVdefault[SeyesLigne]
+ \setKV[SeyesLigne]{#1}
+ \node[\SeyesLigneCouleur,text width=\fpeval{\SeyesLigneLarg/\SeyesLigneEchelle}cm,align=#2,inner sep=0pt,anchor=base west,scale=\SeyesLigneEchelle] at ($(SeyesOrigine)+(0.025,{-(\SeyesLigne-1)*0.8})+(#3)$) {#4} ;
+ }
+
+\defKV[SeyesPar]{%
+ Couleur=\xdef\SeyesParCouleur{#1},%
+ TaillePolice=\xdef\SeyesParEchelle{#1},%
+ Espacement=\xdef\SeyesParBase{#1},%
+ Ligne=\xdef\SeyesPar{#1},%
+ Largeur=\xdef\SeyesParLarg{#1}
+}
+\setKVdefault[SeyesPar]{%
+ Couleur=black,%
+ Ligne=1,%
+ TaillePolice=11,%
+ Espacement=22.792,%
+ Largeur=16.5
+}
+
+\NewDocumentCommand\ParagraphePapierSeyes{ O{} D<>{justify} D(){0,0} m }{%
+ \useKVdefault[SeyesPar]
+ \setKV[SeyesPar]{#1}
+ \node[\SeyesParCouleur,text width=\SeyesParLarg cm,align=#2,inner sep=0pt,anchor=base west,font=\fontsize{\SeyesParEchelle}{\SeyesParBase}\selectfont] at ($(SeyesOrigine)+(0.025,{-(\SeyesPar-1)*0.8})+(#3)$) {#4} ;
+}
+
+%------page entière 5x5
+\defKV[CxCFull]{%
+ Couleur=\xdef\CCFullCoul{#1},%
+ CouleurMarge=\xdef\CCFullCoulM{#1}
+}
+\setKVdefault[CxCFull]{%
+ Couleur=lightgray!50,%
+ CouleurMarge=gray,
+ NumLignes=false
+}
+
+\NewDocumentEnvironment{PleinePageCinqCinq}{ O{} }%semble OK ^^
+{
+ \useKVdefault[CxCFull]
+ \setKV[CxCFull]{#1}
+ \begin{tikzpicture}[remember picture,overlay,x=1cm,y=1cm]
+ %lignes horizontales
+ \foreach \L in {0,1,...,58} {\draw[\CCFullCoul] ($(current page.north west)+(0,{-0.3-\L*0.5})$)--++(21,0) ;}
+ %lignes verticales
+ \foreach \C in {0,1,...,41} {\draw[\CCFullCoul] ($(current page.north west)+({0.2+0.5*\C},0)$)--($(current page.south west)+({0.2+0.5*\C},0)$) ;}
+ %marge
+ \draw[\CCFullCoulM,thick] ($(current page.north west)+(1.7,0)$)--($(current page.south west)+(1.7,0)$) ;
+ \coordinate (CinqCinqOrigine) at ($(current page.north west)+(1.7,-1.3)$) ;
+ \ifboolKV[CxCFull]{NumLignes}%
+ {%
+ \foreach \lig in {1,2,...,57} {\node[gray,inner sep=0pt,anchor=base east] at ($(CinqCinqOrigine)+(-0.2,{-0.5*(\lig-1)})$) {\tiny\sffamily \lig};}
+ }%
+ {}
+ }
+ {
+ \end{tikzpicture}%
+}
+
+\newcommand\CadreNoteCinqCinq[2][3]{%on précise la {ligne de début} + [hauteur]
+ %cadre de note
+ \draw[thick] ($(CinqCinqOrigine)+(0,{(-#2+1)*0.5})$) --++ ({19.3},{0}) ;
+ \draw[thick] ($(CinqCinqOrigine)+(0,{(-#2+1)*0.5})$) --++ ({0},{-#1*0.5}) ;
+ \draw[thick] ($(CinqCinqOrigine)+(0,{(-#2+1-#1)*0.5})$) --++ ({19.3},{0}) ;
+ \draw[thick] ($(CinqCinqOrigine)+(0,{(-#2+1)*0.5})$) rectangle++ ({#1.*0.5},{-#1*0.5}) ;
+ \draw[thick] ($(CinqCinqOrigine)+(0,{(-#2+1-#1)*0.5})$) --++ ({#1.*0.5},{#1*0.5}) ;
+}
+
+\defKV[CCLigne]{%
+ Couleur=\xdef\CCLigneCouleur{#1},%
+ Echelle=\xdef\CCLigneEchelle{#1},%
+ Ligne=\xdef\CCLigne{#1},%
+ Largeur=\xdef\CCLigneLarg{#1}
+}
+\setKVdefault[CCLigne]{%
+ Couleur=black,%
+ Ligne=1,%
+ Echelle=1,%
+ Largeur=18.7
+}
+
+\NewDocumentCommand\LignePapierCinqCinq{ O{} D<>{left} D(){0,0} m }{%
+ \useKVdefault[CCLigne]
+ \setKV[CCLigne]{#1}
+ \node[\CCLigneCouleur,text width=\fpeval{\CCLigneLarg/\CCLigneEchelle}cm,align=#2,inner sep=0pt,anchor=base west,scale=\CCLigneEchelle] at ($(CinqCinqOrigine)+(0.025,{-(\CCLigne-1)*0.5})+(#3)$) {#4} ;
+}
+
+\defKV[CCPar]{%
+ Couleur=\xdef\CCParCouleur{#1},%
+ TaillePolice=\xdef\CCParEchelle{#1},%
+ Espacement=\xdef\CCParBase{#1},%
+ Ligne=\xdef\CCPar{#1},%
+ Largeur=\xdef\CCParLarg{#1}
+}
+\setKVdefault[CCPar]{%
+ Couleur=black,%
+ Ligne=1,%
+ TaillePolice=11,%
+ Espacement=28.5,%
+ Largeur=18.7
+}
+
+\NewDocumentCommand\ParagraphePapierCinqCinq{ O{} D<>{justify} D(){0,0} m }{%
+ \useKVdefault[CCPar]
+ \setKV[CCPar]{#1}
+ \node[\CCParCouleur,text width=\CCParLarg cm,align=#2,inner sep=0pt,anchor=base west,font=\fontsize{\CCParEchelle}{\CCParBase}\selectfont] at ($(CinqCinqOrigine)+(0.025,{-(\CCPar-1)*0.5})+(#3)$) {#4} ;
+}
+
+%------page entière ruled
+\defKV[RuledFull]{%
+ Couleur=\xdef\RuledFullCoul{#1}
+}
+\setKVdefault[RuledFull]{%
+ Couleur=lightgray,%
+ NumLignes=false
+}
+
+\NewDocumentEnvironment{PleinePageRuled}{ O{} }%semble OK ^^
+{
+ \useKVdefault[RuledFull]
+ \setKV[RuledFull]{#1}
+ \begin{tikzpicture}[remember picture,overlay,x=1cm,y=1cm]
+ %lignes horizontales
+ \foreach \L in {1.5,2.4,...,27.6} {\draw[\RuledFullCoul] ($(current page.north west)+(0,{-\L})$)--++(21,0) ;}
+ %lignes verticales
+ \foreach \C in {3,18} {\draw[\RuledFullCoul] ($(current page.north west)+({\C},0)$)--($(current page.south west)+({\C},0)$) ;}
+ %origine
+ \coordinate (RuledOrigine) at ($(current page.north west)+(3,-1.5)$) ;
+ \ifboolKV[RuledFull]{NumLignes}%
+ {%
+ \foreach \lig in {1,2,...,30} {\node[gray,inner sep=0pt,anchor=base east] at ($(RuledOrigine)+(-0.2,{-0.9*(\lig-1)})$) {\tiny\sffamily \lig};}
+ }%
+ {}
+ }
+ {
+ \end{tikzpicture}%
+}
+
+\newcommand\CadreNoteRuled[2][3]{%on précise la {ligne de début} + [hauteur]
+ %cadre de note
+ \draw[thick] ($(RuledOrigine)+(0,{(-#2+1)*0.9})$) --++ ({15},{0}) ;
+ \draw[thick] ($(RuledOrigine)+(0,{(-#2+1)*0.9})$) --++ ({0},{-#1*0.9}) ;
+ \draw[thick] ($(RuledOrigine)+(15,{(-#2+1)*0.9})$) --++ ({0},{-#1*0.9}) ;
+ \draw[thick] ($(RuledOrigine)+(0,{(-#2+1-#1)*0.9})$) --++ ({15},{0}) ;
+ \draw[thick] ($(RuledOrigine)+(0,{(-#2+1)*0.9})$) rectangle++ ({#1.*0.9},{-#1*0.9}) ;
+ \draw[thick] ($(RuledOrigine)+(0,{(-#2+1-#1)*0.9})$) --++ ({#1.*0.9},{#1*0.9}) ;
+}
+
+\defKV[RuledLigne]{%
+ Couleur=\xdef\RuledLigneCouleur{#1},%
+ Echelle=\xdef\RuledLigneEchelle{#1},%
+ Ligne=\xdef\RuledLigne{#1},%
+ Largeur=\xdef\RuledLigneLarg{#1}
+}
+\setKVdefault[RuledLigne]{%
+ Couleur=black,%
+ Ligne=1,%
+ Echelle=1,%
+ Largeur=14.75
+}
+
+\NewDocumentCommand\LignePapierRuled{ O{} D<>{left} D(){0,0} m }{%
+ \useKVdefault[RuledLigne]
+ \setKV[RuledLigne]{#1}
+ \node[\RuledLigneCouleur,text width=\fpeval{\RuledLigneLarg/\RuledLigneEchelle}cm,align=#2,inner sep=0pt,anchor=base west,scale=\RuledLigneEchelle] at ($(RuledOrigine)+(0.025,{-(\RuledLigne-1)*0.9})+(#3)$) {#4} ;
+}
+
+\defKV[RuledPar]{%
+ Couleur=\xdef\RuledParCouleur{#1},%
+ TaillePolice=\xdef\RuledParEchelle{#1},%
+ Espacement=\xdef\RuledParBase{#1},%
+ Ligne=\xdef\RuledPar{#1},%
+ Largeur=\xdef\RuledParLarg{#1}
+}
+\setKVdefault[RuledPar]{%
+ Couleur=black,%
+ Ligne=1,%
+ TaillePolice=11,%
+ Espacement=25.641,%
+ Largeur=14.75
+}
+
+\NewDocumentCommand\ParagraphePapierRuled{ O{} D<>{justify} D(){0,0} m }{%
+ \useKVdefault[RuledPar]
+ \setKV[RuledPar]{#1}
+ \node[\RuledParCouleur,text width=\RuledParLarg cm,align=#2,inner sep=0pt,anchor=base west,font=\fontsize{\RuledParEchelle}{\RuledParBase}\selectfont] at ($(RuledOrigine)+(0.025,{-(\RuledPar-1)*0.9})+(#3)$) {#4} ;
+}
+
\endinput \ No newline at end of file