Pàgines

dissabte, 27 de juliol del 2013

Mots encreuats

Graelles de mots encreuats professionals amb cwpuzzle

Un paquet que en podríem dir clàssic de LaTeX, és del 1996 tot i que es va actualitzant, crea graelles professionals per a mots encreuats. Es tracta de cwpuzzle, un paquet que pot treballar en conjunció amb un programa i estalviar feina de picar codi. Però com que ara només volem veure les possibilitats del paquet, descriurem només quines característiques té el programa.

Cridem el paquet amb \usepackage{cwpuzzle} i aquest ens crea un nou entorns, anomenat Puzzle, amb dos paràmetres: el nombre de files i el de columnes.
\begin{Puzzle}{files}{cols}
...
\end{Puzzle} 
Una casella comença i acaba amb la barra vertical i el contingut pot ser:

  • buit, que s’indica amb els dos signes: 
  • un quadre negre, que s’indica amb l’asterisc * 
  • una lletra, que se sol posar en majúscula si cal 
  • el número per saber la definició, que es posa entre claudàtors: [] 


Per marcar el final d’una fila es posa un punt.

Vegem-ne un exemple:
\begin{Puzzle}{5}{5}%
| [1]O |[2]C |[3]E |[4]L |[5]L |.
| [2]B |* | D | I | A |.
| [3]R | I | U |* | B |.
| [4]I | * | C | O | I |.
| [5]R | E | A |* | L |.
\end{Puzzle}
 
Per defecte el paquet entén que es planteja el passatemps (\PuzzleUnsolved) i no mostrarà les solucions. Per fer que es mostrin hem de dir-ho amb el comandament \Puzzlesolution.

Les definicions o pistes es donen des d’un altre entorn, l’entorn PuzzleClues que té un paràmetre: el nom del sentit (horitzontal o Vertical) amb què s’han de llegir les definicions. Cada ítem de l’entorn, anomenat \Clue, admet 3 paràmetres:

  • el número, 
  • la paraula a definir i 
  • la definició. 

Estudiem aquest exemple:
\begin{PuzzleClues}{\textbf{Horitzontal: }}%
 \Clue{1}{OCELL}{Au.}%
 \Clue{2}{B. Dia}{Bor. Part de la setmana}%
 .....
\end{PuzzleClues}% 
El paquet permet un alt grau de personalització pel que fa al format de les lletres i del números, però potser el que és més interessant és la possibilitat de canviar els quadrets negres. El paquet els defineix així:
 \newcommand\PuzzleBlackBox{\rule{\PuzzleUnitlength}{\PuzzleUnitlength}} 
Però nosaltres els podem redefinir de diferents maneres: amb un quadret negre més petit i un marc en blanc:
\renewcommand\PuzzleBlackBox{\rule{0.5\PuzzleUnitlength}{0.5\PuzzleUnitlength}} 
amb dos marcs un dins l’altre:
 \renewcommand\PuzzleBlackBox{\framebox(0.75,0.75){% \framebox(0.5,0.5){% \framebox(0.25,0.25)}}} 
Amb una mica de hacking al fitxer d’estil podem fer que aquest "necessiti" els paquets xcolor per poder treballar amb quadres de color, i el graphics per incloure imatges. Per això editem el fitxer cwpuzzle.sty i, al principi de tot, després del comandament d’inici
\ProvidesPackage{cwpuzzle} 
hi afegim aquestes dues línies:
\RequirePackage{xcolor}
\RequirePackage{graphicx} 
Ara podem definir els quadrets de color al nostre document simplement redefinint el comandament:
\renewcommand\PuzzleBlackBox{\color{olive}\rule{\PuzzleUnitlength}{\PuzzleUnitlength}} 
o canviant olive per qualsevol altre nom de color que permet el paquet xcolor.

També podem fer que als quadrets, en lloc de tenir un color sòlid, hi aparegui una imatge. Ho aconseguirem redefinint el comandament:
\renewcommand\PuzzleBlackBox{\includegraphics[scale=.75]{notify.png}} 
El paquet és molt potent i dóna uns resultats espectaculars, val la pena aprofitar les diferents possibilitats que brinda i que es poden veure al document PDF adjunt. El codi es pot estudiar al fitxer font tex.

+info: documentació del paquet

Publicat per primera vegada el dissabte 10 de novembre de 2007.

Cap comentari:

Publica un comentari a l'entrada