Problema de idioma da classe de fatura

Problema de idioma da classe de fatura

Gostaria de alterar a descrição personalizada da invoiceclasse por uma descrição personalizada em grego.

Problemas:

  1. Eu poderia alterar algumas descrições em inglês que estão em inglês, mas não consigo alterar a descrição da tabela.
  2. Mude o $ para euro.

Existe alguma maneira de mudar tudo isso? Obrigado por suas respostas antecipadamente.

\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}

Responder1

Como não falo grego, só posso mostrar onde alterar as palavras em inglês para grego. A tradução, por favor, faça você mesmo.

Por favor, dê uma olhada no seguinte MWe. Adicionei lá um Greek:local onde você deve traduzir o seguinte texto em inglês, por exemplo:

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

mostra para você traduzir Subtotal.

Para inserir o símbolo do euro na fatura, adicione as duas linhas

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

ao código.

Com o 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}

você obtém o resultado:

pdf resultante

Com as alterações mencionadas nos comentários você obtém o 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}

e o resultado:

insira a descrição da imagem aqui

Claro que tem que traduzir para o grego, aí a mesa fica menor de novo...

Responder2

Para mudar a moeda você pode adaptaresseresponda e adicione o seguinte:

\renewcommand{\$}{\euro}.

Por que você faz isso \selectlanguage{english}o tempo todo, por exemplo antes \begin{invoiceTable}?

informação relacionada