Seite 1 von 1
Mit Zeilenbreite rechnen?
Verfasst: Sa 8. Sep 2012, 20:40
von flodo
Hallo nochmal
Ich würde gerne wissen wie ich in Latex mit der Zeilenbreite rechnen kann.
D.h. ich würde gerne die Zeilenbreite auslesen und 5pt dazuaddieren.
Folgendes habe ich bereits versucht:
\linewidth+5pt
\linewidth{}+5pt
{\linewidth}+5pt
Leider hat nichts davon funktioniert!
Kann mir jemand weiterhelfen?
Danke!!
Verfasst: Sa 8. Sep 2012, 21:41
von flodo
Ich glaube ich muss mal schnell erklären um was es genau geht.
Ich habe mit listings einen Quellcode in mein Doc eingebunden.
Nun habe ich mit lstaddons den Hintergrund eingefärbt.
Zwischen dem Rand des Listings und der eingefärbten Zeile bleibt
jedoch ein weißer Abstand.
Diesen kann man mit linebackgroundsep=3pt aus dem lstaddon-paket
umgehen, jedoch nur links. Für rechts gibt es diese Option nicht!
Jedoch gibt es noch die Option: linebackgroundwidth.
Diese ist standardmäßig auf \linewidth gesetzt, ich würde das aber gerne ändern, und zwar um so viel dass auch der weiße Rand rechts verschwindet.
Daher dachte ich an
linebackgroundwidth={\linewidth{}+6pt}
Das funktioniert aber nicht.
Das normale Rechnen, ala:
\newdimen\lstwidth
\lstwidth = 0pt
\advance\lstwidth by \linewidth
\advance\lstwidth by 3pt
funktioniert leider auch nicht, da \linewidth ja nicht mit der in dem listing übereinstimmt
Verfasst: Sa 8. Sep 2012, 22:07
von flodo
hab es jetzt vorübergehend so gelöst:
% Zeilenbreite des Listings
\newdimen\lstwidth
\lstwidth = 0pt
\advance\lstwidth by \linewidth
\advance\lstwidth by -15pt % Minus xleftmargin
\advance\lstwidth by 1pt % Minus Rand
\lstset{
numbers=left,
linebackgroundcolor={\ifodd\value{lstnumber}\color{codegray}\fi},
linebackgroundsep=3pt, % Füllt die Zeile von Beginn an aus
linebackgroundwidth={\lstwidth}, % ... bis zum Ende
xleftmargin=15pt, % Abstand von der Zeile inkl. Nummer zum Rand des Dokuments
xrightmargin=5pt,
framexleftmargin=0pt, % Abstand vom Rand zur Codezeile
framexrightmargin=0pt
}
Keine optimale Lösung, aber besser als nichts

Verfasst: So 9. Sep 2012, 17:59
von flodo