2009-09-16 12 views
10

Kiedy piszę raporty z laboratorium w LaTeX, ostatnio musiałem stworzyć pole podpisu na formularzu.Jak utworzyć pole podpisu w LaTeX

    Trondheim 4.september 2009 


______________________   ___________________________ 
    Ivar Nesje      Team mate's name 

Problem polegał na tym, że nie mogę znaleźć łatwy sposób to zrobić, więc po wielu poszukiwaniach w sieci wymyśliłem tego prostego rozwiązania

\newcommand{\doubleSignature}[3]{ 
\begin{minipage}[c]{\textwidth} 
\vspace{2cm} 

\makebox[12cm][c]{ 
#1, \today 
} 
\vspace{3cm} 

\makebox[12cm][c]{ 
\hfill \makebox[5cm][c] {\hrulefill} \hfill \makebox[5cm][c] {\hrulefill} \hfill 
} 
\makebox[12cm][c]{ 
\hfill #2 \hfill #3 \hfill 
} 
\vspace{1cm} 
\end{minipage} 
} 

To pozwoliło mi na typ;

\doubleSignature{Trondheim}{Ivar Nesje}{Team mate's name} 

Aby osiągnąć pożądany wynik. Jeśli któryś z was ma inny sposób robienia tego, nie używając klasy dokumentu listowego, byłbym bardzo zadowolony, słysząc wasze sugestie.

Odpowiedz

13

Myślę, że będę pracował od \rule[<raise>]{<width>}{<thickness>}. Ponieważ punktem odniesienia jest lewy dolny róg, prawdopodobnie nie potrzebujesz nawet opcjonalnego argumentu podnoszenia. Coś jak:

\newcommand{\doublesignature}[3][Ivar Nesje]{% 
    \parbox{\textwidth}{ 
    \centering #3 \today\\ 
    \vspace{2cm} 

    \parbox{7cm}{ 
     \centering 
     \rule{6cm}{1pt}\\ 
     #1 
    } 
    \hfill 
    \parbox{7cm}{ 
     \centering 
     \rule{6cm}{1pt}\\ 
     #2 
    } 
    } 
} 

Ponownie zamówiłem twoje argumenty, aby twoje imię było opcjonalne.

2

Zakładając, że nie ma dodatkowych ograniczeń formatowania, pewnie byłby używany tabular środowisko zamiast pól i użyłbym \rule{length}{width} zamiast \hrulefill:

\newcommand{\doubleSignature}[3]{ 
\vspace{2cm} 

\begin{center} 
    #1, \today 
\end{center} 
\vspace{3cm} 

\noindent 
\begin{tabular}{lcl} 
    \rule{5cm}{1pt} & \hspace{2cm} & \rule{5cm}{1pt} \\ 
    #2 & & #3 
\end{tabular} 
\vspace{1cm} 
} 
Powiązane problemy