Re: Breite von Satzobjekten bestimmen

"Uwe Ziegenhagen" (via tex-d-l Mailing List) <[email protected]> Sun, 5 Apr 2026 17:41:59 +0200
Newsgroups gmane.comp.tex.german
Message-ID <CAML7JCgGFLaHYmUSyUsbAuO0K8og4Wf6GNPUK49jwxrAtDp_cw@mail.gmail.com>
This is a multi-part message in MIME format...

------------=_1775403821-65811-22
Content-Type: multipart/alternative; boundary="000000000000311eca064eb8665b"

--000000000000311eca064eb8665b
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hilft dir das vielleicht?

https://tex.stackexchange.com/questions/359585/what-unit-of-measurement-is-=
widthof-using

\widthof klingt irgendwie danach.

Uwe

Am So., 5. Apr. 2026 um 12:39 Uhr schrieb Dirk H=C3=BCnniger <
[email protected]>:

> Hallo Jakob,
>
> Vielen Dank f=C3=BCr deinen Hinweis auf das Wort umbrechen. Davon hatte i=
ch
> noch nie geh=C3=B6rt. Bei der Sache mit tabularx bin ich leider nicht wei=
ter
> gekommen. So wie ich das verstehe werden zuerst die Breiten aller
> Spalten, die kein X haben,  berechnet und diese Summe wird dann von der
> vorgegebenen Maximalbreite abgezogen und das Ergebnis durch die Anzahl
> Spalten mit X geteilt und dann wird dieser Wert als Spaltenbreite der
> Spalten mit X festgelegt. Leider kann ich aber dadurch auch nicht die
> unten erkl=C3=A4rte Minimalbreite eines Satzobjekts bestimmen. Folgendes
> Minimalbeispiel
>
> \documentclass{article}
> \usepackage{tabularx}
> \begin{document}
> \newsavebox{\mybox}\sbox{\mybox}{\begin{tabularx}{13pt}{|X|}
> $\begin{array}{cc}a&b\end{array}$
> \end{tabularx}}\the\wd\mybox{}
> \end{document}
>
> Liefert immer noch die Ausgabe 13.0 pt. Ich will halt herausfinden wie
> breit ein Satzobjekt minimal seien muss egal wie h=C3=A4ufig es umbrochen=
 wird.
