我使用 pstrick 为我的学士论文制作了一个图表。为此,我定义了一个新变量。
\documentclass[%
a4paper, % Papierformat
oneside, % einseitiger Druck
%twoside, % zweiseitiger Druck
12pt, % Schriftgröße
onecolumn, % einspaltiger Text
%twocolumn, % zweispaltiger Text
openright, % Kapitel dürfen nur auf einer rechten Seite beginnen
openany, % Kapitel dürfen rechts oder links beginnen
parskip=half, % eine halbe Zeile Abstand zw. Absätzen
headsepline, % Kopfzeilenlinie
footsepline, % Fußzeilenlinie
bibliography=totoc, % Bibliographie im Inhaltsverzeichnis
%idxtotoc % Index im Inhaltsverzeichnis
]{scrbook}
\linespread{1.25}
\recalctypearea %Neuberechnung des Satzspiegels
\usepackage{ifxetex}
\ifxetex
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{german}
\else
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\fi
\usepackage[
left=25mm,
right=25mm,
top=30mm,
bottom=40mm,
%includeheadfoot,
]{geometry}
% deutsche Silbentrennung etc.
% Grafiken: PDF, GIF, PNG
\usepackage{graphicx}
\usepackage[pdf]{pstricks}
\usepackage{pstricks,pst-node}
\newcommand\framenode[2]{\Rnode{#1}{\psframebox{\parbox{3cm}{\centering\bfseries#2}}}}
\begin{document}
\begin{figure}[H]
\begin{psmatrix}[rowsep=1.2, colsep=2, mnode =r]%
%%% nodes
\pnode{Beg} & \framenode{A}{Aufnahme und \\ Verarbeitung \\ Kap. \ref{Audiodateien}} & \framenode{B}{Auslesen der \\ Audio \\ Parameter \\ Kap. \ref{snr}} & \framenode{C}{Transformation in Frequenz/- \\ Skalierungs-\\bereich \\ Kap. \ref{Transformation}}\\
\pnode{End} & \framenode{G}{Vergleich \\ Schwellwert und \\ Energie \\ Kap. \ref{Stand_SAD}} & \framenode{E}{Bestimmung der\\Energie \\ Kap. \ref{Teager Energy Operator}} & \framenode{D}{Signalglättung \\ Kap. \ref{Autokorelation}} \\
& & \framenode{F}{Bestimmung des \\ Schwellwertes \\ Kap. \ref{Stand_SAD}}
%%% nodes connections
\ncline{Beg}{A}\naput[npos=0.6]{Sprache}\nbput[npos=0.6] {Kap. \ref{Sprache_Rausch_Gehör}}
\ncline{A}{B}^{Audio}
\ncline{B}{C}^{}
\ncbar[linearc=0.15, arm =5mm]{C}{D}\naput[labelsep=0.5em, npos=1.5]{}
\ncline{D}{E}_{}
\ncline{E}{F}_{}
\ncline{E}{G}_{}
\ncline{G}{End}\nbput[npos=0.8]{Sprachdetektion}
\end{psmatrix}
\caption{Allgemeine Verarbeitungskette für eine SAD}
\label{fig:verarbeitungskette}
\end{figure}
\end{document}
我的教授想要一张每个框大小相同的图表。我尝试在 parbox 后添加高度参数,但没有任何变化。我是不是遗漏了什么?
答案1
\parbox
有三个可选参数,第一个定义\parbox
在基线上的垂直位置,第二个是框的高度,第三个是框内文本的垂直位置。因此要指定高度,还必须指定垂直位置,即
\parbox[c][4cm]{3cm}{\centering\bfseries#2}
\documentclass[%
a4paper, % Papierformat
oneside, % einseitiger Druck
%twoside, % zweiseitiger Druck
12pt, % Schriftgröße
onecolumn, % einspaltiger Text
%twocolumn, % zweispaltiger Text
openright, % Kapitel dürfen nur auf einer rechten Seite beginnen
openany, % Kapitel dürfen rechts oder links beginnen
parskip=half, % eine halbe Zeile Abstand zw. Absätzen
headsepline, % Kopfzeilenlinie
footsepline, % Fußzeilenlinie
bibliography=totoc, % Bibliographie im Inhaltsverzeichnis
%idxtotoc % Index im Inhaltsverzeichnis
]{scrbook}
\linespread{1.25}
\recalctypearea %Neuberechnung des Satzspiegels
\usepackage{ifxetex}
\ifxetex
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{german}
\else
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\fi
\usepackage[
left=25mm,
right=25mm,
top=30mm,
bottom=40mm,
%includeheadfoot,
]{geometry}
% deutsche Silbentrennung etc.
% Grafiken: PDF, GIF, PNG
\usepackage{graphicx}
\usepackage[pdf]{pstricks}
\usepackage{pst-node}
\newcommand\framenode[2]{\Rnode{#1}{\psframebox{\parbox[c][4cm]{3cm}{\centering\bfseries#2}}}}
\begin{document}
\begin{figure}
\begin{psmatrix}[rowsep=1.2, colsep=2, mnode =r]%
%%% nodes
\pnode{Beg} & \framenode{A}{Aufnahme und \\ Verarbeitung \\ Kap. \ref{Audiodateien}} & \framenode{B}{Auslesen der \\ Audio \\ Parameter \\ Kap. \ref{snr}} & \framenode{C}{Transformation in Frequenz/- \\ Skalierungs-\\bereich \\ Kap. \ref{Transformation}}\\
\pnode{End} & \framenode{G}{Vergleich \\ Schwellwert und \\ Energie \\ Kap. \ref{Stand_SAD}} & \framenode{E}{Bestimmung der\\Energie \\ Kap. \ref{Teager Energy Operator}} & \framenode{D}{Signalglättung \\ Kap. \ref{Autokorelation}} \\
& & \framenode{F}{Bestimmung des \\ Schwellwertes \\ Kap. \ref{Stand_SAD}}
%%% nodes connections
\ncline{Beg}{A}\naput[npos=0.6]{Sprache}\nbput[npos=0.6] {Kap. \ref{Sprache_Rausch_Gehör}}
\ncline{A}{B}^{Audio}
\ncline{B}{C}^{}
\ncbar[linearc=0.15, arm =5mm]{C}{D}\naput[labelsep=0.5em, npos=1.5]{}
\ncline{D}{E}_{}
\ncline{E}{F}_{}
\ncline{E}{G}_{}
\ncline{G}{End}\nbput[npos=0.8]{Sprachdetektion}
\end{psmatrix}
\caption{Allgemeine Verarbeitungskette für eine SAD}
\label{fig:verarbeitungskette}
\end{figure}
\end{document}