PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kurz vor Publikation



AnNaMF
06-03-2012, 01:16
Hi!

Inhaltlich bin ich inzwischen fertig, nun gehts an qualitative Optimierungen für den Druck.
Was mir aufgefallen ist, ist das mein PDF qualitativ "minderwertige" ("dünne", "verschwommene" Schriften) aufweiste.

Nach etwas Rechereche habe ich \usepackage{lmodern} in die Präambel eingefügt:



\documentclass[DIV10,BCOR=12mm,11pt,twoside=yes,headsepline,chapt erprefix=false]{scrbook}

\usepackage[english]{babel}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}

\usepackage[T1]{fontenc}
\usepackage{lmodern}


Entsprechend dieser Liste hier (http://www.mrunix.de/forums/showpost.php?p=240843&postcount=3) ist lmodern die richtige Wahl (ae hingegen veraltet).

Ist das allgemein zu empfehlen?
Im Reader sehe ich dass nun Type 1 statt Type 3 Schriften benutzt werden

Ist sonst noch irgendwas zu beachten?
Weitere empfehlenswerte Optimierungen?
Optimierungen bezüglich Grafiken o.ä. (nutze graphicx)?
Kann man TeX (nutze TexNnicCenter auf MikTex 2.8) irgendwo sagen dass er nun wirklich optimiert für den Druck optimieren soll?

Irgendwo stand noch man soll cm-super installieren, das zeigt mir der Paketmanager aber bereits als installiert an.

Danke und generell nochmal Danke an alle Tipps während der letzten Wochen während denen ich mich den Dingen widmete welche ich in den Monaten zuvor erstmal habe liegen gelassen und inzwischen mit Eurer Hilfe alle lösen konnte - super Forum!

Handelt sich übrigens um eine Dissertation.

bobmalaria
06-03-2012, 09:04
hi,

wenn du kein zusätzliches paket für schriften eingebunden hast und cm-super installiert ist, dann wird cm-super automatisch verwendet. die schrift wirkt am bildschirm eventuell dünn, aber gedruckt sollte sie trotzdem gut aussehen. lmodern ist aber genauso richtig und T1 fotencoding ist ebenfalls erwünscht.

zur verbesserung des dokumentes:

- binde \usepackage[babel]{microtype} ein um mikro-typografisch zu optimieren-

- für bilder bist du selbst verantwortlich. graphicx bindet das bild so ein wie es ist, manipuliert es aber nicht. achte generell darauf das vektor-grafiken zu bevorzugen sind. schemata also in inkscape oder adobe illustrator oder in latex direkt (mit paket tikz) zeichnen und als pdf-bild speichern. solche grafiken können verlustfrei skaliert werden (z.b. auf textbreite, was man ja oft machen muss)

keine jpg bilder einbinden, es sei denn es sind fotos. alle anderen grafiken, sollten sie pixelbasiert sein, sollten als png, mit entsprechender dpi zahl (mind. 300) und am besten in der richtigen größe (z.b. textbreite) erstellt werden.

- es gibt kein optimierungsprogramm von pdflatex. ich weiss auch nicht genau was du damit meinst. wenn du damit auf ein feature wie in adobe professional anspielst, dann gibt es so etwas nicht.

- sollte deine arbeit viele datenplots enthalten, so lohnt es sich z.b. nicht irgendwelche sachen aus excel einzubinden, sondern die daten direkt in latex zu plotten, z.b. paket pgfplots oder zumindest die daten aus einem externen programm nur als bild (pdf/png) speichern und dann in pgfplots einbinden. so haben dann die achsenbeschriftung und der text die gleiche schriftart. das ist eine kleine änderung, aber es macht viel aus (und viel arbeit :)).
ähnliches gilt für grafiken.

so, mehr weiss ich gerade nicht.

gruss

AnNaMF
06-03-2012, 09:32
Hi!

und erstmal vielen Dank!


hi,

wenn du kein zusätzliches paket für schriften eingebunden hast und cm-super installiert ist, dann wird cm-super automatisch verwendet. die schrift wirkt am bildschirm eventuell dünn, aber gedruckt sollte sie trotzdem gut aussehen. lmodern ist aber genauso richtig und T1 fotencoding ist ebenfalls erwünscht.


