goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 99376
Top-Poster: Johannes_B (5059)

Wir begrüßen unseren neuesten Benutzer naderda.

Links:


Mit Unterstützung von DANTE e.V.: Deutschsprachige Anwendervereinigung TeX. Danke den Mitgliedern!





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

URL hart brechen

 

Deni
Forum-Newbie
Forum-Newbie

Beiträge: 8
Anmeldedatum: 01.04.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.04.2009, 11:17     Titel: URL hart brechen
  Antworten mit Zitat      
Hi,

gibt es soetwas wie ein wrap="hard" für URL's?
Also, dass ich nicht Trennungstextstellen selbst definieren muss?
Wo er trennt ist mir egal. Hauptsache er berücksichtigt die Ränder und ist anklickbar.

Bisher benutze ich folgende Lösung, da sie bisher die einzig funktionierende Lösung zu sein scheint, die ich gefunden habe, die auch funktioniert:
Zitat:
\href{http://download.company.com/SMIDE/download.epd?context=61725C8F0C9A2DC31AD2DABE453F0C6EC1F8A5ACF75DD7DCC059F1BCD641C0925843B34F4F201D3368699B5E0B36059746A72EF7428AFD19}{http://""download.""company.""com/""SMIDE/""download.""epd?""context=""6""1""7""2""5""C""8""F""0""C""9""A""2""D""C""3""1""A""D""2""D""A""B""E""4""5""3""F""0""C""6""E""C""1""F""...}


Gruß
Deni
Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 06.04.2009, 12:42     Titel:
  Antworten mit Zitat      
In der Doku zum Paket url, das auch von hyperref verwendet wird, ist auch angegeben, wie man die Trennung beeinflussen kann. Die Doku ist AFAIR in der Paketdatei url.sty selbst zu finden.

Ansonsten würde ich Dir empfehlen, bei Fragen keine Codeschnippsel, sondern vollständige Minimalbeispiele (siehe goLaTeX-Knigge) anzugeben. Was dabei der Vorteil ist, ist im Wiki und den dort angegebenen Links zu finden.
_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

Deni
Forum-Newbie
Forum-Newbie

Beiträge: 8
Anmeldedatum: 01.04.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.04.2009, 15:20     Titel:
  Antworten mit Zitat      
Die Doku zum Paket url habe ich gelesen gehabt. Ich habe nur nichts in Richtung harten umbrechen gefunden.

Das Mini-Beispiel kann sich mit Verlaub hier sparen. Zumind. behaupte ich, dass man sich eine zu lange Url vorstellen kann.
Aber der Vollständigkeithalber siehe Anhang:

minibeispiel.tex
 Beschreibung:

Download
 Dateiname:  minibeispiel.tex
 Dateigröße:  342 Bytes
 Heruntergeladen:  806 mal
Private Nachricht senden Benutzer-Profile anzeigen

Stefan Kottwitz
Admin
Admin


Beiträge: 1966
Anmeldedatum: 08.07.08
Wohnort: Hamburger Netzwerk-Spezialist
Version: TeX Live 2019
     Beitrag Verfasst am: 06.04.2009, 16:20     Titel: Umbrüche in urls
  Antworten mit Zitat      
Hallo Deni,

zu diesem Zweck kannst Du das Makro \UrlBreaks erweitern. Hier mal recht umfassend:
Code • Öffne in Overleaf
\makeatletter
\g@addto@macro\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\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9\do\0}
\def\do@url@hyp{\do\-}
\makeatother


Ein Minimalbeispiel ist fast immer sinnvoll. Auch wenn man es sich vorstellen kann, der konkrete Code ermöglicht, einen Vorschlag direkt testen zu können. Oder hätte Dir der Hinweis auf Redefinition von \UrlBreaks statt meinem konkreten Code hier genügt? Denn zusammen mit dem Code von url.sty könnte man sich auch den Rest vorstellen.

Viele Grüße,

Stefan
Private Nachricht senden Benutzer-Profile anzeigen

royalware
Forum-Anfänger
Forum-Anfänger

Beiträge: 32
Anmeldedatum: 05.05.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.05.2009, 13:20     Titel:
  Antworten mit Zitat      
