Problema de idioma de la clase de factura

Problema de idioma de la clase de factura

Me gustaría cambiar la descripción personalizada en la invoiceclase con una descripción personalizada en griego.

Problemas:

  1. Podría cambiar algunas descripciones en inglés que están en inglés pero no puedo cambiar la descripción de la tabla.
  2. Cambia el $ al euro.

¿Hay alguna manera de cambiar todo eso? Gracias por sus respuestas de antemano.

\documentclass{invoice} 

\usepackage[english,greek]{babel}

\usepackage[utf8]{inputenc}

\usepackage[T1]{fontenc}

\def \tab {\hspace*{3ex}} 

\begin{document}

\hfil{\Huge\bf Οδοντιατρείο Πέτρου Μουρούζη}\hfil 
\bigskip\break
\hrule 

Κ.Καραμανλή 77 \hfill (2310) 911-890 \\ 
Θεσσαλονίκη, 54642 \hfill \selectlanguage{english}{[email protected]}
\\ \\
\selectlanguage{greek}
{\bf Οικονομική ανάλυση εργασιών:} \\
\tab Αθανάσιος \\ 
\tab  \\ 
{\bf Ημερομηνία:} \\
\tab \today \\ 
\selectlanguage{english}

\begin{invoiceTable}

\selectlanguage{greek}

\feetype{Οδοντιατρικές εργασίες} 

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 25-26-27}{1}{750}

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 16-15-14}{1}{750}

\selectlanguage{greek}

\hourrow{Ολοκεραμικές στεφάνες, 36-37-47}{3}{250}

\selectlanguage{greek}

\hourrow{Ολοκεραμική στεφάνη σε εμφύτευμα, 46}{1}{350}


\selectlanguage{greek}

\feetype{Προσωρινές αποκαταστάσεις} 

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 25-26-27}{1}{80}

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 16-15-14}{1}{80}

\selectlanguage{greek}

\hourrow{Ολοκεραμικές στεφάνες, 36-37-47}{3}{50}

\selectlanguage{greek}

\hourrow{Ολοκεραμική στεφάνη σε εμφύτευμα 46}{1}{80}

\subtotal 



\feetype{Expenses} 

\feerow{Web Hosting: October, 2012}{60} 

\end{invoiceTable}



\end{document}

Respuesta1

Como no hablo griego, sólo puedo mostrarte dónde cambiar las palabras en inglés al griego. La traducción por favor hazla tú mismo.

Eche un vistazo al siguiente MWe. Agregué allí un Greek:donde tienes que traducir el siguiente texto en inglés, por ejemplo:

        {\bf Greek:Subtotal} & {\bf \total{subhours} hours} &  & {\bf \$\total{subcost}}
%            ^^^^^^^^^^^^^^

te muestra que debes traducir Subtotal.

Para incluir el símbolo del euro en la factura, agregue las dos líneas

\usepackage{eurosym} % <================================================
\renewcommand{\$}{\euro} % <============================================

al código.

Con el MWE completo

\documentclass{invoice} 

\usepackage[english,greek]{babel}

\usepackage[utf8]{inputenc}

\usepackage[T1]{fontenc}
\usepackage{eurosym} % <================================================

\def \tab {\hspace*{3ex}} 
\renewcommand{\$}{\euro} % <============================================


