Re: Breite von Satzobjekten bestimmen
"Jakob Mendel" (via tex-d-l Mailing List) <[email protected]> Mon, 6 Apr 2026 10:11:00 +0200
| Newsgroups | gmane.comp.tex.german |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format...
------------=_1775463075-39709-0
Content-Language: en-US
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: quoted-printable
Hallo Dirk,
> [...] Bei der Sache mit tabularx bin ich leider nicht weiter=20
> gekommen. So wie ich das verstehe werden zuerst die Breiten aller=20
> Spalten, die kein X haben,=C2=A0 berechnet und diese Summe wird dann von =
der=20
> vorgegebenen Maximalbreite abgezogen und das Ergebnis durch die Anzahl=20
> Spalten mit X geteilt und dann wird dieser Wert als Spaltenbreite der=20
> Spalten mit X festgelegt.
Das verstehe ich ebenso.
> Leider kann ich aber dadurch auch nicht die=20
> unten erkl=C3=A4rte Minimalbreite eines Satzobjekts bestimmen. Folgendes=
=20
> Minimalbeispiel
>=20
> \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}
>=20
> Liefert immer noch die Ausgabe 13.0 pt.
Das sollte so sein: Wenn Du die Breite (d. h. die Gesamtbreite) der=20
Tabelle auf 13pt setzt und diese Tabelle in eine Box packst, wird die=20
Box genau 13pt breit.
> Ich will halt herausfinden wie=20
> breit ein Satzobjekt minimal seien muss egal wie h=C3=A4ufig es umbrochen=
wird.
Mir ist bisher nicht klar, *wof=C3=BCr* Du die kleinstm=C3=B6gliche Spalten=
breite=20
brauchst: Willst Du eine Tabelle mit m=C3=B6glichst schmalen Spalten=20
erzeugen? Oder willst Du eine m=C3=B6glicht schmale Tabelle erzeugen, um z=
.=20
B. umflie=C3=9Fenden Text von optimaler Zeilenl=C3=A4nge zu haben?
Falls letzteres zutrifft, sieh Dir mal die Pakete wrapfig und wrapfig2=20
(Umgebung wraptable) an.
Uwes Hinweis auf \settowidth ist auf alle F=C3=A4lle hilfreich.
Viele Gr=C3=BC=C3=9Fe
Jakob
> Viele Gr=C3=BC=C3=9Fe Dirk
>=20
> On 4/4/26 21:42, Jakob Mendel (via tex-d-l Mailing List) wrote:
>> Hallo Dirk,
>>
>> sieh Dir mal das Paket tabularx an.=C2=A0 Es stellt den Spaltentyp X=20
>> bereit, der eine Erweiterung des Spaltentyps p ist und tun sollte, was=20
>> Dir vorschwebt.
>>
>> Viel Erfolg
>> Jakob
>>
>> P. S. M. W. hei=C3=9Ft das Verb zu "Umbruch" "umbrechen" (Betonung auf d=
er=20
>> zweiten Silbe) mit den Formen "zu umbrechen" und "umbrochen werden".=20
>> Man will ja keinen Zaun umbrechen (Betonung auf der ersten Silbe),=20
>> damit er flach auf der Erde liegt.
>>
>>
>> Am 04.04.26 um 13:07 schrieb Dirk H=C3=BCnniger (via tex-d-l Mailing Lis=
t):
>>> Hallo,
>>>
>>> ich mache mir derzeit wieder Gedanken zum Tabellensatz in LaTeX. Ziel=20
>>> ist es die optimalen Breiten der Spalten einer Tabelle algorithmisch=20
>>> zu bestimmen. Hierzu kann es erforderlich sein den Text innerhalb=20
>>> einer Tabellenzelle umzubrechen. Hierf=C3=BCr kenne ich nur die=20
>>> M=C3=B6glichkeit das mit einer Direktive der Form p{1cm} o.=C3=A4. im=20
>>> Tabellenkopf zu fordern. Zu bestimmen ist also was ich anstelle von=20
>>> 1cm hinschreiben soll. Mir ist aufgefallen das bestimmte Satzobjekte=20
>>> nicht umgebrochen werden k=C3=B6nnen. Beispiel (a) hierzu:
>>>
>>> =C2=A0=C2=A0$\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 un=
d=20
>>> unterscheiden zu k=C3=B6nnen. Konkret will ich f=C3=BCr jedes Satzobjek=
t=20
>>> bestimmen wie breit es minimal sein muss. Minimal bedeutet dabei das=20
>>> es so h=C3=A4ufig als m=C3=B6glich umgebrochen wird um eine m=C3=B6glic=
hst geringe=20
>>> Breite zu erhalten. In Beispiel (b) erreiche ich diese mit folgendem=20
>>> 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=BC=
ber=20
>>> den Rand hinaus, so dass die Ausgabe kleiner ist als der tats=C3=A4chli=
ch=20
>>> ben=C3=B6tigt Platz. Gibt eine M=C3=B6glichkeit um die oben erkl=C3=A4r=
te minimale=20
>>> Breite eines Satzobjektes zu bestimmen?
>>>
>>> Viele Gr=C3=BC=C3=9Fe Dirk
>>>
>>>
>>>
>>
>>
>>
>=20
>=20
------------=_1775463075-39709-0
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
------------=_1775463075-39709-0--