Ok, gedruckt habe ich bislang nur die Variante ohne "lmodern"; diese wirkte in der Tat auf dem Bildschirm etwas "dünn"; gedruckt war es in der Tat ok.
Heißt dass dass sich lmodern nur auf die Bildschirmdarstellung, nicht jedoch auf den Druck auswirkt?



zur verbesserung des dokumentes:

- binde \usepackage[babel]{microtype} ein um mikro-typografisch zu optimieren-


Ok, das ist eine neue Info; das probier ich mal.



- für bilder bist du selbst verantwortlich. graphicx bindet das bild so ein wie es ist, manipuliert es aber nicht. achte generell darauf das vektor-grafiken zu bevorzugen sind. schemata also in inkscape oder adobe illustrator oder in latex direkt (mit paket tikz) zeichnen und als pdf-bild speichern. solche grafiken können verlustfrei skaliert werden (z.b. auf textbreite, was man ja oft machen muss)

keine jpg bilder einbinden, es sei denn es sind fotos. alle anderen grafiken, sollten sie pixelbasiert sein, sollten als png, mit entsprechender dpi zahl (mind. 300) und am besten in der richtigen größe (z.b. textbreite) erstellt werden.


Okay, das habe ich alles beachtet; meine Grafiken sind zu 99% Vektorgrafiken (PDFs), meine Bilder allesamt PNGs.



- es gibt kein optimierungsprogramm von pdflatex. ich weiss auch nicht genau was du damit meinst. wenn du damit auf ein feature wie in adobe professional anspielst, dann gibt es so etwas nicht.


Ich spiele darauf an zum Generierungszeitpunkt sagen zu können "generiere optimiert für Screendisplay oder für Print" was uU die Auflösung beeinflussen könnte etc.
Das einzige was ich gefunden habe war: http://linuxcommand.org/man_pages/pdfopt1.html aber das dient wohl einem anderen Zweck.



- sollte deine arbeit viele datenplots enthalten, so lohnt es sich z.b. nicht irgendwelche sachen aus excel einzubinden, sondern die daten direkt in latex zu plotten, z.b. paket pgfplots oder zumindest die daten aus einem externen programm nur als bild (pdf/png) speichern und dann in pgfplots einbinden. so haben dann die achsenbeschriftung und der text die gleiche schriftart. das ist eine kleine änderung, aber es macht viel aus (und viel arbeit :)).
ähnliches gilt für grafiken.


Die Idee ist gut, allerdings halten sich die Imports aus Excel in Grenzen... mal sehen ob ich nach 450 Seiten noch Muße dafür finde mich da nochmal ranzusetzen :)
Angenommen ich drucke Plots aus Excel als PDFs, kann ich das dann an pgfplots übergeben?
Hast Du dazu ein Beispiel oder einen Link?



so, mehr weiss ich gerade nicht.

gruss

Damit hast Du mir auch schon sehr geholfen!

Danke!

rstuby
06-03-2012, 09:43
Eventuell muss alles, was farbig ist, in CMYK und keinesfalls in RGB sein. Das kann man bei vielen Programmen irgendwo einstellen. Es gibt jedoch auch ansonsten gute Programme, die diese Farbeinstellung nicht zulassen, z.B. musste ich deshalb von inkscape auf scribus umsteigen.
Wenn du in LaTeX selbst das Paket xcolor benutzt, kannst du es so einbinden:
\usepackage[cmyk]{xcolor}

Festus
06-03-2012, 10:55
Ok, gedruckt habe ich bislang nur die Variante ohne "lmodern"; diese wirkte in der Tat auf dem Bildschirm etwas "dünn"; gedruckt war es in der Tat ok.
Heißt dass dass sich lmodern nur auf die Bildschirmdarstellung, nicht jedoch auf den Druck auswirkt?


Nicht ganz, lmodern ist eine Modernisierung von Computer Modern. Sie kommt dem Original zwar recht nahe, ist im Detail aber doch etwas anders. Welche du benutzen willst ist Geschmackssache, wenn du Computer Modern nimmst achte aber darauf, die Type 1 fonts zu benutzen.



Ich spiele darauf an zum Generierungszeitpunkt sagen zu können "generiere optimiert für Screendisplay oder für Print" was uU die Auflösung beeinflussen könnte etc.
Das einzige was ich gefunden habe war: http://linuxcommand.org/man_pages/pdfopt1.html aber das dient wohl einem anderen Zweck.