\makeatletter
\renewenvironment{invoiceTable}{
    % Create a new row from title, unit quantity, unit rate, and unit name
    \newcommand*{\unitrow}[4]{%
         \addtocounter{cost}{1000 * \real{##2} * \real{##3}}%
         \addtocounter{subcost}{1000 * \real{##2} * \real{##3}}%
         ##1 & \formatNumber{##2} ##4 & \$\formatNumber{##3} & \$\FPmul{\cost}{##2}{##3}\formatNumber{\cost}%
         \\
    }
    % Create a new row from title and expense amount
    \newcommand*{\feerow}[2]{%
         \addtocounter{cost}{1000 * \real{##2}}%
         \addtocounter{subcost}{1000 * \real{##2}}%
         ##1 & & \$\formatNumber{##2} & \$\FPmul{\cost}{##2}{1}\formatNumber{\cost}%
         \\
    }

    \newcommand{\subtotalNoStar}{
        {\bf Greek:Subtotal} & {\bf \total{subhours} hours} &  & {\bf \$\total{subcost}}  % <================================================
        \setcounter{subcost}{0}
        \setcounter{subhours}{0}
        \\*[1.5ex]
    }
    \newcommand{\subtotalStar}{
        {\bf Greek:Subtotal} & & & {\bf \$\total{subcost}} % <================================================
        \setcounter{subcost}{0}
        \\*[1.5ex]
    }
    \newcommand{\subtotal}{
         \hline
         \@ifstar
         \subtotalStar%
         \subtotalNoStar%
    }

    % Create a new row from date and hours worked (use stored fee type and hourly rate)
    \newcommand*{\hourrow}[3]{%
        \addtocounter{hours}{1000 * \real{##2}}%
        \addtocounter{subhours}{1000 * \real{##2}}%
        \unitrow{##1}{##2}{##3}{hours}%
    }
    \renewcommand{\tabcolsep}{0.8ex}
    \setlength\LTleft{0pt}
    \setlength\LTright{0pt}
    \begin{longtable}{@{\extracolsep{\fill}\hspace{\tabcolsep}} l r r r }
    \hline
    {\bf Greek:Description of Services} & \multicolumn{1}{c}{\bf Greek:Quantity} & \multicolumn{1}{c}{\bf Greek:Unit Price} & \multicolumn{1}{c}{\bf Greek:Amount} \\*  % <================================================
    \hline\hline
    \endhead
}{
    \hline\hline\hline
    {\bf Greek:Balance Due} & & & {\bf \$\total{cost}} \\ % <================================================
    \end{longtable}
}
\makeatother



\begin{document}

\hfil{\Huge\bf Οδοντιατρείο Πέτρου Μουρούζη}\hfil 
\bigskip\break
\hrule 

Κ.Καραμανλή 77 \hfill (2310) 911-890 \\ 
Θεσσαλονίκη, 54642 \hfill \selectlanguage{english}{[email protected]}
\\ \\
\selectlanguage{greek}
{\bf Οικονομική ανάλυση εργασιών:} \\
\tab Αθανάσιος \\ 
\tab  \\ 
{\bf Ημερομηνία:} \\
\tab \today \\ 

\selectlanguage{english}
\begin{invoiceTable}

\selectlanguage{greek}

\feetype{Οδοντιατρικές εργασίες} 

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 25-26-27}{1}{750}

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 16-15-14}{1}{750}

\selectlanguage{greek}

\hourrow{Ολοκεραμικές στεφάνες, 36-37-47}{3}{250}

\selectlanguage{greek}

\hourrow{Ολοκεραμική στεφάνη σε εμφύτευμα, 46}{1}{350}


\selectlanguage{greek}

\feetype{Προσωρινές αποκαταστάσεις} 

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 25-26-27}{1}{80}

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 16-15-14}{1}{80}

\selectlanguage{greek}

\hourrow{Ολοκεραμικές στεφάνες, 36-37-47}{3}{50}

\selectlanguage{greek}

\hourrow{Ολοκεραμική στεφάνη σε εμφύτευμα 46}{1}{80}

\subtotal 



\feetype{Greek:Expenses}  % <================================================

\feerow{Greek:Web Hosting: October, 2012}{60}  % <================================================

\end{invoiceTable}



\end{document}

obtienes el resultado:

pdf resultante

Con los cambios mencionados en los comentarios obtienes el código:

\documentclass{invoice} 

\usepackage[english,greek]{babel}

\usepackage[utf8]{inputenc}

\usepackage[T1]{fontenc}
\usepackage{eurosym} % <================================================

\def \tab {\hspace*{3ex}} 
\renewcommand{\$}{\euro} % <============================================


\makeatletter
\renewenvironment{invoiceTable}{
    % Create a new row from title, unit quantity, unit rate, and unit name
    \newcommand*{\unitrow}[4]{%
         \addtocounter{cost}{1000 * \real{##2} * \real{##3}}%
         \addtocounter{subcost}{1000 * \real{##2} * \real{##3}}%
         ##1 & \formatNumber{##2} ##4 & \$\formatNumber{##3} & \$\FPmul{\cost}{##2}{##3}\formatNumber{\cost}%
         \\
    }
    % Create a new row from title and expense amount
    \newcommand*{\feerow}[2]{%
         \addtocounter{cost}{1000 * \real{##2}}%
         \addtocounter{subcost}{1000 * \real{##2}}%
         ##1 & & \$\formatNumber{##2} & \$\FPmul{\cost}{##2}{1}\formatNumber{\cost}%
         \\
    }

    \newcommand{\subtotalNoStar}{%
        {\selectlanguage{greek}\textbf{ΤΕΛΙΚΟ ΠΟΣΟ}} & {\textbf{\total{subhours}}\selectlanguage{greek} \textbf{Greek:hours}} &  & {\bf \$\total{subcost}}% <================================================
        \setcounter{subcost}{0}%
        \setcounter{subhours}{0}%
        \\*[1.5ex]
    }
    \newcommand{\subtotalStar}{%
        {\bf Greek:Subtotal} & & & {\bf \$\total{subcost}}% <================================================
        \setcounter{subcost}{0}
        \\*[1.5ex]
    }
    \newcommand{\subtotal}{%
         \hline
         \@ifstar
         \subtotalStar%
         \subtotalNoStar%
    }

    % Create a new row from date and hours worked (use stored fee type and hourly rate)
    \newcommand*{\hourrow}[3]{%
        \addtocounter{hours}{1000 * \real{##2}}%
        \addtocounter{subhours}{1000 * \real{##2}}%
        \unitrow{##1}{##2}{##3}{\selectlanguage{greek} Greek:hours}%
    }
    \renewcommand{\tabcolsep}{0.8ex}
    \setlength\LTleft{0pt}
    \setlength\LTright{0pt}
    \begin{longtable}{@{\extracolsep{\fill}\hspace{\tabcolsep}} l r r r }
    \hline
    {\bf Greek:Description of Services} & \multicolumn{1}{c}{\bf Greek:Quantity} & \multicolumn{1}{c}{\bf Greek:Unit Price} & \multicolumn{1}{c}{\bf Greek:Amount} \\*  % <================================================
    \hline\hline
    \endhead
}{
    \hline\hline\hline
    {\bf Greek:Balance Due} & & & {\bf \$\total{cost}} \\ % <================================================
    \end{longtable}
}
\makeatother



\begin{document}

\hfil{\Huge\bf Οδοντιατρείο Πέτρου Μουρούζη}\hfil 
\bigskip\break
\hrule 

Κ.Καραμανλή 77 \hfill (2310) 911-890 \\ 
Θεσσαλονίκη, 54642 \hfill \selectlanguage{english}{[email protected]}
\\ \\
\selectlanguage{greek}
{\bf Οικονομική ανάλυση εργασιών:} \\
\tab Αθανάσιος \\ 
\tab  \\ 
{\bf Ημερομηνία:} \\
\tab \today \\ 

\selectlanguage{english}
\begin{invoiceTable}

\selectlanguage{greek}

\feetype{Οδοντιατρικές εργασίες} 

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 25-26-27}{1}{750}

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 16-15-14}{1}{750}

\selectlanguage{greek}

\hourrow{Ολοκεραμικές στεφάνες, 36-37-47}{3}{250}

\selectlanguage{greek}

\hourrow{Ολοκεραμική στεφάνη σε εμφύτευμα, 46}{1}{350}


\selectlanguage{greek}

\feetype{Προσωρινές αποκαταστάσεις} 

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 25-26-27}{1}{80}

\selectlanguage{greek}

\hourrow{Ολοκεραμική γέφυρα, 16-15-14}{1}{80}

\selectlanguage{greek}

\hourrow{Ολοκεραμικές στεφάνες, 36-37-47}{3}{50}

\selectlanguage{greek}

\hourrow{Ολοκεραμική στεφάνη σε εμφύτευμα 46}{1}{80}

\subtotal 



\feetype{Greek:Expenses}  % <================================================

\feerow{Greek:Web Hosting: October, 2012}{60}  % <================================================

\end{invoiceTable}



\end{document}

y el resultado:

ingrese la descripción de la imagen aquí

Por supuesto, hay que traducir al griego, luego la tabla se vuelve a hacer más pequeña...

Respuesta2

Para cambiar la moneda podrías adaptarte.esteresponde y agrega lo siguiente:

\renewcommand{\$}{\euro}.

¿Por qué lo haces \selectlanguage{english}todo el tiempo, por ejemplo antes \begin{invoiceTable}?

información relacionada