Ich hatte das selbe Problem wie Deni und die von Stefan angebotene Lösung hat mir schon zum Großteil geholfen. Die URL wird korrekt getrennt, aber leider erst hinter dem Seitenrand, so dass eine overfull box entsteht.


Code • Öffne in Overleaf

\documentclass[a4paper,11pt]{report}
\usepackage[dvips]{graphicx}
\usepackage{amsmath,amssymb,amsbsy}
\usepackage{color}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{fancyhdr}
\usepackage[dvipdfm, colorlinks=true, bookmarksopen=true, bookmarksopenlevel=4, breaklinks=true, pdfstartview=Fit, linkcolor=blue]{hyperref}

\makeatletter
\g@addto@macro\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\1\do\2\do\3
  \do\4\do\5\do\6\do\7\do\8\do\9\do\0
}
% \def\do@url@hyp{\do\-}
\makeatother

\begin{document}

\chapter{Minimalbeispiel}

Diese URL soll umgebrochen werden. Das funktioniert auch recht gut, aber leider entsteht eine Overfull Box, die "`4.63574pt too wide"' ist: \url{http://www.heise.de/security/Neues-Rating-System-fuer-Sicherheitsfehler-vorgestellt--/news/meldung/64047}

\end{document}
 


Lässt sich das irgendwie geschickt ändern?


EDIT:
Wenn die Code-Zeile
Code • Öffne in Overleaf
\def\do@url@hyp{\do\-}

vor "\makeatother" verwendet wird, wird der Rand sogar um 10pt überschritten (erst beim zweiten Zeilenumbruch). Eigenartig...
Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 05.05.2009, 14:46     Titel:
  Antworten mit Zitat      
Das Problem ist, dass Du eine ganze Zeile mit einem Teil der URL füllst. Dadurch kann nirgendwo in der Zeile zusätzlicher Leerraum eingefügt werden, also muss die Zeile entweder über- oder unterfüllt werden. Das bedeutet, dass es keinen korrekten Umbruch gibt. Das macht TeX mit einer overfull \hbox deutlich. Eine Lösung könnte beispielsweise sein, zusätzlichen Abstand nach einem Slash zu erlauben:
Code • Öffne in Overleaf
 \g@addto@macro\UrlSpecials{\do\/{\mbox{\UrlFont/}\hskip 0pt plus 1pt}}

_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

royalware
Forum-Anfänger
Forum-Anfänger

Beiträge: 32
Anmeldedatum: 05.05.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 06.05.2009, 12:58     Titel:
  Antworten mit Zitat      
Hervorragend!Vielen Dank für die Hilfe. Jetzt sieht es so aus wie es sein soll. Ich finde es allerdings eigenartig, dass das im URL-Paket nicht von Haus aus so definiert ist...

Die Zeile
Code • Öffne in Overleaf
\def\do@url@hyp{\do\-}

verstehe ich allerdings noch nicht ganz. Wird damit einfach nur festgelegt, dass kein "-" am Zeilenende gesetzt wird? Notwendig scheint das bei mir nicht zu sein. Das Resultat ist mit und ohne identisch.
Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 06.05.2009, 14:55     Titel:
  Antworten mit Zitat      
Die Zeile solltest Du rauswerfen. Wenn Du Umbrüche nach »-« erlauben willst, dann geht das per url-Paket-Option »hyphens«. Da hyperref url selbst lädt und AFAIK keine Möglichkeit bietet, Optionen an url durchzureichen, muss man die Option per
Code • Öffne in Overleaf
\PassOptionsToPackage{hyphens}{url}
vor dem Laden von hyperref setzen. Vermutlich hat derjenige, von dem Du den Code hast, nicht gewusst, dass es so eine Möglichkeit gibt.

BTW: Option dvipdfm solltest Du natürlich nur verwenden, wenn Du wirklich mit dvipdfm arbeitest. In dem Fall sollte man aber eigentlich auch color und graphicx mit dieser Option laden und nicht mit Option dvips. Man könnte dann auch gleich dvipdfm als globale Option (also bei \documentclass) angeben. Dann muss man das ggf. nur an einer Stelle ändern.

BTW2: Option german bei babel ist für obsolete deutsche Rechtschreibung. Die aktuelle deutsche Rechtschreibung bekommt man mit ngerman.

