changefont = Blocksatz weg! Hilfe

Schriftbild, Absätze und Auflistungen einstellen


texla
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Sa 8. Feb 2014, 18:59

changefont = Blocksatz weg! Hilfe

Beitrag von texla »

Moin!

Ich bin mit dem Standardschriftsatz zufrieden und der Blocksatz wird soweit richtig dargestellt. Nun möchte ich für eine längere Textstelle den Schrifttyp andern.

Habe hierzu in der Datei, in der der Seitenstil festgelegt wird, folgenden Code hinzugefügt (wie gegoogelt):
\newcommand{\changefont}[3]{\fontfamily{#1}\fontseries{#2}\fontshape{#3}\selectfont}
und zwar direkt hinter
\usepackage[T1]{fontenc}
Nun bin ich zu meiner Textstelle gegangen (in einem separaten File abgelegt) und habe sie wie folgt "umrahmt":

{\changefont{cmtt}{m}{n}{\small Hier steht mein mehrere Absätze umfassender Text.}}

In der pdf-Darstellung ist auch korrekterweise die Textpassage in meinem gewählten Schriftsatz mit passender Größe dargestellt. Nur leider: Der Blocksatz ist futsch. Es gibt keine Silbentrennung mehr und der Text läuft über den eigentlichen Textrand rechts hinaus und ist rechts noch nicht einmal mehr bündig. Hinter der betreffenden Textpassage ist alles wieder ok.

Mein Stildokument schaut so aus:
\usepackage{typearea} % Definition des Satzspiegels
\areaset[1cm]{135mm}{200mm}
\linespread{1.0194}\selectfont
\usepackage{scrpage2}

%\usepackage{microtype}

\usepackage[english,ngerman]{babel} 
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\newcommand{\changefont}[3]{\fontfamily{#1}\fontseries{#2}\fontshape{#3}\selectfont}

\usepackage{array}
\usepackage{graphicx} %zum Einbinden der Graphiken
\usepackage{longtable} %für Tabellen, die länger als eine Seite sind
\usepackage{numprint} %zur Darstellung von Zahlen
\usepackage{textcomp} %zusätzliche Zeichen
\usepackage{amsmath} %zusätzliche mathematische Zeichen
\usepackage{amssymb} %zusätzliche mathematische Symbole
\usepackage{multicol}
\usepackage{nicefrac} %Brüche mit schrägem Bruchstrich
\usepackage{upgreek} %aufrechte griechische Buchstaben
\usepackage{ulem}
\usepackage{tabularx}
\usepackage{setspace}\usepackage{threeparttable}
\usepackage{courier}

hier kommen noch ein paar Anweisungen zu Auflistungen

  \renewcommand{\floatpagefraction}{1} %Maximaler Bildanteil pro Seite (1=100%)
  \renewcommand{\textfraction}{0} %Minimaler Textanteil pro Seite
\renewcommand{\topfraction}{1}    
  \renewcommand{\bottomfraction}{1}  

%  %Inhaltsverzeichnis anpassen
%  %Erste Klammer: Einzug der Nummerierung, zweite Klammer: zusätzlicher Einzug des Textes 
%   \makeatletter 
%    \renewcommand{\l@section}{\@dottedtocline{2}{0em}{5.3em}}
%    \renewcommand{\l@subsection}{\@dottedtocline{2}{1em}{4.3em}}
%    \renewcommand{\l@subsubsection}{\@dottedtocline{2}{2em}{3.3em}}
%  \makeatother


% Verwendete Schriften und Auszeichnungen der Standardelemente

\usepackage{mathptmx}
\setkomafont{sectioning}{%
\normalfont\bfseries
}
\setkomafont{caption}{\small}
\setkomafont{pagehead}{\normalfont\small}

\newcommand*{\appendixmore}{\small} 

\setcapindent{0cm} %kein Einzug bei Tabellen- und Bildunterschriften
Was ist falsch und wie bekomme ich es hin, auch hier die richtige Silbentrennung und Blocksatz zu erhalten?

Beinschuss
Forum-Meister
Forum-Meister
Beiträge: 808
Registriert: Di 2. Okt 2012, 21:42
Wohnort: NRW

Beitrag von Beinschuss »

Erstelle bitte ein lauffähiges Minimalbeispiel, mit dem potentielle Helfer den Fehler reproduzieren können. Wie das geht, steht hier: http://www.golatex.de/wiki/Minimalbeispiel. Evtl. findest Du hierbei den Fehler selber.

Für Dich sinnvoll wäre wohl auch die Lektüre von http://www.golatex.de/minimale-vorlagen ... 10780.html.

Viele Grüße

Helmut

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4310
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

Schreibmaschinenschriften wie cmtt eignen sich eigentlich nicht für Blocksatz, da dort alle Zeichen (auch die Leerzeichen) gleiche Breite haben.

Überdenke also die Schriftwahl.

texla
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Sa 8. Feb 2014, 18:59

Beitrag von texla »

Hier das Minimalstbeispiel.
\documentclass[10pt, a4, cleardoubleempty, headinclude,
normalheadings, tablecaptionabove, pointlessnumbers, bibtotoc]{scrbook}

\usepackage{typearea} % Definition des Satzspiegels
\areaset[1cm]{135mm}{200mm}
\linespread{1.0194}\selectfont
\usepackage{scrpage2}

%\usepackage{microtype}

\usepackage[english,ngerman]{babel} 
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\newcommand{\changefont}[3]{\fontfamily{#1}\fontseries{#2}\fontshape{#3}\selectfont}

\begin{document} %Beginn des eigentlichen Textes

Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. 

Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. 

\

{\changefont{cmtt}{m}{n}{\small Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch! Hier ist echt was falsch!  }}

\

Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. Das ist ein Test. 


\end{document}


Man sieht gut, dass es falsch läuft. Ich verstehe natürlich auch, dass bei einer Maschinenschrift der Blocksatz nicht richtig funktioniert, aber warum macht es mir das nicht einfach linksbündig?

EDIT: Also eine Schriftart mit nicht festen Zwischenräumen löst das Problem (zumindest optisch, obwohl mir TexMakerX immer noch underfull hbox Fehler anzeigt). Ich hätte dennoch gerne eine Courier Schrift. Gibt es eine mit flexiblen Leerzeichen und wie stelle ich es an?

Studi
Forum-Century
Forum-Century
Beiträge: 185
Registriert: So 5. Jan 2014, 20:18

Beitrag von Studi »

Da in den Rand geschrieben wird, kann das helfen: Wie kann ich verhindern, dass Wörter über den Rand stehen? Speziell hier hilft Herberts Tipp mit einem Wert ab 1.7 em.

Man kriegt übrigens auch Schreibmaschinenschriften in Blocksatz, wenn man die Abstände variabel erlaubt - also Schriftart mit dem typischen Terminal-Feeling, wenn diese visuelle Aussage bereits reicht, nur im Blocksatz statt im starren Raster.

Studi

Felix
Forum-Century
Forum-Century
Beiträge: 210
Registriert: Sa 25. Jan 2014, 13:57

Beitrag von Felix »

texla hat geschrieben:Ich hätte dennoch gerne eine Courier Schrift. Gibt es eine mit flexiblen Leerzeichen und wie stelle ich es an?
Hier findet sich sowas: Full justification with typewriter font.

Felix
Ein TikZ Süchtiger :-)

Beinschuss
Forum-Meister
Forum-Meister
Beiträge: 808
Registriert: Di 2. Okt 2012, 21:42
Wohnort: NRW

Beitrag von Beinschuss »

Mit XeTeX lässt sich eine Schrift mit festen Breiten, die als Systemschrift auf Deinem Rechner installiert sein muss, schon im Blocksatz setzen (obwohl es überhaupt nicht schön aussieht):
\documentclass{scrbook} 
\usepackage{fontspec}
\setmainfont[Scale=1,Mapping=tex-text]{Liberation Serif}
\setmonofont[Scale=1,Mapping=tex-text]{Courier New}
\usepackage{blindtext}

\begin{document} 
\ttfamily
\blindtext

\rmfamily
\blindtext

\end{document}
Was bezweckst Du damit, eine Schreibmaschinenschrift im Blocksatz setzen zu wollen?

Helmut

texla
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Sa 8. Feb 2014, 18:59

Beitrag von texla »

Leider will ich nur einen bestimmten Abschnitt in Courier haben. Und ich weiß nicht, wie ich es bewerkstellige.

Felix' Vorschlag bewirkt zwar, dass dann tatsächlich der Maschinenschriftsatz im Blocksatz ist, allerdings leider ist dann mein ganzer Text in diesem Stil. Und genau das will ich nicht haben.

Ich bezwecke damit, zum einen eine Textpassage optisch abzuheben, zum anderen ihm einen etwas antiquierten Anstrich zu geben.

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4310
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

zum anderen ihm einen etwas antiquierten Anstrich zu geben
Dafür ist Blocksatz aber eher nicht geeignet. Setze den Text mit \raggedright.

texla
Forum-Anfänger
Forum-Anfänger
Beiträge: 12
Registriert: Sa 8. Feb 2014, 18:59

Beitrag von texla »

Funktioniert aber auch nicht gut. Auch da schreibt es mir über die Ränder hinaus :(

Antworten