Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Zeilenumbruch in \makebox

872 views
Skip to first unread message

Peter Mairhofer

unread,
Dec 6, 2010, 6:34:35 AM12/6/10
to
Hallo,

Eine Kleinigkeit hᅵtt' ich noch ;-)

Ich erstellt mit Inkscape Grafiken die ich mit PDF+LaTeX bzw. EPS+LaTeX
exportiere.

Inkscape exportiert daraufhin das Bild ohne Text und erstellt zusᅵtzlich
eine *.tex Datei die den Text enthᅵlt. Der Text wird mit einer
picture-Umgebung hinzugefᅵgt. Ein Beispieleintrag fᅵr einen Text lautet:

\put(0.60429936,0.20944793){\color[rgb]{0,0,0}\makebox(0,0)[lb]{\smash{Analog
Reconstr}}}

Nun hᅵtte ich gerne einen manuell Zeilenumbruch zwischen Analog und
Reconstr.

Ich habe bereits versucht:
1.) \\ - hier bekomme ich Compilerfehler
2.) \newline - wird ignoriert

Gibt es eine einfache Lᅵsung?

Falls nein wᅵre es nicht soo schlimm. Bis jetzt erstelle ich in diesem
Fall einfach 2 Textboxen. Aber es wᅵre halt netter wenn ich das in einer
unterbringen kᅵnnte.

LG Peter

Ulrike Fischer

unread,
Dec 6, 2010, 8:05:51 AM12/6/10
to
Am Mon, 06 Dec 2010 12:34:35 +0100 schrieb Peter Mairhofer:


> \put(0.60429936,0.20944793){\color[rgb]{0,0,0}\makebox(0,0)[lb]{\smash{Analog
> Reconstr}}}
>

> Nun hätte ich gerne einen manuell Zeilenumbruch zwischen Analog und

> Reconstr.
>
> Ich habe bereits versucht:
> 1.) \\ - hier bekomme ich Compilerfehler
> 2.) \newline - wird ignoriert
>

> Gibt es eine einfache Lösung?

eine tabular in der \makebox.


--
Ulrike Fischer

Peter Mairhofer

unread,
Dec 6, 2010, 8:47:59 AM12/6/10
to
Hi,

Ok, du meinst das ist eine Einschränkung der Box?

Hmm, tabular macht das ganze schon sehr komplex...

Da bleib ich lieber bei manuellen Zeilen.

Oder:

Soweit ich weiss ist es in LaTeX schwer, mehrere optionale Argumente zu
verlangen. Ansonsten wäre ich mit so einer Lösung auch zufrieden:

\ML{ErsteZeile}{Zweite}{Dritte}
\ML{Nur}{Zwei Zeilen}

ist es überhaupt möglich ein \newcommand so ein Makro zu erstellen
welches das Tabular kapseln würde?

Fürs zentrieren z.B. ist es einfach da ich nur ein Argument benötige:

