Zeilenumbruch bei langen Zeichenabfolgen ohne Leerzeichen

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Zeilenumbruch bei langen Zeichenabfolgen ohne Leerzeichen

von Johannes_B » Di 11. Nov 2014, 16:01

von LarsVegas » Di 11. Nov 2014, 14:32

Ja, sieht in der Tat danach aus. Möchte mir allerdings noch klar machen, wie sich das Paket sonst in meinem Dokument ungewollt auswirken könnte, wenn ich es jetzt einbinde.

von u_fischer » Di 11. Nov 2014, 14:26

Nun, mit \usepackage{microtype} verschwindet die overfull-Box (wenn ich mit pdflatex kompiliere).

von LarsVegas » Di 11. Nov 2014, 14:20

:D Naja, von Geheimniskrämerei würde ich jetzt nicht sprechen, habe mein Problem nur allgemeingültig formuliert, weil ich vermutet habe, dass es da eine ganz einfache Antwort drauf gibt! Ich will wirklich nichts weiter, als eine lange URL über mehrere Zeilen in einer für das Auge angenehmen Art darzustellen, wobei es mir wirklich völlig schnurz ist, wo umgebrochen wird, solange es "gut" aussieht! Das Paket url hat mich noch nicht ganz glücklich gemacht, breakurl ebenso wenig, zumal es hyperref erfordert, was ich nun wirklich nicht haben möchte. Hier sogar noch ein Minimalbeispiel, bei dem mir nicht gefällt, dass das 'm' am Ende der 5. Zeile steht und nicht in die 6. zeile rutscht - dann würde es gut passen.

Wie auch immer, deine Erklärung hat mir zumindest teilweise verständlich gemacht, warum das bisher nicht so klappt wie gewünscht und microtype könnte eventuell auch noch weiterhelfen! Danke!

% Minimalbeispiel

% Format & Seitenlayout festlegen:
\documentclass[a4paper, oneside, 12pt]{scrartcl}
\usepackage[left=27mm, right=27mm, top=27mm, bottom=27mm, headsep=10mm, footskip=12mm]{geometry}

% deutsche Silbentrennung und Umlaute:
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}

% Absatzformatierung:
\parindent 0pt
\parskip 12pt


% Für die Darstellung von Internetadressen:
\usepackage[hyphens]{url} % Paket zur Darstellung von Internetadressen (mit Einstellungen für Zeilenumbrüche)
\usepackage{etoolbox} % Paket unbekannter Funktion, ohne funktioniert aber das hinzufügen weiterer Umbruchstellen für das URL-Paket in der nächsten Zeile nicht!
\appto\UrlBreaks{\do\a\do\b\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j\do\k\do\l\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t\do\u\do\v\do\w\do\x\do\y\do\z\do\_\do\%\do\?\do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9}
\renewcommand*{\UrlFont}{\normalfont}

\begin{document}

\hangindent+9pt \hangafter=1
Bundesministerium für Umwelt, Naturschutz, Bau und Reaktorsicherheit (2012b): Verordnung zur Festlegung von Anforderungen für das Einbringen oder das Einleiten von Stoffen in das Grundwasser, an den Einbau von Ersatzstoffen und für die Verwendung von Boden und bodenähnlichem Material. Entwurf. Stand 31.10.2012. URL: \url{http://www.bmub.bund.de/fileadmin/Daten_BMU/Download_PDF/Bodenschutz/entw_mantelverordnung.pdf} (zuletzt abgerufen am 30.10.2014).

\end{document}

von Besserwisser » Di 11. Nov 2014, 13:38

Das Problem ist, dass wenn in einer Zeile nur noch 2pt Platz ist, das nächste Zeichen aber 4pt breit ist und der Zeileninhalt keine Abstände aufweist, die man insgesamt um 2pt vergrößern könnte, dann bleiben eben 2pt am Ende der Zeile frei. Zaubern kann TeX nicht. Das Paket microtype bietet allerdings auch in solchen Fällen ein paar Möglichkeiten, weil es Zeichen künstlich etwas breiter machen oder (was typografisch eigentlich verpönt ist) auch Buchstabenzwischenräume einfügen kann, statt nur Wortzwischenräume zu verändern.

Da wir noch immer nicht wissen, was du da eigentlich machst, kann ich dir leider auch nicht wirklich raten, wie man das am besten löst. Es gibt beispielsweise auch die Möglichkeit, Rausatz oder Flattersatz zu verwenden. Manchmal ist sogar zentrierter Satz eine gute Lösung. Aber es bringt nichts, darüber zu spekulieren. Besser ist, wenn du mit der Geheimniskrämerei aufhörst.

von LarsVegas » Di 11. Nov 2014, 13:12

Vielen Dank für die schnelle Antwort! microtype sagt mir bisher nichts, ich werde mir das mal näher anschauen. url ist tatsächlich auch das, was ich momentan benutze, allerdings funktioniert das nicht so wirklich gut! Habe da mithilfe anderer Anleitungen aus dem Internet noch Zeilenumbrüche nach dem gesamten Alphabet in Kleinbuchstaben und einigen Extrazeichen zugelassen und trotzdem erhalte ich keinen sauberen Rand auf der rechten Seite. Daher dachte ich, dass das URL-Paket ja eigentlich "zu viel" für meine Anforderungen bietet, denn es hat ja Gründe, dass nur nach gewissen zeichen Umbrüche erlaubt werden. Mir ist es aber völlig egal, nach welchem Zeichen umgebrochen werden soll! Meine Anforderungen sind also eigentlich niedriger und trotzdem scheint es schwieriger zu sein das zu realisieren. Ärgerlich!

von Besserwisser » Di 11. Nov 2014, 12:43

Im Blocksatz mit einer Proportionalschrift wird das schwierig. Eventuell machbar mit microtype. Den Umbruch selbst kann man mit Hilfe des url-Pakets erreichen. Bei diesem kann man einstellen, nach welchen Zeichen ein Umbruch erlaubt ist. Siehe dazu dessen Anleitung. Ob es für dich eine Lösung ist oder eventuell sogar eine bessere Lösung existiert ist Mangels Informationen für mich nicht erkennbar.

Zeilenumbruch bei langen Zeichenabfolgen ohne Leerzeichen

von LarsVegas » Di 11. Nov 2014, 12:05

Hallo liebe Helfer,

wie kann ich Latex dazu bringen, eine lange Abfolge von Schriftzeichen ohne Leerzeichen an genau der Stelle zu brechen, wo es der ansehnliche Schriftsatz erfordert? Mir ist egal, welches Zeichen am Ende der einen und welches am Anfang der nächsten Zeile steht, es soll einfach dann umgebrochen werden, wenn die Zeile voll ist! Gibt es dazu vielleicht eine bestimmte Umgebung in die ich die Zeichenfolge stecken kann?

Vielen Dank für eure Hilfe schon mal im Voraus!

Nach oben