PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Gleitobjekte nur auf gerade Seiten



f6l413felix
18-03-2007, 23:15
Hallo,

ich habe mir nun Nächte mit Beiträgen und FAQs zur Positionierung von Gleitobjekten um die Ohren geschlagen (Und dabei auch viele Lösungen für kleinere Probleme gefunden), scheinbar stehe ich aber mit meinem Problem relativ allein da:

Vorab: Warum Gleitobjekte (i.g. Bilder) nur auf gerade Seiten:
Ich möchte einen sehr bildlastigen Text in kleiner Auflage (~150 Stück) Drucken. Das genügt leider nicht für Offsetdruck, und bei Digitaldruck in kleinen Stückzahlen sind Farbseiten bitter teuer, etwa das 15 Fache eine S/W Seite. Also heißt es Farbseiten zu sparen, um die Druckkosten im erträglichen Rahmen zu halten (~40EUR/eingesparte Farbseite sind schon eine Motivation...).
An sich einfach,
\begin{figure}[b] und alle Bilder sammeln sich am Ende eines Kapitels. Leider zerstört dieses aber jeden Bezug zwischen Bild und Text. Es ist eine fortlaufende Geschichte, keine wissenschaftliche Arbeit, bei der man hinter nummerierten Abbildungen hinterblättern kann.
Meine Idee für einen guten Kompromiss, wäre es die Bilder auf eine linke(gerade) Seite zu setzen, wärend rechts davon der zugehörige Text zu lesen ist.
[Hat jemand einen anderen Vorschalg, Bilder auf eigenen Seiten gesammelt und trozdem nah am Text zu setzen: Immer her damit!]

Lösungsidee jenseits meiner Fähigkeiten:
Auf jeder geraden Seite steht der Befehl
\FloatBarrier welche anfallende Gleitobjekte dort setzt. Dann Erfordert es immer noch etwas Handarbeit, das Verhäldniss von Bildern und Text sinnvoll zu halten (Eine linke Seite, die bis auf ein einziges Bild leer ist, spart auch nicht unbedingt Druckkosten. :)), das ist aber ok.
Leider genügen meine Latex-Kentnisse nicht im Geringste aus, um etwas wie

Wenn Seitenzahl gerade
einfügen:"\FloatBarrier" zu implementieren.
Was dann immer noch fehlt (Der totale Luxus), wäre eine Möglichkeit, Latex davon zu überzeugen, die Bilder auf die vorausgehende linke Seite zu setzen. Die linke Seite steht ja im Dokumentverlauf vor der rechten, hervorragend wäre eine Verschiebung von Gleitobjekten auf die vorhergehende Seite. Das kann man aber Notfalls auch manuel zurrechtschustern, in dem man von Hand die
\figure Aufrufe verschiebt, oder doch die rechte Seite für Bilder verwendet und den Text auf die linke Seite setzt, auch wenn das schlechter zu lesen ist.

Es bliebe auch noch die Möglichkeit, manuell jedes Bild auf entsprechender Seite zu positionieren, neben dem gewaltigen Aufwand genügt aber die kleinste Änderung am Text, dem Rahmen, der Schriftgröße o.Ä. und man kann komplett von vorn beginnen. Gleitobjekte haben ja schon ihre Darseinsberechtigung. Manuelle Positionierung wäre ein KO-Argument für Latex, dafür braucht man wysiwyg, ooffice z.B. Und das wäre doch schade...

Vielen Dank für die Hilfe im Voraus,
Felix

P.S:Kann ich mir sicher auch ergoogeln, aber vielleicht hat einer die Lösung (oder nen Link auf ein Man.) direkt parat:
Gibt es eine Möglichkeit, Latex Bilder vorab nur durch einen Rahmen in Bildgröße darzustellen, und nicht gleich aufwändig Bilder einzulesen, was entsprechend lange dauert. Ich möchte die Bilder erst auf entgültige Größe formatieren, wenn der Text und damit die Bildgröße entgültig steht. Wenn man beim Compile-Aufruf 100erte von Bildern a ~1MB/Bild einfügt, kann man sich wärend des Kompilierens einen Kaffee kochen...

bobmalaria
18-03-2007, 23:26
eines kann ich dir ganz schnell beatworten,


\documentclass[draft]{scrbook} macht dir einen rahmen in dem der dateinamen steht und fügt nicht das ganze bild ein.

für deine andere fragen werden hier sicher die experten des 'ifthen' paketes auftauchen. könnte mir vorstellen das damit was geht

f6l413felix
18-03-2007, 23:44
Hallo bobmalaria,

vielen Dank für den Tipp, spart viel Zeit! Nur muss ich jetzt wohl auf Instant-Kaffee umsteigen...

Gruß,
Felix

MasterOfPuppets
19-03-2007, 22:26
Je nach dem, wie du deine Seiten nummerierst, sollte auch ein \rohead{\FloatBarrier} oder \lehead{\FloatBarrier} aus dem scrheadings-Paket helfen. (Statt ifthen.)
Um auch z.B. Kapitelseiten auszusparen: \(ro|le)head[\FloatBarrier]{\FloatBarrier}

f6l413felix
20-03-2007, 11:06
Hallo,

danke für den Tipp.

Klappt aber leider nicht. Die Kopfzeile ist dreigeteilt und \(ro|le)head referenziert lediglich den rechten/linken Teil der Kopfzeile jeder Seite.

Ausserdem habe ich die schwere Vermutung, dass Kopf- und Fusszeilen keinen Einfluss auf Gleitobjekte haben. Die Gleitobjekte landen auf jeden Fall immer noch am Ende des Kapitels, anstatt vom \FloatBarrier der nächsten Kopfzeile gestoppt zu werden.

Gruß,
Felix

Salnic
20-03-2007, 13:30
Hi Felix,

guck mal in die epslatex.pdf (http://www.ctan.org/tex-archive/info/epslatex.pdf): ›26 Figures on Even or Odd Pages‹, Seite 97

> This section describes how [...] to place a figure onto an odd or even page.

Salnic

MasterOfPuppets
22-03-2007, 18:40
Klappt aber leider nicht. Die Kopfzeile ist dreigeteilt und \(ro|le)head referenziert lediglich den rechten/linken Teil der Kopfzeile jeder Seite.

Ja, wenn du im einseitigen Modus schreibst.

Mit der Option twoside und wahlweise \lehead{...} oder \rohead{...} kannst du den Befehl für die linke oder rechte Seite ausführen lassen.
Ob er allerdings dann funktioniert weiss ich nicht, aber nach deiner Aussage ja eher nicht.