- Questo topic ha 21 risposte, 8 partecipanti ed è stato aggiornato l'ultima volta 10 anni, 6 mesi fa da
letteracdp.
-
CreatoreTopic
-
2 Febbraio 2016 alle 13:41 #104826::
Salve a tutti. So che è una richiesta particolare , e non semplice (dato che sul web non ho trovato soluzioni), quindi chiedo a voi!
Volevo inserire in una pagina di un documento l’effetto matrix (quello del film ,dove i numeri / lettere / simboli giapponesi) cadono giù a cascata. Ovviamente lungi dal volere un’animazione, anche perchè nel pdf non si potrebbe attivare (specie quando si stampa), volevo capire questa cosa fosse fattibile e in che termini.La soluzione banale sarebbe scaricare un’immagine dal web e inserirla come allegato, ma farla con del codice forse sarebbe più stimolante.
Saluti
[attachment=1513]Matrix_code.png[/attachment]
Attachments:
You must be logged in to view attached files. -
CreatoreTopic
-
AutoreRisposte
-
-
2 Febbraio 2016 alle 21:57 #104827::
golden_boy” post=104890Salve a tutti. So che è una richiesta particolare , e non semplice (dato che sul web non ho trovato soluzioni), quindi chiedo a voi!
Volevo inserire in una pagina di un documento l’effetto matrix (quello del film ,dove i numeri / lettere / simboli giapponesi) cadono giù a cascata. Ovviamente lungi dal volere un’animazione, anche perchè nel pdf non si potrebbe attivare (specie quando si stampa), volevo capire questa cosa fosse fattibile e in che termini.La soluzione banale sarebbe scaricare un’immagine dal web e inserirla come allegato, ma farla con del codice forse sarebbe più stimolante.
Saluti
[attachment=1513]Matrix_code.png[/attachment]Puoi cominciare tu con un esempio di codice?
Razionalmente, serve un elenco di possibili strade per poter arrivare alla soluzione.
Ciao.
R.
-
4 Febbraio 2016 alle 14:19 #104828::
Premetto di non essere troppo contento del risultato finale ma spero che almeno l’approccio possa essere di ispirazione per qualcuno.[attachment=1515]matrix.pdf[/attachment]
Ho deciso di utlizzare il pacchetto tikz per poter sfruttare le varie funzioni di generatori di numeri pseudo-random, il codice si sviluppa in questo modo:
- Decido a priori il numero di righe e di colonne che l’immagine dovra’ contenere (dichiaro \nrow e \ncol)
- Dichiaro una lista di simboli, numeri e spazi vuoti da cui il codice attingera’ con il comando \pgfmathdeclarerandomlist. Per i simboli non ho perso troppo tempo e ho utilizzato il pacchetto CJKutf8, altre vie potrebbero dare risultati migliori
- Per ogni colonna genero un numero intero random ma all’interno di un certo range con il comando \pgfmathrandominteger{\nomemacro}{
}{ } (in questo caso deve essere minore di \nrow); il numero random (che ho chiamato \codelength) verra’ utilizzato per generare una sequenza codice tipo “matrix” di lunghezza pari a “\codelength”. A questo punto possono succedere due cose: 1) la sequenza di codice e’ formata da simboli presi dalla lista generata precedentemente; 2) la sequenza e’ formata da caratteri “vuoti”. Avere una o l’altra casistica e’ di nuovo di natura random. Genero un altro intero con il comando \pgfmathrandominteger (a quanto pare a latex non piacciono i numeri con la virgola, o quantomeno non sono riuscito a fare questo con numeri non interi), dopodiche’ faccio un test (per questo uso il pacchetto ifthen): se il numero generato e’ minore di una certa soglia la sequenza sara’ di caratteri vuoti o viceversa. Quel che rimane dei caratteri della colonna (ricordate che \codelength deve essere minore di \nrow) saranno simboli se fino a quel punto sono stati inseriti caratteri vuoti oppure il contrario
`\documentclass[tikz]{standalone}
\usepackage{ifthen}
\usepackage{CJKutf8}
%Some (perhaps) Japanese symbols: このリストは、よくある質問とその答を集め、役に立つようにし
%たものです。の構造は、以前のものと比べて大幅に変
\usetikzlibrary{backgrounds}
\definecolor{greenB}{RGB}{21,138,12} %Color of “background” letters
\definecolor{greenH}{RGB}{23,247,55} %Color of “highlighted” letters
\def\nrow{30} %number of rows
\def\ncol{40} %number of columns
\begin{document}
\begin{tikzpicture}[scale=.5,
show background rectangle,
background rectangle/.style={fill=black},
color=greenB,font=\large]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%List of symbols to choose from:
\pgfmathdeclarerandomlist{letters}{%
{\begin{CJK}{UTF8}{min} リ \end{CJK}}
{\begin{CJK}{UTF8}{min} ス \end{CJK}}
{\begin{CJK}{UTF8}{min} ト \end{CJK}}
{\begin{CJK}{UTF8}{min} は \end{CJK}}
{\begin{CJK}{UTF8}{min} 集 \end{CJK}}
{\begin{CJK}{UTF8}{min} よ \end{CJK}}
{\begin{CJK}{UTF8}{min} く \end{CJK}}
{\begin{CJK}{UTF8}{min} あ \end{CJK}}
{\begin{CJK}{UTF8}{min} る \end{CJK}}
{\begin{CJK}{UTF8}{min} 質 \end{CJK}}
{\begin{CJK}{UTF8}{min} 問 \end{CJK}}
{\begin{CJK}{UTF8}{min} と \end{CJK}}
{\begin{CJK}{UTF8}{min} そ \end{CJK}}
{\begin{CJK}{UTF8}{min} の \end{CJK}}
{\begin{CJK}{UTF8}{min} 答 \end{CJK}}
{\begin{CJK}{UTF8}{min} を \end{CJK}}
{\begin{CJK}{UTF8}{min} 集 \end{CJK}}
{\begin{CJK}{UTF8}{min} め \end{CJK}}
{\begin{CJK}{UTF8}{min} 役 \end{CJK}}
{\begin{CJK}{UTF8}{min} に \end{CJK}}
{\begin{CJK}{UTF8}{min} 立 \end{CJK}}
{\begin{CJK}{UTF8}{min} つ \end{CJK}}
{\begin{CJK}{UTF8}{min} よ \end{CJK}}
{\begin{CJK}{UTF8}{min} う \end{CJK}}
{\begin{CJK}{UTF8}{min} し \end{CJK}}
{\begin{CJK}{UTF8}{min} た \end{CJK}}
{\begin{CJK}{UTF8}{min} も \end{CJK}}
{\begin{CJK}{UTF8}{min} も \end{CJK}}
{\begin{CJK}{UTF8}{min} の \end{CJK}}
{\begin{CJK}{UTF8}{min} で \end{CJK}}
{\begin{CJK}{UTF8}{min} す \end{CJK}}
{\begin{CJK}{UTF8}{min} 大 \end{CJK}}
{\begin{CJK}{UTF8}{min} こ \end{CJK}}
%Some voids to get sparse sequences
{}{}{}{}{}{}{}{}{}{}{}{}{}{}
%Mirrored numbers
{\reflectbox{\textsf{2}}}
{\reflectbox{\textsf{7}}}
{\reflectbox{\textsf{4}}}
{\reflectbox{\textsf{3}}}
{\reflectbox{\textsf{5}}}
{\reflectbox{\textsf{6}}}
{\reflectbox{\textsf{8}}}
{\reflectbox{\textsf{9}}}
}%
%End Of List%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%\foreach \col in {1,…,\ncol}{
\pgfmathrandominteger{\codelength}{1}{25} %Change the second argument according to \nrow (although it must be less than \nrow)
\pgfmathsetmacro{\ncodelength}{\codelength+2}
\pgfmathrandominteger{\FLAG}{1}{20} %This variable is used for the test
\pgfmathrandominteger{\Highlight}{1}{20} %Another variable to get the highlighted symbol
%%%%%%%%%%%%%%%%%
\ifthenelse{\FLAG<12}{% In this case 12 is a threshold: it corresponds to more than 50% of likelihood to enter the “true” statement
\foreach \i in {1,…,\codelength}{%iftrue
\node at (\col,\i) { };}%
\pgfmathrandomitem{\letter}{letters}
%the next 3 lines are to highlight the bottom symbol of the sequence
\ifthenelse{\Highlight<10}{%
\node [greenH] at (\col,{\codelength+1}) {\letter};}{%
\node at (\ncol,{\codelength+1}) {\letter};}
\foreach \i in {\ncodelength,…,\nrow}{%else
\pgfmathrandomitem{\letter}{letters}
\node at (\col,\i) {\letter};}}{%
\foreach \i in {1,…,\codelength}{%
\pgfmathrandomitem{\letter}{letters}
\node at (\col,\i) {\letter};}}
}
\end{tikzpicture}
\end{document}`Non mi stupirei se ci fossero soluzioni meno contorte e piu’ efficaci, ma per ora questo e’ quello che mi e’ venuto in mente…
Saluti
P.S. se rimpicciolite un po’ l’output e lo guardate da lontano potrebbe davvero sembrare una schermata di matrix! 🙂
Attachments:
You must be logged in to view attached files. -
4 Febbraio 2016 alle 16:15 #104829
-
4 Febbraio 2016 alle 16:23 #104830::
mirkom” post=104918Premetto di non essere troppo contento del risultato finale ma spero che almeno l’approccio possa essere di ispirazione per qualcuno.
[attachment=1515]matrix.pdf[/attachment]
Ho deciso di utlizzare il pacchetto tikz per poter sfruttare le varie funzioni di generatori di numeri pseudo-random, il codice si sviluppa in questo modo:
- Decido a priori il numero di righe e di colonne che l’immagine dovra’ contenere (dichiaro \nrow e \ncol)
- Dichiaro una lista di simboli, numeri e spazi vuoti da cui il codice attingera’ con il comando \pgfmathdeclarerandomlist. Per i simboli non ho perso troppo tempo e ho utilizzato il pacchetto CJKutf8, altre vie potrebbero dare risultati migliori
- Per ogni colonna genero un numero intero random ma all’interno di un certo range con il comando \pgfmathrandominteger{\nomemacro}{
}{ } (in questo caso deve essere minore di \nrow); il numero random (che ho chiamato \codelength) verra’ utilizzato per generare una sequenza codice tipo “matrix” di lunghezza pari a “\codelength”. A questo punto possono succedere due cose: 1) la sequenza di codice e’ formata da simboli presi dalla lista generata precedentemente; 2) la sequenza e’ formata da caratteri “vuoti”. Avere una o l’altra casistica e’ di nuovo di natura random. Genero un altro intero con il comando \pgfmathrandominteger (a quanto pare a latex non piacciono i numeri con la virgola, o quantomeno non sono riuscito a fare questo con numeri non interi), dopodiche’ faccio un test (per questo uso il pacchetto ifthen): se il numero generato e’ minore di una certa soglia la sequenza sara’ di caratteri vuoti o viceversa. Quel che rimane dei caratteri della colonna (ricordate che \codelength deve essere minore di \nrow) saranno simboli se fino a quel punto sono stati inseriti caratteri vuoti oppure il contrario
`\documentclass[tikz]{standalone}
\usepackage{ifthen}
\usepackage{CJKutf8}
%Some (perhaps) Japanese symbols: このリストは、よくある質問とその答を集め、役に立つようにし
%たものです。の構造は、以前のものと比べて大幅に変
\usetikzlibrary{backgrounds}
\definecolor{greenB}{RGB}{21,138,12} %Color of “background” letters
\definecolor{greenH}{RGB}{23,247,55} %Color of “highlighted” letters
\def\nrow{30} %number of rows
\def\ncol{40} %number of columns
\begin{document}
\begin{tikzpicture}[scale=.5,
show background rectangle,
background rectangle/.style={fill=black},
color=greenB,font=\large]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%List of symbols to choose from:
\pgfmathdeclarerandomlist{letters}{%
{\begin{CJK}{UTF8}{min} リ \end{CJK}}
{\begin{CJK}{UTF8}{min} ス \end{CJK}}
{\begin{CJK}{UTF8}{min} ト \end{CJK}}
{\begin{CJK}{UTF8}{min} は \end{CJK}}
{\begin{CJK}{UTF8}{min} 集 \end{CJK}}
{\begin{CJK}{UTF8}{min} よ \end{CJK}}
{\begin{CJK}{UTF8}{min} く \end{CJK}}
{\begin{CJK}{UTF8}{min} あ \end{CJK}}
{\begin{CJK}{UTF8}{min} る \end{CJK}}
{\begin{CJK}{UTF8}{min} 質 \end{CJK}}
{\begin{CJK}{UTF8}{min} 問 \end{CJK}}
{\begin{CJK}{UTF8}{min} と \end{CJK}}
{\begin{CJK}{UTF8}{min} そ \end{CJK}}
{\begin{CJK}{UTF8}{min} の \end{CJK}}
{\begin{CJK}{UTF8}{min} 答 \end{CJK}}
{\begin{CJK}{UTF8}{min} を \end{CJK}}
{\begin{CJK}{UTF8}{min} 集 \end{CJK}}
{\begin{CJK}{UTF8}{min} め \end{CJK}}
{\begin{CJK}{UTF8}{min} 役 \end{CJK}}
{\begin{CJK}{UTF8}{min} に \end{CJK}}
{\begin{CJK}{UTF8}{min} 立 \end{CJK}}
{\begin{CJK}{UTF8}{min} つ \end{CJK}}
{\begin{CJK}{UTF8}{min} よ \end{CJK}}
{\begin{CJK}{UTF8}{min} う \end{CJK}}
{\begin{CJK}{UTF8}{min} し \end{CJK}}
{\begin{CJK}{UTF8}{min} た \end{CJK}}
{\begin{CJK}{UTF8}{min} も \end{CJK}}
{\begin{CJK}{UTF8}{min} も \end{CJK}}
{\begin{CJK}{UTF8}{min} の \end{CJK}}
{\begin{CJK}{UTF8}{min} で \end{CJK}}
{\begin{CJK}{UTF8}{min} す \end{CJK}}
{\begin{CJK}{UTF8}{min} 大 \end{CJK}}
{\begin{CJK}{UTF8}{min} こ \end{CJK}}
%Some voids to get sparse sequences
{}{}{}{}{}{}{}{}{}{}{}{}{}{}
%Mirrored numbers
{\reflectbox{\textsf{2}}}
{\reflectbox{\textsf{7}}}
{\reflectbox{\textsf{4}}}
{\reflectbox{\textsf{3}}}
{\reflectbox{\textsf{5}}}
{\reflectbox{\textsf{6}}}
{\reflectbox{\textsf{8}}}
{\reflectbox{\textsf{9}}}
}%
%End Of List%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%\foreach \col in {1,…,\ncol}{
\pgfmathrandominteger{\codelength}{1}{25} %Change the second argument according to \nrow (although it must be less than \nrow)
\pgfmathsetmacro{\ncodelength}{\codelength+2}
\pgfmathrandominteger{\FLAG}{1}{20} %This variable is used for the test
\pgfmathrandominteger{\Highlight}{1}{20} %Another variable to get the highlighted symbol
%%%%%%%%%%%%%%%%%
\ifthenelse{\FLAG<12}{% In this case 12 is a threshold: it corresponds to more than 50% of likelihood to enter the “true” statement
\foreach \i in {1,…,\codelength}{%iftrue
\node at (\col,\i) { };}%
\pgfmathrandomitem{\letter}{letters}
%the next 3 lines are to highlight the bottom symbol of the sequence
\ifthenelse{\Highlight<10}{%
\node [greenH] at (\col,{\codelength+1}) {\letter};}{%
\node at (\ncol,{\codelength+1}) {\letter};}
\foreach \i in {\ncodelength,…,\nrow}{%else
\pgfmathrandomitem{\letter}{letters}
\node at (\col,\i) {\letter};}}{%
\foreach \i in {1,…,\codelength}{%
\pgfmathrandomitem{\letter}{letters}
\node at (\col,\i) {\letter};}}
}
\end{tikzpicture}
\end{document}`Non mi stupirei se ci fossero soluzioni meno contorte e piu’ efficaci, ma per ora questo e’ quello che mi e’ venuto in mente…
Saluti
P.S. se rimpicciolite un po’ l’output e lo guardate da lontano potrebbe davvero sembrare una schermata di matrix! 🙂
Davvero bello.
Ti andrebbe di scrivere un articolo di spiegazione per ArsTeXnica di aprile 2016? La scadenza è a metà febbraio potresti farcela!
Grazie.
R.
-
4 Febbraio 2016 alle 17:07 #104831::
Davvero molto bello!Uniche due migliorie, a voler essere pignolo:
– eviterei ideogrammi complessi, lasciando magari solo simboli classici
– è possibile inserire anche lettere dell’alfabeto classico inglese (26) + numeri + lettere greche? giusto per variare. o dici che così è ancora più pasticciato?Saluti 🙂
-
4 Febbraio 2016 alle 18:27 #104832::
mirkom” post=104918Premetto di non essere troppo contento del risultato finale ma spero che almeno l’approccio possa essere di ispirazione per qualcuno.
Il risultato è stupendo, complimenti.
Ho provato a compilare con PDFLaTeX il tuo sorgente sulla mia MacTeX 2013, ma vengono fuori dei punti interrogativi al posto degli ideogrammi giapponesi. Anche con la codifica Unicode attivata. Da che cosa può dipendere?
In ogni caso, il tuo è un pezzo di bravura, un esempio di che cosa si può ottenere con LaTeX.
Fammi sapere.
-
4 Febbraio 2016 alle 18:35 #104833::
lorenzo.pantieri” post=104924Ho provato a compilare con PDFLaTeX il tuo sorgente sulla mia MacTeX 2013, ma vengono fuori dei punti interrogativi al posto degli ideogrammi giapponesi. Anche con la codifica Unicode attivata. Da che cosa può dipendere?
Dal fatto che lavori con una TeX Live vecchia di tre anni.
Il mio log è questo, senza nemmeno un errore: complimenti al nostro amico!
`This is pdfTeX, Version 3.14159265-2.6-1.40.16 (TeX Live 2015) (preloaded format=pdflatex)
restricted \write18 enabled.
entering extended mode
(./matrix.tex
LaTeX2e <2015/10/01> patch level 2
Babel <3.9n> and hyphenation patterns for 79 languages loaded.
(/usr/local/texlive/2015/texmf-dist/tex/latex/standalone/standalone.cls
Document Class: standalone 2015/07/15 v1.2 Class to compile TeX sub-files stand
alone
(/usr/local/texlive/2015/texmf-dist/tex/generic/oberdiek/ifluatex.sty)
(/usr/local/texlive/2015/texmf-dist/tex/generic/oberdiek/ifpdf.sty)
(/usr/local/texlive/2015/texmf-dist/tex/generic/ifxetex/ifxetex.sty)
(/usr/local/texlive/2015/texmf-dist/tex/latex/xkeyval/xkeyval.sty
(/usr/local/texlive/2015/texmf-dist/tex/generic/xkeyval/xkeyval.tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/xkeyval/xkvutils.tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/xkeyval/keyval.tex))))
(/usr/local/texlive/2015/texmf-dist/tex/latex/standalone/standalone.cfg)
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/article.cls
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/size10.clo))
(/usr/local/texlive/2015/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.te
x
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/utilities/pgfutil-common-li
sts.tex))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def
(/usr/local/texlive/2015/texmf-dist/tex/latex/ms/everyshi.sty))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex))
(/usr/local/texlive/2015/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/graphics/graphicx.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/graphics/graphics.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/graphics/trig.sty)
(/usr/local/texlive/2015/texmf-dist/tex/latex/latexconfig/graphics.cfg)
(/usr/local/texlive/2015/texmf-dist/tex/latex/pdftex-def/pdftex.def
(/usr/local/texlive/2015/texmf-dist/tex/generic/oberdiek/infwarerr.sty)
(/usr/local/texlive/2015/texmf-dist/tex/generic/oberdiek/ltxcmds.sty))))
(/usr/local/texlive/2015/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/utilities/pgfkeysfiltered.c
ode.tex))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.d
ef
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-p
df.def)))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.
code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.
code.tex)) (/usr/local/texlive/2015/texmf-dist/tex/latex/xcolor/xcolor.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/latexconfig/color.cfg))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex
)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.
tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic
.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigo
nometric.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.rando
m.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.compa
rison.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.
code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round
.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.
code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.integ
erarithmetics.code.tex)))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex)
)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.co
de.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconst
ruct.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage
.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.co
de.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicst
ate.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransform
ations.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.cod
e.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.c
ode.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathproce
ssing.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.co
de.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.cod
e.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.cod
e.tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.
code.tex))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.co
de.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretranspare
ncy.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.
code.tex)))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.cod
e.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.
tex)
(/usr/local/texlive/2015/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version
-0-65.sty)
(/usr/local/texlive/2015/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version
-1-18.sty))
(/usr/local/texlive/2015/texmf-dist/tex/latex/pgf/utilities/pgffor.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex)
) (/usr/local/texlive/2015/texmf-dist/tex/latex/pgf/math/pgfmath.sty
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex)))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.cod
e.tex
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothan
dlers.code.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.cod
e.tex)
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie
s/tikzlibrarytopaths.code.tex))))
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/ifthen.sty)
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/texinput/CJKutf8.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/inputenc.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/utf8.def
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/t1enc.dfu)
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/ot1enc.dfu)
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/omsenc.dfu)))
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/texinput/CJK.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/texinput/mule/MULEenc.sty)
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/texinput/CJK.enc))
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/fontenc.sty))
(/usr/local/texlive/2015/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie
s/tikzlibrarybackgrounds.code.tex)
No file matrix.aux.
ABD: EveryShipout initializing macros
(/usr/local/texlive/2015/texmf-dist/tex/context/base/supp-pdf.mkii
[Loading MPS to PDF converter (version 2006.09.02).]
) (/usr/local/texlive/2015/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty)
(/usr/local/texlive/2015/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty
(/usr/local/texlive/2015/texmf-dist/tex/latex/oberdiek/grfext.sty
(/usr/local/texlive/2015/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty))
(/usr/local/texlive/2015/texmf-dist/tex/latex/oberdiek/kvoptions.sty
(/usr/local/texlive/2015/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty
(/usr/local/texlive/2015/texmf-dist/tex/generic/oberdiek/etexcmds.sty)))
(/usr/local/texlive/2015/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg))
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.bdg)
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.enc)
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.chr)
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/contrib/wadalab/c70min.fd)
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/contrib/wadalab/c70min.fdx)
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.enc)
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.chr)
(/usr/local/texlive/2015/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.enc)
[…]
[1{/usr/local/texlive/2015/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
(./matrix.aux) )
Output written on matrix.pdf (1 page, 48191 bytes).
SyncTeX written on matrix.synctex.gz.
Transcript written on matrix.log.`
-
5 Febbraio 2016 alle 3:08 #104834::
Sono contento che sia piaciuto!Ho provato a compilare con PDFLaTeX il tuo sorgente sulla mia MacTeX 2013, ma vengono fuori dei punti interrogativi al posto degli ideogrammi giapponesi. Anche con la codifica Unicode attivata. Da che cosa può dipendere?
Ho compilato il codice sia con TeX Live 2014 che 2015 senza errori, quindi si, e’ possibile che il problema sia una distribuzione piu’ vecchia.
– eviterei ideogrammi complessi, lasciando magari solo simboli classici
– è possibile inserire anche lettere dell’alfabeto classico inglese (26) + numeri + lettere greche? giusto per variare. o dici che così è ancora più pasticciato?Riguardo i simboli sono d’accordo. Ho brutalmente cercato su google “Japanese symbols latex” e sono venuto a conoscenza del pacchetto CJKutf8, la cui documentazione peraltro non e’ in inglese. A quel punto ho banalmente copiato e incollato alcuni simboli che mi sembravano in giapponese dalla “documentazione” che salta fuori digitando texdoc CJKutf8 (per quel che ne so io potrei aver copiato ed incollato una parolaccia!).
Tornando a noi, per eliminare alcuni simboli “complessi” basta cancellare/commentare la linee corrispondenti ai simboli incriminati dall’elenco \pgfmathdeclarerandomlist. Per aggiunerne di nuovi, al contrario, occorre inserire quello che ti piace (puo’ essere un carattere greco, un numero etc., qualsiasi cosa che possa essere accettato dal comando \node di tikz) entro una coppia di parentesi graffe. L’ordine con cui immetti nuovi caratteri, a rigore, dovrebbe essere ininfluente dato che gli elementi vengono presi salla lista in modo casuale.Ti andrebbe di scrivere un articolo di spiegazione per ArsTeXnica di aprile 2016? La scadenza è a metà febbraio potresti farcela!
Sarebbe bello scrivere un articolo, provero’ ad incastrare la stesura nei weekend… Spero di farcela!
Saluti e grazie per il supporto!
-
5 Febbraio 2016 alle 6:16 #104835::
mirkom” post=104918Premetto di non essere troppo contento del risultato finale ma spero che almeno l’approccio possa essere di ispirazione per qualcuno.
[attachment=1515]matrix.pdf[/attachment]
Ho deciso di utlizzare il pacchetto tikz per poter sfruttare le varie funzioni di generatori di numeri pseudo-random, il codice si sviluppa in questo modo:
- Decido a priori il numero di righe e di colonne che l’immagine dovra’ contenere (dichiaro \nrow e \ncol)
- Dichiaro una lista di simboli, numeri e spazi vuoti da cui il codice attingera’ con il comando \pgfmathdeclarerandomlist. Per i simboli non ho perso troppo tempo e ho utilizzato il pacchetto CJKutf8, altre vie potrebbero dare risultati migliori
- Per ogni colonna genero un numero intero random ma all’interno di un certo range con il comando \pgfmathrandominteger{\nomemacro}{
}{ } (in questo caso deve essere minore di \nrow); il numero random (che ho chiamato \codelength) verra’ utilizzato per generare una sequenza codice tipo “matrix” di lunghezza pari a “\codelength”. A questo punto possono succedere due cose: 1) la sequenza di codice e’ formata da simboli presi dalla lista generata precedentemente; 2) la sequenza e’ formata da caratteri “vuoti”. Avere una o l’altra casistica e’ di nuovo di natura random. Genero un altro intero con il comando \pgfmathrandominteger (a quanto pare a latex non piacciono i numeri con la virgola, o quantomeno non sono riuscito a fare questo con numeri non interi), dopodiche’ faccio un test (per questo uso il pacchetto ifthen): se il numero generato e’ minore di una certa soglia la sequenza sara’ di caratteri vuoti o viceversa. Quel che rimane dei caratteri della colonna (ricordate che \codelength deve essere minore di \nrow) saranno simboli se fino a quel punto sono stati inseriti caratteri vuoti oppure il contrario
`\documentclass[tikz]{standalone}
\usepackage{ifthen}
\usepackage{CJKutf8}
%Some (perhaps) Japanese symbols: このリストは、よくある質問とその答を集め、役に立つようにし
%たものです。の構造は、以前のものと比べて大幅に変
\usetikzlibrary{backgrounds}
\definecolor{greenB}{RGB}{21,138,12} %Color of “background” letters
\definecolor{greenH}{RGB}{23,247,55} %Color of “highlighted” letters
\def\nrow{30} %number of rows
\def\ncol{40} %number of columns
\begin{document}
\begin{tikzpicture}[scale=.5,
show background rectangle,
background rectangle/.style={fill=black},
color=greenB,font=\large]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%List of symbols to choose from:
\pgfmathdeclarerandomlist{letters}{%
{\begin{CJK}{UTF8}{min} リ \end{CJK}}
{\begin{CJK}{UTF8}{min} ス \end{CJK}}
{\begin{CJK}{UTF8}{min} ト \end{CJK}}
{\begin{CJK}{UTF8}{min} は \end{CJK}}
{\begin{CJK}{UTF8}{min} 集 \end{CJK}}
{\begin{CJK}{UTF8}{min} よ \end{CJK}}
{\begin{CJK}{UTF8}{min} く \end{CJK}}
{\begin{CJK}{UTF8}{min} あ \end{CJK}}
{\begin{CJK}{UTF8}{min} る \end{CJK}}
{\begin{CJK}{UTF8}{min} 質 \end{CJK}}
{\begin{CJK}{UTF8}{min} 問 \end{CJK}}
{\begin{CJK}{UTF8}{min} と \end{CJK}}
{\begin{CJK}{UTF8}{min} そ \end{CJK}}
{\begin{CJK}{UTF8}{min} の \end{CJK}}
{\begin{CJK}{UTF8}{min} 答 \end{CJK}}
{\begin{CJK}{UTF8}{min} を \end{CJK}}
{\begin{CJK}{UTF8}{min} 集 \end{CJK}}
{\begin{CJK}{UTF8}{min} め \end{CJK}}
{\begin{CJK}{UTF8}{min} 役 \end{CJK}}
{\begin{CJK}{UTF8}{min} に \end{CJK}}
{\begin{CJK}{UTF8}{min} 立 \end{CJK}}
{\begin{CJK}{UTF8}{min} つ \end{CJK}}
{\begin{CJK}{UTF8}{min} よ \end{CJK}}
{\begin{CJK}{UTF8}{min} う \end{CJK}}
{\begin{CJK}{UTF8}{min} し \end{CJK}}
{\begin{CJK}{UTF8}{min} た \end{CJK}}
{\begin{CJK}{UTF8}{min} も \end{CJK}}
{\begin{CJK}{UTF8}{min} も \end{CJK}}
{\begin{CJK}{UTF8}{min} の \end{CJK}}
{\begin{CJK}{UTF8}{min} で \end{CJK}}
{\begin{CJK}{UTF8}{min} す \end{CJK}}
{\begin{CJK}{UTF8}{min} 大 \end{CJK}}
{\begin{CJK}{UTF8}{min} こ \end{CJK}}
%Some voids to get sparse sequences
{}{}{}{}{}{}{}{}{}{}{}{}{}{}
%Mirrored numbers
{\reflectbox{\textsf{2}}}
{\reflectbox{\textsf{7}}}
{\reflectbox{\textsf{4}}}
{\reflectbox{\textsf{3}}}
{\reflectbox{\textsf{5}}}
{\reflectbox{\textsf{6}}}
{\reflectbox{\textsf{8}}}
{\reflectbox{\textsf{9}}}
}%
%End Of List%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%\foreach \col in {1,…,\ncol}{
\pgfmathrandominteger{\codelength}{1}{25} %Change the second argument according to \nrow (although it must be less than \nrow)
\pgfmathsetmacro{\ncodelength}{\codelength+2}
\pgfmathrandominteger{\FLAG}{1}{20} %This variable is used for the test
\pgfmathrandominteger{\Highlight}{1}{20} %Another variable to get the highlighted symbol
%%%%%%%%%%%%%%%%%
\ifthenelse{\FLAG<12}{% In this case 12 is a threshold: it corresponds to more than 50% of likelihood to enter the “true” statement
\foreach \i in {1,…,\codelength}{%iftrue
\node at (\col,\i) { };}%
\pgfmathrandomitem{\letter}{letters}
%the next 3 lines are to highlight the bottom symbol of the sequence
\ifthenelse{\Highlight<10}{%
\node [greenH] at (\col,{\codelength+1}) {\letter};}{%
\node at (\ncol,{\codelength+1}) {\letter};}
\foreach \i in {\ncodelength,…,\nrow}{%else
\pgfmathrandomitem{\letter}{letters}
\node at (\col,\i) {\letter};}}{%
\foreach \i in {1,…,\codelength}{%
\pgfmathrandomitem{\letter}{letters}
\node at (\col,\i) {\letter};}}
}
\end{tikzpicture}
\end{document}`Non mi stupirei se ci fossero soluzioni meno contorte e piu’ efficaci, ma per ora questo e’ quello che mi e’ venuto in mente…
Saluti
P.S. se rimpicciolite un po’ l’output e lo guardate da lontano potrebbe davvero sembrare una schermata di matrix! 🙂
Complimenti! Un bel risultato.
Per generare numeri con la virgola puoi usare [tt]\pgfmathrnd[/tt]: genera numeri compresi fra 0 e 1. A quel punto ti basta moltiplicare per un fattore di scala per cambiare intervallo.
Il prossimo passo è fare un’animazione 😉
Ciao
Claudio
-
5 Febbraio 2016 alle 15:24 #104836::
mirkom” post=104927
Sarebbe bello scrivere un articolo, provero’ ad incastrare la stesura nei weekend… Spero di farcela!Perché non ne fai (anche) un pacchetto e lo pubblichi su CTAN?
Basterebbe anche un pacchetto che definisse semplicemente un comando \matrix che produce l’immagine. Magari puoi inserire qualche opzione, che preveda l’uso oltre che dei caratteri giapponesi anche di quelli latini. È un esempio delle potenzialità di LaTeX, e il risultato grafico è davvero accattivante.
Facci sapere.
LorenzoP.S. Quanto alla mia vecchia 2013, quest’anno lavoro moltissimo e non ho tempo per ritoccare il codice (operazione che, ahimè, è necessaria a ogni aggiornamento). E no, non dovrebbe essere così: dovrei poter aggiornare semplicemente. 😉
-
5 Febbraio 2016 alle 16:00 #104837::
lorenzo.pantieri” post=104937Quanto alla mia vecchia 2013, quest’anno lavoro moltissimo e non ho tempo per ritoccare il codice (operazione che, ahimè, è necessaria a ogni aggiornamento). E no, non dovrebbe essere così: dovrei poter aggiornare semplicemente. 😉
Non è vero che a ogni aggiornamento è necessario ritoccare il codice: ancora oggi io riesco a compilare benissimo i miei primi sorgenti di molti anni fa. Il trucco è semplice: non usare ClassicThesis, che restituisce nove warning nove (9) semplicemente caricandolo. Tutte le altre classi e tutti gli altri stili che ho provato filano via lisci.
Non è questione di riscrivere lo stile: è questione che Miede è molto, dico molto, ottuso, se non si accorge di aver partorito uno scolapasta.Questo non danneggia noi, ma danneggia almeno i lettori che usano i tuoi template per comporre la propria tesi di laurea. O no?
Sulle modalità utopistiche di aggiornamento del sistema TeX, sai bene come funziona, perché tu stesso lo scrivesti nell’Arte, a partire dalla prima edizione del 2008. È così e basta e non si possono cambiare le cose.
Ovviamente noi non ci rimettiamo, ma tu cominci a vedere le magagne dell’età: non puoi comporre un file con carattere giapponesi. 🙂Ciao
Tommaso
-
5 Febbraio 2016 alle 16:28 #104838::
illinguista1972″ post=104938
Non è vero che a ogni aggiornamento è necessario ritoccare il codice: ancora oggi io riesco a compilare benissimo i miei primi sorgenti di molti anni fa. Il trucco è semplice: non usare ClassicThesis, che restituisce nove warning nove (9) semplicemente caricandolo. Tutte le altre classi e tutti gli altri stili che ho provato filano via lisci.Pensi che suftesi possa validamente rimpiazzare ClassiThesis? Permette di riprodurre lo stesso risultato? Permette di caricarci ArsClassica? Hai provato a mettere l’Arte su suftesi?
Stimo moltissimo Ivan, ma per me abbandonare ClassicThesis è l’equivalente di un cambio di città (forse di Stato): il prezzo da pagare in termini di disagio iniziale (trasloco, cambio di lingua…) deve essere giustificato.
Fammi sapere!
-
6 Febbraio 2016 alle 8:32 #104839::
lorenzo.pantieri” post=104942[…] per me abbandonare ClassicThesis è l’equivalente di un cambio di città (forse di Stato): il prezzo da pagare in termini di disagio iniziale (trasloco, cambio di lingua…) deve essere giustificato.
`\documentclass{suftesi}
\begin{document}
Ciao.
\end{document}`
`\documentclass{scrreprt}
\usepackage{classicthesis}
\usepackage{arsclassica}\begin{document}
Ciao.
\end{document}`
Ciao
Tommaso
-
6 Febbraio 2016 alle 12:57 #104840::
Non mi hai risposto!È possibile mettere ArsClassica su suftesi? È facile fare il porting di un documento scritto per ClassicThesis? È possibile riprodurre su suftesi il layout esatto di un documento scritto con CT e con ArsClassica?
Se mi dai indicazioni positive, appena ho un po’ di tempo libero (non prima di quest’estate, uffa) aggiorno finalmente la mia distribuzione e mi dedico a suftesi…
Grazie,
Lorenzo
-
6 Febbraio 2016 alle 14:59 #104841
-
6 Febbraio 2016 alle 16:50 #104842::
golden_boy” post=104977Sarebbe opportuna, credo, un’ennesima miglioria: attualmente il codice genera l’effetto matrix su una pagina intera.
Si potrebbe ottimizzarlo per averlo all’interno di una pagina come riquadro più piccolo? Nel caso si volesse inserire del testo prima e / o dopoLo genera su una pagina intera perché ha usato standalone.
-
8 Febbraio 2016 alle 1:24 #104843::
Gup” post=104982
Sarebbe opportuna, credo, un’ennesima miglioria: attualmente il codice genera l’effetto matrix su una pagina intera.
Si potrebbe ottimizzarlo per averlo all’interno di una pagina come riquadro più piccolo? Nel caso si volesse inserire del testo prima e / o dopoLo genera su una pagina intera perché ha usato standalone.
Si puo’ giocare con la scala del disegno ([tt]scale=[/tt]) e il la dimensione del font ([tt]font=[/tt]). Entramble sono opzioni dell’ambiente [tt]tikzpicture[/tt], nel primo caso devi specificare il fattore di scala, nel mio esempio e’ .5 ma tu puoi mettere un numero piu’ piccolo, nella seconda opzione puoi dare un comando tipo [tt]\scriptsize[/tt], [tt]\tiny[/tt] o simili.
E’ possibile che cambiando il fattore di scala e la dimensione del font sia necessario cambiare il numero di colonne della matrice, per farlo aumenta o diminuisci il valore di [tt]\ncol[/tt]. Qualora fosse necessario diminuire il numero di righe (e quindi diminuire [tt]\nrow[/tt]) ricorda di modificare anche il terzo argomento della funzione che deve essere minore di \nrow:
`\pgfmathrandominteger{\codelength}{1}{25}`
Nel mio primo esempio \nrow era 30 e nella terza parentesi graffa ho messo 25.
Questo e’ un altro esempio utilizzando beamer:
`\documentclass{beamer}
%\usepackage{animate}
\usepackage{tikz}
\usetikzlibrary{backgrounds}
\usepackage{ifthen}
\usepackage{CJKutf8}\definecolor{greenB}{RGB}{60,143,60}
\definecolor{greenH}{RGB}{162,229,162}
%\definecolor{greenB}{RGB}{21,138,12} %Color of “background” letters
%\definecolor{greenH}{RGB}{23,247,55} %Color of “highlighted” letters
\def\nrow{20} %number of rows
\def\ncol{35} %number of columns\begin{document}
\begin{frame}[fragile]
%\begin{animateinline}[palindrome,controls]{2}
%\multiframe{10}{I=0+1}{%
\begin{tikzpicture}[scale=.3,
show background rectangle,
background rectangle/.style={fill=black},
color=greenB,font=\scriptsize]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%List of symbols to choose from:
\pgfmathdeclarerandomlist{letters}{%
{\begin{CJK}{UTF8}{min} リ \end{CJK}}
{\begin{CJK}{UTF8}{min} ス \end{CJK}}
{\begin{CJK}{UTF8}{min} ト \end{CJK}}
{\begin{CJK}{UTF8}{min} は \end{CJK}}
%{\begin{CJK}{UTF8}{min} 集 \end{CJK}}
{\begin{CJK}{UTF8}{min} よ \end{CJK}}
{\begin{CJK}{UTF8}{min} く \end{CJK}}
{\begin{CJK}{UTF8}{min} あ \end{CJK}}
{\begin{CJK}{UTF8}{min} る \end{CJK}}
%{\begin{CJK}{UTF8}{min} 質 \end{CJK}}
%{\begin{CJK}{UTF8}{min} 問 \end{CJK}}
{\begin{CJK}{UTF8}{min} と \end{CJK}}
{\begin{CJK}{UTF8}{min} そ \end{CJK}}
{\begin{CJK}{UTF8}{min} の \end{CJK}}
{\begin{CJK}{UTF8}{min} 答 \end{CJK}}
{\begin{CJK}{UTF8}{min} を \end{CJK}}
%{\begin{CJK}{UTF8}{min} 集 \end{CJK}}
{\begin{CJK}{UTF8}{min} め \end{CJK}}
%{\begin{CJK}{UTF8}{min} 役 \end{CJK}}
{\begin{CJK}{UTF8}{min} に \end{CJK}}
{\begin{CJK}{UTF8}{min} 立 \end{CJK}}
{\begin{CJK}{UTF8}{min} つ \end{CJK}}
{\begin{CJK}{UTF8}{min} よ \end{CJK}}
{\begin{CJK}{UTF8}{min} う \end{CJK}}
{\begin{CJK}{UTF8}{min} し \end{CJK}}
{\begin{CJK}{UTF8}{min} た \end{CJK}}
{\begin{CJK}{UTF8}{min} も \end{CJK}}
{\begin{CJK}{UTF8}{min} も \end{CJK}}
{\begin{CJK}{UTF8}{min} の \end{CJK}}
{\begin{CJK}{UTF8}{min} で \end{CJK}}
{\begin{CJK}{UTF8}{min} す \end{CJK}}
{\begin{CJK}{UTF8}{min} 大 \end{CJK}}
{\begin{CJK}{UTF8}{min} こ \end{CJK}}
%Some voids to get sparse sequences
{}{}{}{}{}{}{}{}{}{}{}{}{}{}
%Mirrored numbers
{\reflectbox{\textsf{2}}}
{\reflectbox{\textsf{7}}}
{\reflectbox{\textsf{4}}}
{\reflectbox{\textsf{3}}}
{\reflectbox{\textsf{5}}}
{\reflectbox{\textsf{6}}}
{\reflectbox{\textsf{8}}}
{\reflectbox{\textsf{9}}}
}%
%End Of List%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%\foreach \col in {1,…,\ncol}{
\pgfmathrandominteger{\codelength}{1}{12} %Change the second argument according to \nrow (although it must be less than \nrow)
\pgfmathsetmacro{\ncodelength}{\codelength+2}
\pgfmathrandominteger{\FLAG}{1}{20} %This variable is used for the test
\pgfmathrandominteger{\Highlight}{1}{20} %Another variable to get the highlighted symbol
%%%%%%%%%%%%%%%%%
\ifthenelse{\FLAG<12}{% In this case 12 is a threshold: it corresponds to more than 50% of likelihood to enter the “true” statement
\foreach \i in {1,…,\codelength}{%iftrue
\node at (\col,\i) { };}%
\pgfmathrandomitem{\letter}{letters}
%the next 3 lines are to highlight the bottom symbol of the sequence
\ifthenelse{\Highlight<18}{%
\node [greenH] at (\col,{\codelength+1}) {\letter};}{%
\node at (\col,{\codelength+1}) {\letter};}
\foreach \i in {\ncodelength,…,\nrow}{%else
\pgfmathrandomitem{\letter}{letters}
\node at (\col,\i) {\letter};}}{%
\foreach \i in {1,…,\codelength}{%
\pgfmathrandomitem{\letter}{letters}
\node at (\col,\i) {\letter};}}
}
\end{tikzpicture}
%}%\end{animateinline}
\end{frame}
\end{document}`E questo e’ l’output (per chi non ha una versione recente di TeXLive :))
[attachment=1520]matrix-beamer.pdf[/attachment]
Saluti
Attachments:
You must be logged in to view attached files. -
15 Febbraio 2016 alle 23:34 #104844::
Questa stessa domanda è stata posta su TeX.SX un’oretta fa (la si veda). Ho dato un riferimento a questo forum, ma se qualcuno volesse rispondere direttamente… 🙂Ciao.
—
Gustavo
-
16 Febbraio 2016 alle 2:53 #104845::
letteracdp” post=105200Questa stessa domanda è stata posta su TeX.SX un’oretta fa (la si veda). Ho dato un riferimento a questo forum, ma se qualcuno volesse rispondere direttamente… 🙂
Ciao.
—
GustavoGrazie per la segnalazione!
-
16 Febbraio 2016 alle 8:40 #104846::
letteracdp” post=105200Questa stessa domanda è stata posta su TeX.SX un’oretta fa (la si veda). Ho dato un riferimento a questo forum, ma se qualcuno volesse rispondere direttamente… 🙂
Ciao.
—
GustavoHo appena postato la soluzione a quella domanda. Per chiunque sia interessto a questo argomento puo’ dare uno sguardo a questo link.
For those interested in this topic, you may have a look to this link.
-
16 Febbraio 2016 alle 11:55 #104847::
mirkom” post=105202[…]
Ho appena postato la soluzione a quella domanda. Per chiunque sia interessto a questo argomento puo’ dare uno sguardo a questo link.For those interested in this topic, you may have a look to this link.
I’ve just upvoted your answer (the usual «Italian Mafia»…:wink: )
Ciao.
—
Gustavo
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.