PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Caption



W2K2011
22-08-2012, 10:39
Hallo,

eine kurze Frage zum Befehl \caption. Ich habe mir einen neuen Befehl definiert (s.u. TFrame). Wenn ich diesen Befehl in einer caption-Anweisung aufrufe, kompiliert TexnicCenter mein Projekt nicht mehr durch. Ich habe bereits caption2 eingebunden.



\caption{Beispieltext $\TFrame{4M}$}




\newcommand{\TFrame}[1]{%
\begin{pspicture}(0.0, 0.32)%
\psframebox[framesep=1pt,%
boxsep=1pt,%
linewidth=0.5pt,%
linecolor=black,%
fillstyle=solid]{#1}%
\end{pspicture}%
}


Was kann ich denn da machen?

W2K2011
22-08-2012, 10:49
Anbei noch der Code meines Hauptdokumentes. Wollte sicherstellen, dass keine Informationen fehlen, die zu einer raschen Lösung des Problems erforderlich sind.

Danke noch im Voraus.


\documentclass[fontsize=9pt, headings=small, parskip=half, twocolumn, leqno]{scrartcl}

\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc} % Dateicodierung
\usepackage[a4paper, top=25mm, bottom=30mm, left=20mm, right=20mm]{geometry}
\usepackage[scaled]{helvet} % sehr ähnlich zu ARial, aber mit Mathe-Unterstützung
\usepackage[EULERGREEK]{sansmath}
\usepackage{cuted}

% ************************************************** **************************
% ************************************************** **************************
% PACKAGES
% ************************************************** **************************
\usepackage{textcomp} %
%\usepackage{color} % Farben
%\usepackage{wrapfig} % Textumflossene Grafiken
% ************************************************** **************************
\usepackage{amsmath}
% ************************************************** **************************
\usepackage{psfrag} %
% ************************************************** **************************
% ************************************************** **************************
\usepackage{pstricks} % PSTricks
\usepackage{pstricks-add} %
%\usepackage{pst-3dplot} % PSTricks-3DPlot
%\usepackage{pst-gr3d} % PSTricks
%\usepackage{pst-grad} % PSTricks
%\usepackage{pst-vue3d} % PSTricks-3D-Umgebungen
%\usepackage{pst-plot} % PSTricks-Plot-Umgebungen
\usepackage{microtype} %
% ************************************************** **************************

% ************************************************** **************************
\usepackage{paralist}
\usepackage{soul} % Text farbig hinterlegen
\usepackage{fancyvrb} %
\usepackage{chngpage} %
\usepackage{listliketab} %
\usepackage{colortbl} % Tabellen einfärben
\usepackage{enumitem} % Listen
\usepackage{bigdelim} %
\usepackage{rotating} %
\usepackage{graphicx} %
\usepackage{subfigure} % Unterabbildung
\usepackage{supertabular}
\usepackage[verbose]{placeins} % \FloatBarrier
\usepackage{caption2} %

% ************************************************** **************************

\setlength{\columnsep}{20pt}
\renewcommand*\familydefault{\sfdefault} %% Only if the base font of the document is to be sans serif
\sansmath
\flushbottom
\thispagestyle{empty}
\pagestyle{empty}

% ************************************************** ***************************

\newbox\tempbox
\newenvironment{nomenclature}{%
\newcommand\entry[2]{%
\setbox\tempbox\hbox{##1.\quad}
\hangindent\wd\tempbox\noindent{##1}\quad\ignoresp aces##2\par}
\section*{NOMENCLATURE}}{\par\addvspace{12pt}}

% Acknowledgement environment

\newenvironment{acknowledgment}{%
\section*{ACKNOWLEDGMENT}}{\par\addvspace{12pt}}


%\input{doc/newcommand.tex}

\begin{document}
\pagestyle{empty}
\date{}
\maketitle
\thispagestyle{empty}
Hier kommt der Text
%\input{11_SECTION-Conclusion/SECTION-Conclusion.tex}
\end{document}

W2K2011
22-08-2012, 10:54
bzw. wenn ich das Caption-Paket einbinde, passiert folgendes:

latex > Missing \endcsname inserted.
latex > ...Beispieltext $\TFrame{4M}}

u_fischer
22-08-2012, 11:08
\DeclareRobustCommand{\TFrame}{...}

boxsep erwartet meiner Ansicht nach übrigens keine Länge als Argument, sondern true oder false.

W2K2011
22-08-2012, 11:10
Muss ich die vollständige Definition meines TFrame-Befehls in die geschweiften Klammern kopieren?

W2K2011
22-08-2012, 11:14
ah, ok - das scheint zu funktionieren:



\DeclareRobustCommand{\TFrame}[1]{%
\begin{pspicture}(0.0, 0.32)%
\psframebox[framesep=1pt,%
%boxsep=1pt,%
linewidth=0.5pt,%
linecolor=black,%
fillstyle=solid]{#1}%
\end{pspicture}%
}

Donalduck
22-08-2012, 11:15
Ja, DeclareRobustCommand ist hier ein Ersatz für newcommand, der verhindert dass dein Befehl zerbricht.