Diese Anmerkungen nur so für den Fall, dass Du es noch nicht wusstest.

Ansonsten: Wenn Du der Meinung bist, dass das url-Paket etwas anders machen sollte, dann schick dem Maintainer/Autor einen Feature-Request. Nebenbei schätze ich mal dass min. die Hälfte der Features in KOMA-Script auf Feature-Requests zurück geht. Mich wundert dabei immer wieder, dass sich Anwender wundern, wenn ich eine Nachfrage beantworte.
_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

royalware
Forum-Anfänger
Forum-Anfänger

Beiträge: 32
Anmeldedatum: 05.05.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.05.2009, 15:02     Titel:
  Antworten mit Zitat      
Danke für Deine Tipps.

Die Option "dvips" beim Laden von "graphicx" ist natürlich Blödsinn und erklärt jetzt möglicherweise auch, warum ich mit manchen EPS-Bildern Konvertierungsprobleme hatte. Ich hab den Header "blind" einer Vorlage für die Diplomarbeit von einem Prof. entnommen. Nunja...

dvipdfm verwende ich in der Tat, da ich keine Notwendigkeit sehe, von der DVI-Ausgabe über PostScript zum PDF zu gelangen.

Und Du hast richtig gelegen. Dass "ngerman" die bessere Wahl ist, wusste ich tatsächlich nicht. Vielen Dank!

Das mit der globalen Option sieht dann jetzt so aus:
Code • Öffne in Overleaf
\documentclass[a4paper,dvipdfm,11pt]{report}

\usepackage{graphicx,color,amsmath,amssymb,amsbsy,fancyhdr}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}

\PassOptionsToPackage{hyphens}{url} %Umbrüche nach '-' erlauben
\usepackage[dvipdfm, colorlinks=true, bookmarksopen=true, bookmarksopenlevel=4, breaklinks=true, pdfstartview=Fit, linkcolor=blue]{hyperref}


Das Zusammenfassen von Paketen, die ohne Optionen auskommen (Zeile 3) ist doch unbedenklich, oder?
Ich hoffe, dass es jetzt ein einheitlicheres Bild ergibt. Danke nochmals für die Tipps...

EDIT: Das "dvipdfm" aus der letzten Zeile kann ja nun auch entfernt werden, oder?
Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 07.05.2009, 15:27     Titel:
  Antworten mit Zitat      
Das dvipdfm in der letzten Zeile kann in der Tat weg. Übrigens sollte man besser dvipdfmx als dvipdfm verwenden. Das Programm arbeitet in einigen Punkten besser als sein Vorfahre. Natürlich wäre zu überlegen, ob man nicht gleich pdflatex nehmen kann, um das PDF zu erzeugen. Damit spart man sich den Zwischenschritt DVI gleich auch noch. PS-Tricks ist übrigens kein Argument, dass das nicht geht. Dafür gibt es Pakete (z. B. pst-pdf). Ebenso wenig sind EPS-Abbildungen ein Argument. Die kann man einfach mit epstopdf in PDFs umwandeln.

Pakete ohne oder mit identischen Optionen kann man durchaus zusammen laden. Allerdings empfiehlt es sich, das dann so zu schreiben:
Code • Öffne in Overleaf
\usepackage{%
graphicx
,color
,amsmath
,amssymb
,amsbsy
,fancyhdr
}

Das gibt ggf. die Möglichkeit, mal schnell einen Kommentar anzufügen oder eine Zeile auszukommentieren. BTW: Ich würde xcolor statt color empfehlen. Schon allein die dort gebotene Möglichkeit, Standardfarben über Namen anzusprechen ist ein gutes Argument dafür. Außerdem bietet das Paket die Möglichkeit, Farben in ein anderes Modell zu konvertieren, bzw. anzugeben, was das Standardmodell sein soll. Das ist beispielsweise nützlich, wenn man irgendwann erfährt, dass in der Druckstufe alle Farben in CMYK statt RGB anzugeben sind. Außerdem bietet das Paket direkt eine Unterstützung beispielsweise für colortbl.
_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen Gehe zu Seite 1, 2  Weiter



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2019 goLaTeX.de