
Was ich in LyX habe, ist Folgendes:
Ich habe der Präambel diese Zeile hinzugefügt:
\global\setlength{\parskip}{20pt}
Ich erwarte also einen Abstand von 20pt zwischen jeder Zeile. Dies geschieht jedoch nicht innerhalb der Parbox. Meine Ausgabe:
Frage: Was muss ich tun, um den 20pt-Abstand zwischen den Zeilen 3 und 4 oben zu erreichen?Ich möchte, dass dies global erfolgt (d. h. über alle Parboxen in meinem Dokument hinweg).
LaTeX-Code (aus LyX exportiert):
%% LyX 2.2.3 created this file. For more info, see http://www.lyx.org/.
%% Do not edit unless you really know what you are doing.
\documentclass[english]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{calc}
\makeatletter
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
\global\setlength{\parskip}{20pt}
\makeatother
\usepackage{babel}
\begin{document}
1. Hi
2. Hi
\noindent{\fboxrule 3pt\fboxsep 6pt\fbox{\parbox[t]{1\columnwidth - 2\fboxsep - 2\fboxrule}{%
3. Hi
4. Hi%
}}}
\end{document}
Antwort1
Sie können Ihren benutzerdefinierten Befehlen Folgendes hinzufügen:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
\setlength{\parskip}{20pt}
\let\oldparbox\parbox
\renewcommand\parbox[3][t]{\oldparbox[#1]{#2}{\setlength{\parskip}{20pt}#3}}
\makeatother
Bearbeiten: Das nächste „PS“ ist falsch: (Siehe Kommentare von David)
PS: Ich wusste nicht wirklich, ob der optionale Standardparameter in Parbox war t
, aber ich habe danach gesucht und weiß jetzt, dass es so ist.Dieser Satz zwischen "Fettdruck" ist nicht wahr
Meine Entschuldigung: Ich habe gerade „gegoogelt“ und hatte als erstes diese Ergebnisse:
Ich habe den Link mit Titel gesehen \parbox
und gerade aus den letzten beiden Zeilen den obigen falschen Satz gelesen ...
Also, ich habe meine Lektion gelernt ...Überprüfen Sie Ihre Quellen immer doppeltund vertrauen Sie nicht nur dem, was Sie bei Google sehen, aus der Ferne
Antwort2
Ich verstehe, dass dies keine direkte Antwort auf Ihre Frage ist und sicherlich etwas übertrieben. Wenn Sie jedoch Kästchen zeichnen möchten, ohne den Text zu verschieben (in Ihrem Beispiel werden 3 und 4 etwas nach links verschoben), können Sie immer Ti verwendenkZ-Überlagerungen.
\documentclass[english]{article}
\usepackage{calc}
\usepackage{tikzpagenodes}
\usetikzlibrary{fit}
\newcommand{\tikznode}[2]{\tikz[remember picture,baseline=(#1.base)]{\node(#1)[inner sep=0pt]{#2};}}
\makeatletter
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.
\global\setlength{\parskip}{20pt}
\makeatother
\begin{document}
1. Hi
2. Hi
3. Hi\tikznode{3}{\strut}
4. Hi\tikznode{4}{\strut}%
\begin{tikzpicture}[overlay,remember picture]
\node [fit=(current page text area.west|-4.south) (current page text
area.east|-3.north),draw,ultra thick,rectangle]{};
\end{tikzpicture}
\end{document}
Dies ist sicherlich übertrieben, wenn Sie nur diese Kästchen zeichnen möchten, wenn Sie jedoch ausgefallenere Dinge tun möchten, kann dies eine sinnvolle Option sein.
Antwort3
\parskip
Da Sie anscheinend in jedem möchten \parbox
:
\documentclass{article}
\newlength{\normalparskip}
\setlength{\normalparskip}{20pt}
\AtBeginDocument{\setlength{\parskip}{\normalparskip}\setlength{\parindent}{0pt}}
\makeatletter
\g@addto@macro{\@parboxrestore}{\setlength{\parskip}{\normalparskip}}
\makeatother
\newcommand{\framedparbox}[2][c]{%
\noindent
\begingroup
\setlength{\fboxrule}{3pt}%
\setlength{\fboxsep}{6pt}%
\fbox{\parbox[#1]{\dimexpr1\columnwidth - 2\fboxsep - 2\fboxrule}{#2}}%
\endgroup
}
\begin{document}
1. Hi
2. Hi
\framedparbox[t]{%
3. Hi
4. Hi%
}
\end{document}