>
> Viele Gr=C3=BC=C3=9Fe Dirk
>
> On 4/4/26 21:42, Jakob Mendel (via tex-d-l Mailing List) wrote:
> > Hallo Dirk,
> >
> > sieh Dir mal das Paket tabularx an.  Es stellt den Spaltentyp X
> > bereit, der eine Erweiterung des Spaltentyps p ist und tun sollte, was
> > Dir vorschwebt.
> >
> > Viel Erfolg
> > Jakob
> >
> > P. S. M. W. hei=C3=9Ft das Verb zu "Umbruch" "umbrechen" (Betonung auf =
der
> > zweiten Silbe) mit den Formen "zu umbrechen" und "umbrochen werden".
> > Man will ja keinen Zaun umbrechen (Betonung auf der ersten Silbe),
> > damit er flach auf der Erde liegt.
> >
> >
> > Am 04.04.26 um 13:07 schrieb Dirk H=C3=BCnniger (via tex-d-l Mailing Li=
st):
> >> Hallo,
> >>
> >> ich mache mir derzeit wieder Gedanken zum Tabellensatz in LaTeX. Ziel
> >> ist es die optimalen Breiten der Spalten einer Tabelle algorithmisch
> >> zu bestimmen. Hierzu kann es erforderlich sein den Text innerhalb
> >> einer Tabellenzelle umzubrechen. Hierf=C3=BCr kenne ich nur die
> >> M=C3=B6glichkeit das mit einer Direktive der Form p{1cm} o.=C3=A4. im
> >> Tabellenkopf zu fordern. Zu bestimmen ist also was ich anstelle von
> >> 1cm hinschreiben soll. Mir ist aufgefallen das bestimmte Satzobjekte
> >> nicht umgebrochen werden k=C3=B6nnen. Beispiel (a) hierzu:
> >>
> >>   $\begin{array}{cc}a&b\end{array}$
> >>
> >> Andere jedoch schon. Beispiel (b) hierzu:
> >>
> >> a b c d
> >>
> >> Mein Ziel ist nun in einem Programm diese beiden F=C3=A4lle erkennen u=
nd
> >> unterscheiden zu k=C3=B6nnen. Konkret will ich f=C3=BCr jedes Satzobje=
kt
> >> bestimmen wie breit es minimal sein muss. Minimal bedeutet dabei das
> >> es so h=C3=A4ufig als m=C3=B6glich umgebrochen wird um eine m=C3=B6gli=
chst geringe
> >> Breite zu erhalten. In Beispiel (b) erreiche ich diese mit folgendem
> >> Code:
> >>
> >> \documentclass{article}
> >> \begin{document}
> >> \newsavebox{\mybox}\sbox{\mybox}{\begin{tabular}{|p{1pt}|}
> >> a b c d
> >> \end{tabular}}\the\wd\mybox{}
> >> \end{document}
> >>
> >> Die Ausgabe ist 13.0pt
> >>
> >> Die analoge Konstruktion f=C3=BCr Beispiel (a) w=C3=A4re dann:
> >>
> >> \documentclass{article}
> >> \begin{document}
> >> \newsavebox{\mybox}\sbox{\mybox}{\begin{tabular}{|p{1pt}|}
> >> $\begin{array}{cc}a&b\end{array}$
> >> \end{tabular}}\the\wd\mybox{}
> >> \end{document}
> >>
> >> Die Ausgabe ist wiederum 13.0pt. Hier schreibt LaTeX nach rechts =C3=
=BCber
> >> den Rand hinaus, so dass die Ausgabe kleiner ist als der tats=C3=A4chl=
ich
> >> ben=C3=B6tigt Platz. Gibt eine M=C3=B6glichkeit um die oben erkl=C3=A4=
rte minimale
> >> Breite eines Satzobjektes zu bestimmen?
> >>
> >> Viele Gr=C3=BC=C3=9Fe Dirk
> >>
> >>
> >>
> >
> >
> >
>
> --
> FAQ: http://texfragen.de/
> Durchsuchbares Archiv: https://www.listserv.dfn.de/sympa/arc/tex-d-l
> Unsubscribe/Verwaltung: https://www.listserv.dfn.de/sympa/info/tex-d-l



--=20
Dr. Uwe Ziegenhagen
0179-7476050
<http://www.uweziegenhagen.de>

--000000000000311eca064eb8665b
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:times ne=
w roman,serif">Hilft dir das vielleicht?</div><div class=3D"gmail_default" =
style=3D"font-family:times new roman,serif"><br></div><div class=3D"gmail_d=
efault" style=3D"font-family:times new roman,serif"><a href=3D"https://tex.=
stackexchange.com/questions/359585/what-unit-of-measurement-is-widthof-usin=
g">https://tex.stackexchange.com/questions/359585/what-unit-of-measurement-=
is-widthof-using</a></div><div class=3D"gmail_default" style=3D"font-family=
:times new roman,serif"><br></div><div class=3D"gmail_default" style=3D"fon=
t-family:times new roman,serif">\widthof klingt irgendwie danach.</div><div=
 class=3D"gmail_default" style=3D"font-family:times new roman,serif"><br></=
div><div class=3D"gmail_default" style=3D"font-family:times new roman,serif=
">Uwe</div></div><br><div class=3D"gmail_quote gmail_quote_container"><div =
dir=3D"ltr" class=3D"gmail_attr">Am So., 5. Apr. 2026 um 12:39=C2=A0Uhr sch=
rieb Dirk H=C3=BCnniger &lt;<a href=3D"mailto:[email protected]">tex-=
[email protected]</a>&gt;:<br></div><blockquote class=3D"gmail_quote" sty=
le=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);paddi=
ng-left:1ex">Hallo Jakob,<br>
<br>
Vielen Dank f=C3=BCr deinen Hinweis auf das Wort umbrechen. Davon hatte ich=
 <br>
