Grafik über Textbox hinaus, unterdrücken von overfull \hbox

Redefinition von Makros, Definition eigener Befehle sowie neuer Umgebungen


AlexJO
Forum-Newbie
Forum-Newbie
Beiträge: 4
Registriert: Fr 9. Aug 2019, 13:37

Grafik über Textbox hinaus, unterdrücken von overfull \hbox

Beitrag von AlexJO »

Hallo zusammen,

ich habe einen eigenen Befehl im Latex geschrieben. Der Befehl soll eine Textbox erstellen, in der ich einen "Hinweistext" schreiben kann. Dazu möchte ich gerne ein kleines Symbol/Piktogramm neben dem Hinweis haben.

Zur typografischen Hervorhebung soll das nebenstehende Symbol zur Hälfte aus dem normalen Textblock herausragen. Das ist von mir so gewollt.

Das Problem ist, dass jetzt jedes mal, wo dieser Befehl auftaucht, eine "Overfull \hbox"-Meldung kommt. Kann ich diese Warnung für meinen Befehl unterdrücken? Bzw. gar generell für eine beliebige explizite Box unterdrücken?

Ich habe mich schon durch diverse Foren gelesen. Leider ohne Erfolg.

\hbadness hochzusetzen oder \sloppy brachten auch keinen Erfolg.

Ich bin für jeden Lösungsvorschlag dankbar :)


MfG


Minimalbeispiel:

Code: Alles auswählen

\documentclass[11pt,a4paper,headsepline,draft]{scrbook}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{lmodern}
\usepackage{graphicx}
\usepackage{lipsum}

\setlength{\parindent}{0pt}

\newcommand{\Info}[2][Information\,/\,Hinweis]{%
	\mbox{%
		\begin{minipage}[t]{\dimexpr.9\textwidth-\tabcolsep\relax}
			\vspace{0pt}
			\textbf{#1}\medskip\\
			#2
		\end{minipage}
		\begin{minipage}[t]{\dimexpr.2\textwidth-\tabcolsep\relax}
			\vspace{0pt}
				\includegraphics[width=\textwidth]{example-image}
		\end{minipage}
	}
	\bigskip
}

\begin{document}

\Info{%
	\lipsum[1]
}

\end{document}

Gast

Beitrag von Gast »

\makebox statt \mbox verwenden:

Code: Alles auswählen

\documentclass[11pt,a4paper,headsepline,draft]{scrbook}

\usepackage[utf8]{inputenc}% Überflüssig bei halbwegs aktuellen LaTeX
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{lmodern}
\usepackage{graphicx}
\usepackage{lipsum}

%\setlength{\parindent}{0pt}% Totaler Unfug: --> https://komascript.de/faq_parindent

\newcommand{\Info}[2][Information\,/\,Hinweis]{%
  \par\noindent
  \makebox[\textwidth][l]{%
    \begin{minipage}[t]{\dimexpr.9\textwidth-\tabcolsep\relax}
      \vspace{0pt}
      \textbf{#1}\medskip\\
      #2
    \end{minipage}
    \begin{minipage}[t]{\dimexpr.2\textwidth-\tabcolsep\relax}
      \vspace{0pt}
      \includegraphics[width=\textwidth]{example-image}
    \end{minipage}
  }
  \bigskip
}

\begin{document}

\Info{%
   \lipsum[1]
}

\end{document}
Besser wäre aber vermutlich die Verwendung einer addmargin-Umgebung. Dann könnte man das auch einfach immer in den äußeren Rand ragen lassen und sogar die Grafik immer außen hin packen. Dazu bitte die Umgebung sowie das davon verwendete \ifthispageodd in der KOMA-Script-Anleitung oder im KOMA-Script-Buch nachlesen.

AlexJO
Forum-Newbie
Forum-Newbie
Beiträge: 4
Registriert: Fr 9. Aug 2019, 13:37

Beitrag von AlexJO »

Läuft
Nice!
Vielen Dank :D

Antworten