[cstex] Text bez diakritiky

Jan Sustek Jan.Sustek at seznam.cz
Thu Mar 1 07:54:37 CET 2012


Dobry den,

a) pokud pracujete v Unicode v TeXu (ne XeTeXu, LuaTeXu), pak je kazdy akcentovany znak posloupnosti tokenu. A ty je treba zamenit. Ukazoval jsem to na prednasce na valne hromade pred rokem. Slajdy jsou na adrese
http://www.cstug.cz/2011/VJIMC-prezentace.pdf
Ve skutecnosti neni nutne znat presne ascii hodnotu jednotlivych tokenu, ze kterych je slozen akcentovany znak, a staci v makrech pana Olsaka (Zpravodaj 1/06) pouze deklarovat
\stringdef{Á}{A} \stringdef{á}{a} atd.

b) Pokud nepracujete v Unicode a akcentovane znaky jsou sazeny pred \', \v, \r, ..., pak je reseni jeste jednodussi - proste lokalne nadefinujete
\def\'#1{#1} apod.
a mate hotovo.

Zdravi
Jan Sustek

> ------------ Původní zpráva ------------
> Od: Zdenek Wagner <zdenek.wagner at gmail.com>
> Předmět: Re: [cstex] Text bez diakritiky
> Datum: 29.2.2012 19:07:48
> ----------------------------------------
> 2012/2/29 petr zemánek <petr.zemanek at gmail.com>:
> > Dobrý den,
> > rad bych se zeptal zkušených (ale i všech ostatních) TeXistů, zda existuje
> příkaz, který by umožnil vysázet text bez diakritiky. Co mám konkrétně na
> mysli:
> >
> Petr Olšák napsal makro, které umí konvertovat řetězce. Bohužel se mi
> to nedaří na jeho webu najít. Trochu prasácká verze je mít všechny
> znaky s diakritikou aktivní a za určitých okolností je expandovat na
> znaky bez diakritiky. V XeTeXu je možno udělat mapu pro TECkit, kde
> budou znaky přemapovány. Mapu použijete pouze při sestavování boxu pro
> měření. Asi by to šlo vyřešit i pomocí lua.
> 
> > nadefinuji si hodnotu příkazu
> >
> > \newcommand{\jmeno}{jméno včetně diakrity}
> >
> > a hledám příkaz, který by po zadání
> >
> > \prikaz{\jmeno}
> >
> > měl výstup
> >
> > jmeno vcetne diakritiky
> >
> > Potřebuji to určení výšky tohoto textu pomocí příkazu \settoheight ovšem bez
> diakritiky. Cílem je totiž vysázet text, kde nalevo je jméno autora a vpravo je
> text "Brno 2012". Má to fungovat jako šablona, proto se to musí chovat rozumně
> pro různé délky jmen. Jediné řešení, které mně napadlo je zde
> >
> > \newcommand{\VedouciPraceSTituly}[1]{\newcommand{\VedouciPrace}{#1}}
> >
> > \VedouciPraceSTituly{Plné jméno včetně titulů}
> >
> > \newlength{\sirkatitulkaorig} %% urci puvodni sirku textu se jmenem vedouciho
> >
> \settowidth{\sirkatitulkaorig}{\fontsize{18.5pt}{20pt}\selectfont{\textbf{Vedoucí
> práce: \VedouciPrace \hfill Brno 2012}}}
> >
> > \newlength{\vyskatitulka} %% urci novou vysku textu se jmenem vedouciho
> > \settoheight{\vyskatitulka}{\textbf{\scaletowidth{0.72\textwidth}{Vedoucí
> práce: \VedouciPrace}}}
> > %% jmeno vedouciho je potreba bez diakritiky
> > %% jedine funkcni je zatim pouziti \MakeTextLowercase{\VedouciPrace}
> >
> > \begin{raggedright}
> >  \ifthenelse{\lengthtest{\sirkatitulkaorig > 0.72\textwidth}}%
> >       {\textbf{\scaletowidth{0.72\textwidth}{Vedoucí práce:
> \VedouciPrace}\hfill
> >                                                  
>  \scaletoheight{0.92\vyskatitulka}{Brno 2012}}}%
> >       {{\fontsize{18.5pt}{20pt}\selectfont{\textbf{Vedoucí práce:
> \VedouciPrace \hfill Brno 2012}}}}
> > \end{raggedright}
> >
> > S pozdravem
> > Petr Zemánek
> > _______________________________________________
> > csTeX mailing list
> > csTeX at cs.felk.cvut.cz
> > http://lists.felk.cvut.cz/mailman/listinfo/cstex
> 
> 
> 
> -- 
> Zdeněk Wagner
> http://hroch486.icpf.cas.cz/wagner/
> http://icebearsoft.euweb.cz
> 
> _______________________________________________
> csTeX mailing list
> csTeX at cs.felk.cvut.cz
> http://lists.felk.cvut.cz/mailman/listinfo/cstex
> 
> 
> 




More information about the csTeX mailing list