noch nie geh=C3=B6rt. Bei der Sache mit tabularx bin ich leider nicht weite=
r <br>
gekommen. So wie ich das verstehe werden zuerst die Breiten aller <br>
Spalten, die kein X haben,=C2=A0 berechnet und diese Summe wird dann von de=
r <br>
vorgegebenen Maximalbreite abgezogen und das Ergebnis durch die Anzahl <br>
Spalten mit X geteilt und dann wird dieser Wert als Spaltenbreite der <br>
Spalten mit X festgelegt. Leider kann ich aber dadurch auch nicht die <br>
unten erkl=C3=A4rte Minimalbreite eines Satzobjekts bestimmen. Folgendes <b=
r>
Minimalbeispiel<br>
<br>
\documentclass{article}<br>
\usepackage{tabularx}<br>
\begin{document}<br>
\newsavebox{\mybox}\sbox{\mybox}{\begin{tabularx}{13pt}{|X|}<br>
$\begin{array}{cc}a&amp;b\end{array}$<br>
\end{tabularx}}\the\wd\mybox{}<br>
\end{document}<br>
<br>
Liefert immer noch die Ausgabe 13.0 pt. Ich will halt herausfinden wie <br>
breit ein Satzobjekt minimal seien muss egal wie h=C3=A4ufig es umbrochen w=
ird.<br>
<br>
Viele Gr=C3=BC=C3=9Fe Dirk<br>
<br>
On 4/4/26 21:42, Jakob Mendel (via tex-d-l Mailing List) wrote:<br>
&gt; Hallo Dirk,<br>
&gt;<br>
&gt; sieh Dir mal das Paket tabularx an.=C2=A0 Es stellt den Spaltentyp X <=
br>
&gt; bereit, der eine Erweiterung des Spaltentyps p ist und tun sollte, was=
 <br>
&gt; Dir vorschwebt.<br>
&gt;<br>
&gt; Viel Erfolg<br>
&gt; Jakob<br>
&gt;<br>
&gt; P. S. M. W. hei=C3=9Ft das Verb zu &quot;Umbruch&quot; &quot;umbrechen=
&quot; (Betonung auf der <br>
&gt; zweiten Silbe) mit den Formen &quot;zu umbrechen&quot; und &quot;umbro=
chen werden&quot;. <br>
&gt; Man will ja keinen Zaun umbrechen (Betonung auf der ersten Silbe), <br>
&gt; damit er flach auf der Erde liegt.<br>
&gt;<br>
&gt;<br>
&gt; Am 04.04.26 um 13:07 schrieb Dirk H=C3=BCnniger (via tex-d-l Mailing L=
ist):<br>
&gt;&gt; Hallo,<br>
&gt;&gt;<br>
&gt;&gt; ich mache mir derzeit wieder Gedanken zum Tabellensatz in LaTeX. Z=
iel <br>
&gt;&gt; ist es die optimalen Breiten der Spalten einer Tabelle algorithmis=
ch <br>
&gt;&gt; zu bestimmen. Hierzu kann es erforderlich sein den Text innerhalb =
<br>
&gt;&gt; einer Tabellenzelle umzubrechen. Hierf=C3=BCr kenne ich nur die <b=
r>
&gt;&gt; M=C3=B6glichkeit das mit einer Direktive der Form p{1cm} o.=C3=A4.=
 im <br>