LaTeX selbst ändert nichts an der Auflösung von Bitmap-Graphiken. Vektorgraphiken und Type 1 fonts sind sowieso Vergrößerungs- und Auflösungsunabhängig. Letztzlich bestimmst du also selbst über die Qualität deines Dokuments, indem du Bitmap-Graphiken in entsprechender Auflösung einbindest (Minimal-Standard: 300dpi für Farbbilder, 600dpi für Halbton, 1200dpi für Liniengraphiken).



Die Idee ist gut, allerdings halten sich die Imports aus Excel in Grenzen... mal sehen ob ich nach 450 Seiten noch Muße dafür finde mich da nochmal ranzusetzen :)
Angenommen ich drucke Plots aus Excel als PDFs, kann ich das dann an pgfplots übergeben?
Hast Du dazu ein Beispiel oder einen Link?


Für mein Dafürhalten gibt es für Plots kaum ein schlechteres Programm als Excel. Die besten Plots macht IMHO immer noch R, aber wenn man sich damit nicht auskennt braucht man schon eine Weile um damit was Vernünftiges zu Produzieren. Wenn du dafür noch Muße und Zeit hast kannst du hier (http://www.statmethods.net/) mal reinschauen.

AnNaMF
06-03-2012, 11:57
Nicht ganz, lmodern ist eine Modernisierung von Computer Modern. Sie kommt dem Original zwar recht nahe, ist im Detail aber doch etwas anders. Welche du benutzen willst ist Geschmackssache, wenn du Computer Modern nimmst achte aber darauf, die Type 1 fonts zu benutzen.


Hm, okay, zuerst hatte ich nur:



\usepackage[english]{babel}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}


Damit sahen die Schriften zumindest auf dem Screen ausgedünnt aus; gedruckt sag es erträglich aus. Es wurden afaik Type 3 Schriften verwendet bei dieser Konfiguration - trotz des T1 - kann das sein?

Danach habe ich das versucht:



\usepackage[english]{babel}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}


Damit sahen die Schriften auf dem Screen schon deutlich besser aus; gedruckt habe ich diese Variante noch nicht.

Und nun bin ich hierbei gelandet:



\usepackage[english]{babel}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[babel]{microtype}


Aber bin mir nicht sicher was das genau bringt; sehe zwar marginale Änderungen, aber weiß nicht ob ich diese besser finde.

So ganz blicke ich da noch nicht durch.



