On Mon, 26 Mar 2007 17:39:38 +0100
[EMAIL PROTECTED] wrote:

> is it possible to adjust options so as to get page numbering done in  
> words? Eg
> 
> "one" "two" ..... "eighty-nine" ... "three hundred and sixty seven" ?
> 
> Or does this require some more work/code?

I converted the macro to the plain TeX format. The only thing you need
to do now is to change the german text you own.

Wolfgang
[EMAIL PROTECTED]

[EMAIL PROTECTED] [EMAIL PROTECTED]

[EMAIL PROTECTED] [EMAIL PROTECTED]

[EMAIL PROTECTED] [EMAIL PROTECTED]

[EMAIL PROTECTED] [EMAIL PROTECTED]

[EMAIL PROTECTED]@[EMAIL PROTECTED]

[EMAIL PROTECTED]@@Numstring\expandafter{\number#1}}

\def\@@Numstring#1%
  [EMAIL PROTECTED]@numstring{#1}}%
   [EMAIL PROTECTED]

[EMAIL PROTECTED]@[EMAIL PROTECTED]

[EMAIL PROTECTED]@@Ordstring\expandafter{\number#1}}

\def\@@Ordstring#1%
  [EMAIL PROTECTED]@ordstring{#1}}%
   [EMAIL PROTECTED]

[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]

[EMAIL PROTECTED]

[EMAIL PROTECTED]
  {\ifnum\number#1<[EMAIL PROTECTED]
     #3%
   \else\ifnum\number#1<1000000000 %
     [EMAIL PROTECTED]
   \else%
     [EMAIL PROTECTED]
   \fi\fi}

[EMAIL PROTECTED]
  \expandafter\ns@@numstring%
  \ifcase%
  \ifnum#1<10 1%
  \else\ifnum#1<100 2%
  \else\ifnum#1<[EMAIL PROTECTED] 3%
  \else\ifnum#1<[EMAIL PROTECTED] 4%
  \else\ifnum#1<100000 5%
  \else\ifnum#1<1000000 6%
  \else\ifnum#1<10000000 7%
  \else\ifnum#1<100000000 8%
  \else9%
  \fi\fi\fi\fi\fi\fi\fi\fi %
  \or00000000#1% case 1: Add 8 leading zeros
  \or0000000#1%  case 2: Add 7 leading zeros
  \or000000#1%   case 3: Add 6 leading zeros
  \or00000#1%    case 4: Add 5 leading zeros
  \or0000#1%     case 5: Add 4 leading zeros
  \or000#1%      case 6: Add 3 leading zeros
  \or00#1%       case 7: Add 2 leading zeros
  \or0#1%        case 8: Add 1 leading zero
  \or#1%         case 9: Add no leading zeros
  \or%
  [EMAIL PROTECTED]
  \fi}

\def\ns@@[EMAIL PROTECTED]
  {\ifnum#1#2#3>\z@
   [EMAIL PROTECTED]
   \ifnum#4#5#6>[EMAIL PROTECTED]
   \fi%
   \ifnum#4#5#6>[EMAIL PROTECTED]
   [EMAIL PROTECTED]@neunzehn%
   \ifnum#4#5#6>[EMAIL PROTECTED]
   tau\-send%
   \ifnum#7>[EMAIL PROTECTED]
   \fi%
   [EMAIL PROTECTED]

[EMAIL PROTECTED]
  [EMAIL PROTECTED]
   [EMAIL PROTECTED]@neunzehne%
   \space%
   Mil\-lion%
   \else%
   [EMAIL PROTECTED]@neunzehns%
   \space%
   Mil\-lio\-nen%
   \fi}

[EMAIL PROTECTED]
  {\ifnum#1>[EMAIL PROTECTED]
   \ifnum#4#1>[EMAIL PROTECTED]@neunzehn#1\-\fi%
   hun\-dert%
   \ifnum#2#3>[EMAIL PROTECTED]
   \fi%
   \ifnum#2#3<20 %
   \ifnum#5#2#3>[EMAIL PROTECTED]
   \else%
   \ifnum#3>[EMAIL PROTECTED]@neunzehn#3\-und\-\fi%
   [EMAIL PROTECTED]
   #60%
   \fi}

[EMAIL PROTECTED]
  {\ifcase#1\empty\or ein\or zwei\or drei\or vier\or f\"unf\or sechs\or%
   sie\-ben\or acht\or neun\or zehn\or elf\or zw\"olf\or drei\-zehn\or%
   vier\-zehn\or f\"unf\-zehn\or sech\-zehn\or sieb\-zehn\or%
   acht\-zehn\or neun\-zehn\fi}

[EMAIL PROTECTED] [EMAIL PROTECTED]

[EMAIL PROTECTED] [EMAIL PROTECTED]

[EMAIL PROTECTED]
  {\ifcase#1\-ste%
   \or er\-ste%
   \or zwei\-te%
   \or drit\-te%
   \or vier\-te%
   \or f\"unf\-te%
   \or sech\-ste%
   \or sieb\-te%
   \or ach\-te%
   \or neun\-te%
   \or zehn\-te%
   \or elf\-te%
   \or zw\"olf\-te%
   \or drei\-zehn\-te%
   \or vier\-zehn\-te%
   \or f\"unf\-zehn\-te%
   \or sech\-zehn\-te%
   \or sieb\-zehn\-te%
   \or acht\-zehn\-te%
   \or neun\-zehn\-te%
   \fi}

[EMAIL PROTECTED]
  {\ifcase#1
   \or
   \or zwan\-zig%
   \or drei\ss ig%
   \or vier\-zig%
   \or f\"unf\-zig%
   \or sech\-zig%
   \or sieb\-zig%
   \or acht\-zig%
   \or neun\-zig%
   \fi}

[EMAIL PROTECTED]

\endinput
\input zahl2string

\long\def\zahlexamples#1
  {0 $\Longrightarrow$ #1{0}\endgraf
   7 $\Longrightarrow$ #1{7}\endgraf
   13 $\Longrightarrow$ #1{13}\endgraf
   23 $\Longrightarrow$ #1{23}\endgraf
   42 $\Longrightarrow$ #1{42}\endgraf
   99 $\Longrightarrow$ #1{99}\endgraf
   127 $\Longrightarrow$ #1{127}\endgraf
   999 $\Longrightarrow$ #1{999}\endgraf
   1000 $\Longrightarrow$ #1{1000}\endgraf
   1001 $\Longrightarrow$ #1{1001}\endgraf
   2004 $\Longrightarrow$ #1{2004}\endgraf
   2017 $\Longrightarrow$ #1{2017}\endgraf
   2029 $\Longrightarrow$ #1{2029}\endgraf
   9999 $\Longrightarrow$ #1{9999}\endgraf
   10000 $\Longrightarrow$ #1{10000}\endgraf
   101101 $\Longrightarrow$ #1{101101}\endgraf
   999999 $\Longrightarrow$ #1{999999}\endgraf
   1000000 $\Longrightarrow$ #1{1000000}\endgraf
   1234567 $\Longrightarrow$ #1{1234567}\endgraf
   123456789 $\Longrightarrow$ #1{123456789}\endgraf
   101101101 $\Longrightarrow$ #1{101101101}\endgraf
   999999999 $\Longrightarrow$ #1{999999999}}

\zahlexamples{\numstr}

\zahlexamples{\ordstr}

\bye
_______________________________________________
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context

Reply via email to