&gt;&gt; Tabellenkopf zu fordern. Zu bestimmen ist also was ich anstelle vo=
n <br>
&gt;&gt; 1cm hinschreiben soll. Mir ist aufgefallen das bestimmte Satzobjek=
te <br>
&gt;&gt; nicht umgebrochen werden k=C3=B6nnen. Beispiel (a) hierzu:<br>
&gt;&gt;<br>
&gt;&gt; =C2=A0=C2=A0$\begin{array}{cc}a&amp;b\end{array}$<br>
&gt;&gt;<br>
&gt;&gt; Andere jedoch schon. Beispiel (b) hierzu:<br>
&gt;&gt;<br>
&gt;&gt; a b c d<br>
&gt;&gt;<br>
&gt;&gt; Mein Ziel ist nun in einem Programm diese beiden F=C3=A4lle erkenn=
en und <br>
&gt;&gt; unterscheiden zu k=C3=B6nnen. Konkret will ich f=C3=BCr jedes Satz=
objekt <br>
&gt;&gt; bestimmen wie breit es minimal sein muss. Minimal bedeutet dabei d=
as <br>
&gt;&gt; es so h=C3=A4ufig als m=C3=B6glich umgebrochen wird um eine m=C3=
=B6glichst geringe <br>
&gt;&gt; Breite zu erhalten. In Beispiel (b) erreiche ich diese mit folgend=
em <br>
&gt;&gt; Code:<br>
&gt;&gt;<br>
&gt;&gt; \documentclass{article}<br>
&gt;&gt; \begin{document}<br>
&gt;&gt; \newsavebox{\mybox}\sbox{\mybox}{\begin{tabular}{|p{1pt}|}<br>
&gt;&gt; a b c d<br>
&gt;&gt; \end{tabular}}\the\wd\mybox{}<br>
&gt;&gt; \end{document}<br>
&gt;&gt;<br>
&gt;&gt; Die Ausgabe ist 13.0pt<br>
&gt;&gt;<br>
&gt;&gt; Die analoge Konstruktion f=C3=BCr Beispiel (a) w=C3=A4re dann:<br>
&gt;&gt;<br>
&gt;&gt; \documentclass{article}<br>
&gt;&gt; \begin{document}<br>
&gt;&gt; \newsavebox{\mybox}\sbox{\mybox}{\begin{tabular}{|p{1pt}|}<br>
&gt;&gt; $\begin{array}{cc}a&amp;b\end{array}$<br>
&gt;&gt; \end{tabular}}\the\wd\mybox{}<br>
&gt;&gt; \end{document}<br>
&gt;&gt;<br>
&gt;&gt; Die Ausgabe ist wiederum 13.0pt. Hier schreibt LaTeX nach rechts =
=C3=BCber <br>
&gt;&gt; den Rand hinaus, so dass die Ausgabe kleiner ist als der tats=C3=
=A4chlich <br>
&gt;&gt; ben=C3=B6tigt Platz. Gibt eine M=C3=B6glichkeit um die oben erkl=
=C3=A4rte minimale <br>
&gt;&gt; Breite eines Satzobjektes zu bestimmen?<br>
&gt;&gt;<br>
&gt;&gt; Viele Gr=C3=BC=C3=9Fe Dirk<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
<br>
-- <br>
FAQ: <a href=3D"http://texfragen.de/" rel=3D"noreferrer" target=3D"_blank">=
http://texfragen.de/</a><br>
Durchsuchbares Archiv: <a href=3D"https://www.listserv.dfn.de/sympa/arc/tex=
-d-l" rel=3D"noreferrer" target=3D"_blank">https://www.listserv.dfn.de/symp=
a/arc/tex-d-l</a> <br>
Unsubscribe/Verwaltung: <a href=3D"https://www.listserv.dfn.de/sympa/info/t=
ex-d-l" rel=3D"noreferrer" target=3D"_blank">https://www.listserv.dfn.de/sy=
mpa/info/tex-d-l</a></blockquote></div><div><br clear=3D"all"></div><br><sp=
an class=3D"gmail_signature_prefix">-- </span><br><div dir=3D"ltr" class=3D=
"gmail_signature"><div dir=3D"ltr"><div>Dr. Uwe Ziegenhagen</div><div>0179-=
7476050<br>&lt;<a href=3D"http://www.uweziegenhagen.de" target=3D"_blank">h=
ttp://www.uweziegenhagen.de</a>&gt;</div></div></div>

--000000000000311eca064eb8665b--


------------=_1775403821-65811-22
Content-Type: text/plain; charset="UTF-8"
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0

-- 
FAQ: http://texfragen.de/
Durchsuchbares Archiv: https://www.listserv.dfn.de/sympa/arc/tex-d-l 
Unsubscribe/Verwaltung: https://www.listserv.dfn.de/sympa/info/tex-d-l
------------=_1775403821-65811-22--