Für mein Dafürhalten gibt es für Plots kaum ein schlechteres Programm als Excel. Die besten Plots macht IMHO immer noch R, aber wenn man sich damit nicht auskennt braucht man schon eine Weile um damit was Vernünftiges zu Produzieren. Wenn du dafür noch Muße und Zeit hast kannst du hier (http://www.statmethods.net/) mal reinschauen.

Ja, so super sehen die nicht aus; ich denke ich schau mir R mal noch an. Wobei ich nur sehr einfach Balkendiagramme habe und wenn ich diese Mithilfe der Daten aus meinen Exceltabellen schnell nach R übertragen bekomme; why not.

Kann R Daten aus Excelfiles rausholen?

Danke.

Festus
06-03-2012, 12:16
Damit sahen die Schriften zumindest auf dem Screen ausgedünnt aus; gedruckt sag es erträglich aus. Es wurden afaik Type 3 Schriften verwendet bei dieser Konfiguration - trotz des T1 - kann das sein?


Das ist möglich. Um Computer Modern als Type 1 font zu benutzen muss cm-super installiert. Und dann musst du auf der Kommandozeile (in Windows "Eingabeaufforderung" genannt) u.U. noch das Kommando updmap aufrufen. Danach sollte automatisch die Type 1 Version von CM benutzt werden.



Aber bin mir nicht sicher was das genau bringt; sehe zwar marginale Änderungen, aber weiß nicht ob ich diese besser finde.

So ganz blicke ich da noch nicht durch.


Latin Modern kommt automatisch als Type 1 font, und sieht daher "besser" aus, sowohl am Bildschirm als auch im Druck. microptype sorgt für eine bessere Austreibung in den Rand, um den Grauwert zu vereinheitlichen. Wenn eine Zeile z.B. mit einem Bindestrich abschließt muss dieser etwas weiter in den Rand hineinreichen als es ein Buchstabe tun würde. Als Leser bekommt man optisch einfach eher den Eindruck eines geraden rechten Randes, wenn schmale Zeichen gar nicht wirklich genau bündig abschließen---das macht microtype.



Ja, so super sehen die nicht aus; ich denke ich schau mir R mal noch an. Wobei ich nur sehr einfach Balkendiagramme habe und wenn ich diese Mithilfe der Daten aus meinen Exceltabellen schnell nach R übertragen bekomme; why not.

Kann R Daten aus Excelfiles rausholen?


Ganz so einfach ist das leider nicht. R liest .txt, .tab und dergleichen, aber keine xls. Du müsstest deine Daten also tabstop getrenntes .txt exportieren und dann in R einlesen und plotten.

Ab von der LaTeX Bahn: einlesen in R geht dann mit



#In den Ordner gehen, wo deine Daten liegen ('Pfad')
setwd("Pfad")
#lesen von Datei.txt
read.table("Datei.txt")
#lesen von Datei.txt wenn die erste Zeile Spaltenüberschriften enthält
read.table("Datei.txt", header=TRUE)

Zum plotten kann man sich relativ schnell einarbeiten, Quick-R ist dabei sehr hilfreich. Für die Zukunft würde ich es dir als vollintegriertes Programm für alles von Datenanalyse, Statistik bis Visualisierung sehr ans Herz legen.

rstuby
06-03-2012, 12:33
Babel solltest du übrigens nur einmal laden, mit beiden Optionen:
\usepackage[english,ngerman]{babel}
Die letztgenannte ist dann automatisch erstmal aktiv.

bobmalaria
06-03-2012, 12:38
hi,

mir R wuerde ich nicht anfagen, so kurz vor abgabe. ich verwende es ab und an und der aufwand den du betrieben muesstest ist sicher nicht gerechtfertigt (denke ich). und mal ehrlich, nach 450 seiten hat doch keiner mehr lust sich noch in neue software einzuarbeiten, oder?

das wort micro in microtype deutet dir schon an das es keine allzu grossen aenderungen geben wird. das paket verbessert nur kleine dinge wie abstaende zwischen woertern und eventuell den umbruch von woertern in z.b. tabellenspalten. erwarte keine magischen aenderungen, aber das paket ist bei mir einfach standard weil es den satz nach ein kleines bisschen gefaelliger macht.

nochmal zu den excel geschichten. am wichtigesten ist es, denke ich, konsistent zu bleiben. also nicht zwischem methoden hin und her zu wechseln.

methode 1 ist alles in pgfplots zu plotten. nachteil, bei grossen datensaetzen unertraeglich langsam.

methode 2 und fuer dich wahrscheinlich am einfachsten. eine kopie deines graphin in excel machen, alle achsen, linien, beschriftungen loeschen, so dass nur die daten-linien uebrig bleiben. das als pdf speichern, mit pdfcrop zurechtschneiden und dann mit pgfplots einbinden.

hier ein kleines beispiel:

erstmal ein diagramm in excel erstellen und dann alles loeschen

http://www.mrunix.de/forums/attachment.php?attachmentid=5092&stc=1&d=1331033328

dann in der kommandozeile den weissen rand des bildes mit dem tool pgfplots abschneiden (funktioniert direkt in linux, bei windows braucht man einen perl-interpreter wie z.b. active perl (kostenlos))


\documentclass{article}
\usepackage{lipsum}%testtext
\usepackage{pgfplots}

\begin{document}
\lipsum[1]
\begin{figure}[!htp]
\centering
\begin{tikzpicture}
\begin{axis}[
axis on top,
xlabel = {X Achsenbeschriftung},
ylabel={Y Achsenbeschriftung}
]
\addplot graphics[xmin=1,xmax=30, ymin=0,ymax=1] {bild.pdf};
\end{axis}
\end{tikzpicture}
\caption{Abbildung mit irgendwas}
\end{figure}

\lipsum[1]
\end{document}


ist dann der code um das bild mit pgfplots einzubinden. ergebnis ist dann

http://www.mrunix.de/forums/attachment.php?attachmentid=5093&stc=1&d=1331033848

schriftart im text und der der achsen ist gleich. die achsen-limits musst du pgfplots mitteilen da es ja die wahren dimensionen des plots nicht kennen kann.

denke ich deinem stadium des schreibens waehre das die mini-max methode um das dokument aufzuhuebschen.

gruss

Festus
06-03-2012, 12:46
mir R wuerde ich nicht anfagen, so kurz vor abgabe. ich verwende es ab und an und der aufwand den du betrieben muesstest ist sicher nicht gerechtfertigt (denke ich). und mal ehrlich, nach 450 seiten hat doch keiner mehr lust sich noch in neue software einzuarbeiten, oder?


Du hast sicher recht, dass der Aufwand recht groß ist. Deshalb hatte ich auch darauf hingwiesen, ich weiß ja nicht wie viel Zeit und Geduld er noch übrig hat.

Es war i.W. auch eher als guter Tip für die Zukunft gedacht, da das was Excel so produziert, bestenfalls als Arbeitsgraphik taugt, um sich mal selbst schnell anzusehen wie die Daten aussehen; finde ich zumindest. Für die Vorhaltung der Daten und schnelle Standardkalkulationen benutze ich es auch, da ich es in der Beziehung für durchaus sehr leistungsfähig halte.

AnNaMF
06-03-2012, 15:14
Das ist möglich. Um Computer Modern als Type 1 font zu benutzen muss cm-super installiert. Und dann musst du auf der Kommandozeile (in Windows "Eingabeaufforderung" genannt) u.U. noch das Kommando updmap aufrufen. Danach sollte automatisch die Type 1 Version von CM benutzt werden.


Jetzt macht die Sache Sinn.
Ich hatte cm-super im Packetmanager gesehen, aber es war nur gelistet, nicht installiert.

Dh deswegen wurde vermutlich erstmal Typ 3 angezogen.



Latin Modern kommt automatisch als Type 1 font, und sieht daher "besser" aus, sowohl am Bildschirm als auch im Druck. microptype sorgt für eine bessere Austreibung in den Rand, um den Grauwert zu vereinheitlichen. Wenn eine Zeile z.B. mit einem Bindestrich abschließt muss dieser etwas weiter in den Rand hineinreichen als es ein Buchstabe tun würde. Als Leser bekommt man optisch einfach eher den Eindruck eines geraden rechten Randes, wenn schmale Zeichen gar nicht wirklich genau bündig abschließen---das macht microtype.


Super, dann bleib ich einfach dabei:



\usepackage[english,ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[babel]{microtype}



Babel solltest du übrigens nur einmal laden, mit beiden Optionen:
\usepackage[english,ngerman]{babel}
Die letztgenannte ist dann automatisch erstmal aktiv.

Hab ich geändert (siehe Snippet oben).
Danke!



Ganz so einfach ist das leider nicht. R liest .txt, .tab und dergleichen, aber keine xls. Du müsstest deine Daten also tabstop getrenntes .txt exportieren und dann in R einlesen und plotten.

Ab von der LaTeX Bahn: einlesen in R geht dann mit



#In den Ordner gehen, wo deine Daten liegen ('Pfad')
setwd("Pfad")
#lesen von Datei.txt
read.table("Datei.txt")
#lesen von Datei.txt wenn die erste Zeile Spaltenüberschriften enthält
read.table("Datei.txt", header=TRUE)

Zum plotten kann man sich relativ schnell einarbeiten, Quick-R ist dabei sehr hilfreich. Für die Zukunft würde ich es dir als vollintegriertes Programm für alles von Datenanalyse, Statistik bis Visualisierung sehr ans Herz legen.

Klingt gut; ich schaus mir mal an; zeitlich hab ich noch Puffer. Die n. Wochen werden die Betreuer die Vorversion lesen, in der Zeit könnte ich Grafiken schon nochmal pimpen.

Nachtrag:
Eine Sache noch, ich habe mal cm-super installiert und danach kann ich nicht mehr bauen wenn ich \usepackage{lmodern} rausnehme (Rest wie oben belassen).
Fehlermeldung ist dann:

pdftex error (font expansion): auto expansion is only possible with scalable fonts.

Autoexpansion ist ja etwas was von dem \usepackage[babel]{microtype} kommt.
Dh entweder ich nehme \usepackage[babel]{microtype} und \usepackage{lmodern} oder beides nicht was ja nach Euren Ausführungen auch Sinn macht.

Habe mich wie im Snippet oben zu ersehen für "beides nehmen" entschieden :)