\newcommand{\C}[1]{\makebox[0pt]{#1}}

dann könnte ich in Inkscape z.B. schreiben:

\C{ML{Erster}{Block}}

\C{ML{Zweiter}{(komplizierter)}{Block}}

LG Peter

Ulrike Fischer

unread,
Dec 6, 2010, 8:52:36 AM12/6/10
to
Am Mon, 06 Dec 2010 14:47:59 +0100 schrieb Peter Mairhofer:

>>> \put(0.60429936,0.20944793){\color[rgb]{0,0,0}\makebox(0,0)[lb]{\smash{Analog
>>> Reconstr}}}
>>>
>>> Nun hätte ich gerne einen manuell Zeilenumbruch zwischen Analog und
>>> Reconstr.

>> eine tabular in der \makebox.



> Ok, du meinst das ist eine Einschränkung der Box?

Ja, sie einzeilig.



> Hmm, tabular macht das ganze schon sehr komplex...
>
> Da bleib ich lieber bei manuellen Zeilen.
>
> Oder:
>
> Soweit ich weiss ist es in LaTeX schwer, mehrere optionale Argumente zu
> verlangen. Ansonsten wäre ich mit so einer Lösung auch zufrieden:
>
> \ML{ErsteZeile}{Zweite}{Dritte}
> \ML{Nur}{Zwei Zeilen}
>
> ist es überhaupt möglich ein \newcommand so ein Makro zu erstellen
> welches das Tabular kapseln würde?
>
> Fürs zentrieren z.B. ist es einfach da ich nur ein Argument benötige:
>
> \newcommand{\C}[1]{\makebox[0pt]{#1}}

Tabelle können ja auch einzeilig sein, also

\newcommand{\C}[1]{\makebox[0pt]{\begin{tabular}{c}#1\end{tabular}}}

und dann \C{eine Zeile} und \C{zeile 1\\zeile 2 \\zeile 3}

--
Ulrike Fischer

Peter Mairhofer

unread,
Dec 6, 2010, 9:02:27 AM12/6/10
to
Am 06.12.2010 14:52, schrieb Ulrike Fischer:
> Am Mon, 06 Dec 2010 14:47:59 +0100 schrieb Peter Mairhofer:
>> [...]

>> Soweit ich weiss ist es in LaTeX schwer, mehrere optionale Argumente zu
>> verlangen. Ansonsten wäre ich mit so einer Lösung auch zufrieden:
>>
>> \ML{ErsteZeile}{Zweite}{Dritte}
>> \ML{Nur}{Zwei Zeilen}
>>
>> ist es überhaupt möglich ein \newcommand so ein Makro zu erstellen
>> welches das Tabular kapseln würde?
>>
>> Fürs zentrieren z.B. ist es einfach da ich nur ein Argument benötige:
>>
>> \newcommand{\C}[1]{\makebox[0pt]{#1}}
>
> Tabelle können ja auch einzeilig sein, also
>
> \newcommand{\C}[1]{\makebox[0pt]{\begin{tabular}{c}#1\end{tabular}}}
>
> und dann \C{eine Zeile} und \C{zeile 1\\zeile 2 \\zeile 3}

Coool! Danke, funktioniert super!

Hab jetzt für zentrierten Text:

\newcommand{\C}[1]{\makebox[0pt]{#1}}

und zentriert mehrzeilig:

\newcommand{\CM}[1]{\C{\begin{tabular}{c}#1\end{tabular}}}

Danke nochmals!

LG Peter

adrianb...@gmail.com

unread,
Dec 10, 2014, 2:58:49 AM12/10/14
to
Hey zusammen,
hatte das gleiche Problem und bin auf euren Thread gestoßen.
Bei mir funktioniert das ganze innerhalb meines Latexdokuments super, aber sobald ich in meinem Inkscape bild \C{Zeile1\\zeile2}schreibe, bekomme ich einige Error:
1. ! Paragraph ended before \makesm@sh was complete.
2.! Undefined control sequence.
\@imakepicbox ...unitlength {\mb@l #4\mb@r }\mb@b

und noch einige mehr...
Mache ich etwas falsch?
(habe sowohl die newcommand version von Ulrike wie von Peter versucht...
Vg
Max

Ulrike Fischer

unread,
Dec 10, 2014, 4:38:03 AM12/10/14
to
Am Tue, 9 Dec 2014 23:58:48 -0800 (PST) schrieb
adrianb...@gmail.com:

>> Am 06.12.2010 14:52, schrieb Ulrike Fischer:

> Hey zusammen,
> hatte das gleiche Problem und bin auf euren Thread gestoßen.


Und jetzt erwartest du, dass irgendjemand sich an diesen Thread von
vor 4 Jahren erinnert und anhand der Schnipsel, die du kopiert hast,
dein Problem verstehen kann?

--
Ulrike Fischer
http://www.troubleshooting-tex.de/
0 new messages