Zeigt die Foliennummer im Ausdruck von lave.js an

8

Ich habe slideNumber für meine replace.js-basierten Folien aktiviert und sie werden in der HTML-Ansicht angezeigt.

Jetzt möchte ich sie auch auf dem PDF-Ausdruck zeigen, den ich mit Chrome erzeuge, wie in der Dokumentation vorgeschlagen.

Es scheint, dass seine ganze große Seite so auch Kopf- und Fußzeile nur einmal für alle Folien und nicht auf jeder Folie angezeigt wird. Gibt es eine Möglichkeit, die replace.js-Folien zu drucken, die für diese Art von Dingen gut funktionieren?

    
Manfred Moser 28.11.2014, 19:39
quelle

3 Antworten

1

Nun, ein hässlicher Hack wird sein:
1. mach aufeinanderfolgende Screenshots.
2. bette jeden Schuss in eine PDF-Datei ein.
(oder 3. bette es in ein ppt und konvertiere ppt in pdf)

Abgesehen davon konnte ich nichts finden, was es mit Leichtigkeit in ein gut aussehendes PDF konvertieren würde.

Ein eleganter Hack

Obwohl ich immer noch keine genaue Lösung finden konnte, habe ich, wie der Titel schon sagt, einen eleganten Hack.

Ein Firefox-Plugin namens Schnappen Sie sich alle .

Es ist im Grunde ein Skript, das auf Links in einer vordefinierten Liste zugreift und Screenshots erstellt und speichert. Aber da es nur ein Hack ist, gibt es (viel) manuelle Arbeit.

Zunächst müssen Sie in einer Datei .txt harte Links zu allen Webseiten bereitstellen, z. B. Folien in der Präsentation. Ich habe das in einer Datei namens paths.txt gemacht und das waren die Inhalte in meinem Fall:

%Vor%

Zweiter und letzter Schritt: Nach dem Starten des Addons und dem Neustart von Firefox starten Sie einfach das Addon. Es öffnet sich ein Popup wie folgt:

Jetzt ist es so einfach wie 1,2,3. Wählen Sie file with URLs , wählen Sie destination directory und reduzieren Sie Max page processing time .

Und Voila! Let's go

Alle Folien werden nacheinander als PNG-Format heruntergeladen. Was bleibt, ist, sie in ein PPT- oder PDF-Format zu bringen.

    
zhirzh 02.12.2014 06:08
quelle
1

Wenn Sie HTML-Dateien drucken, die stark auf CSS basieren, ist die generelle Richtlinie, eine elegante Druckdarstellung desselben HTML zu erstellen, ein geeignetes CSS für drucken .

In RevealJS wird die PDF-Generierung von der Datei css / print / pdf.css gesteuert. Also mein Rat ist das:

  1. Gehen Sie und suchen Sie die Datei pdf.css auf Ihrem System.
  2. Öffnen Sie es in einem Texteditor Ihrer Wahl.
  3. Suchen Sie die Zeichenfolge " slide-number " in der Datei.
  4. Ermitteln Sie den Kontext, in dem diese Zeichenfolge angezeigt wird: Ist sie auskommentiert? Ist es so eingestellt, dass display: none oder ähnliches verwendet wird?
  5. Ändern Sie die Einstellung für slide-number entsprechend.

Aktualisieren

Innerhalb der pdf.css gibt es den folgenden Abschnitt direkt nach Zeile 32:

%Vor%

Ändern Sie dies zu:

%Vor%

Voila!

Update 2

Inzwischen habe ich die neuesten Quellen von GitHub geklont und mich selbst getestet ...

Mir scheint, dass es einen Fehler bei der PDF-Erzeugung von Reveal.js gibt. Ich habe einen Fehlerbericht dazu auf GitHub eingereicht.

>

Meine 'js / reveal.js' hat derzeit die folgende Einstellung:

// Display the page number of the current slide //slideNumber: false, slideNumber: true,

So werden die Foliennummern DO auf dem Diaplay angezeigt. Hier ist eine Screenshot-Montage, die dies zeigt (Überspringen der Titelfolie). Die Foliennummern sind eher klein, aber sie erscheinen:

Meine 'css / print / pdf.css' -Datei hat die folgende Einstellung:

/* SECTION 2: Remove any elements not needed in print. This would include navigation, ads, sidebars, etc. */ .nestedarrow, .reveal .controls, .reveal .progress, //.reveal .slide-number, .reveal .playback, .reveal .overview, .fork-reveal, .share-reveal, .state-background { display: none !important; }

Ich habe die Zeile auskommentiert, die .slide-number als Element markiert, das nicht gedruckt werden sollte.

Beim Erstellen einer PDF-Datei (mit Chrome 39.0.2171.71 (64-Bit) unter Mac OSX Mavericks 10.9.5) wird die Foliennummer jedoch nur für die erste Folie und nicht für die folgenden Folien angezeigt. Hier ist eine Screenshot-Montage der PDF-Seiten (Überspringen der zweiten Folie):

Die Titelleiste zeigt Navigationssteuerelemente sowie die Foliennummer "0" (sehr klein, aber es ist dort ...). Die anderen Folien zeigen weder Navigationssteuerelemente noch Foliennummern.

Meine reveal.js wird direkt aus den aktuellen GitHub-Quellen gezogen (AFAICS ist die aktuellste); Mein entfernter Zweig beim Ziehen scheint origin/dev zu sein.

    
Kurt Pfeifle 03.12.2014 11:01
quelle
0

Ich hatte das gleiche Problem und ich habe es einfach durch eine kleine Dom-Manipulation gelöst:

Grundsätzlich enthält meine Präsentation vertikale Abschnitte, die Folien enthalten. Also kann ich mich auf diese Struktur verlassen und mache das mit einem einfach hinzugefügten Element

%Vor%

In css kann es wie folgt gemacht werden:

%Vor%

In pdf sieht es so aus, als ob es zu nah am Rand ist, aber wenn Sie es drucken (ich drucke 4x4 Layout) sieht es gut aus.

Das ist im Grunde alles.

Ich mag die Lösung, weil Sie hier auch einige fortgeschrittene Logik bereitstellen können. Zum Beispiel haben wir in unserer Präsentation einige Folien, die als "nicht druckbar" markiert sind, da sie um die nächste Folie erweitert werden, so dass sie die Anzahl nicht erhöhen sollten.

    
quelle

Tags und Links