Ich veröffentliche technische Bücher, in gedruckter Form, PDF und Kindle/MOBI, mit EPUB auf dem Weg.Konvertieren von ASCII-Quelldateien in JPEGs
Der Kindle unterstützt keine Monospace-Fonts, die für Quellcodeauflistungen nützlich sind. Die einzige Möglichkeit, Monospace-Schriftarten zu erstellen, besteht darin, den Text (Java-Quelle, HTML, XML usw.) in JPEG-Bilder zu konvertieren. Genauer gesagt muss aufgrund von Paginierungsproblemen eine gegebene Eingabe-ASCII-Datei in Scheiben von jeweils ~ 6 Zeilen aufgeteilt werden, wobei jede Scheibe in ein JPEG umgewandelt wird, so dass Auflistungen einen Bildschirm überspannen können. Das ist ein königlicher Schmerz.
Mein aktueller Mechanismus, das zu tun beinhaltet:
expand
Ausführen eines konsistenten 2-Raum Tabgröße, einzustellen, die Rohre zu ...a2ps
, die Rohre zu ...- ein kleiner Perl-Schnipsel eine
"%%LanguageLevel: 3\n"
Linie, hinzuzufügen, die Rohre zu ... - ImageMagicks
convert
, nimmt die (E) PS und macht eine JPEG-out es, mit einem geeigneten Hintergrund, um575x148+5+28
abgeschnitten usw.
Das funktionierte zu 100% der Zeit. Es funktioniert jetzt 95% der Zeit. Der Rest der Zeit, bekomme ich convert: geometry does not contain image
Fehler, die ich nicht loswerden kann, zum Teil, weil ich nicht verstehe, was das Problem ist.
Vor diesem Prozess verwendete ich eine Pretty-Print-Engine (source-highlight
), um HTML aus dem Quellcode zu holen ... aber dann war das einzige, was ich finden konnte, um HTML in JPEGs zu konvertieren, greift auf eine eingebettete Gecko-Engine zu. Zuverlässigkeit stank, weshalb ich zu meinem aktuellen Mechanismus wechselte.
Also, wenn Sie Sie waren, und Sie mussten Quellenlisten in JPEG-Bilder, in einer automatisierten Art und Weise, wie würden Sie es tun? Bonuspunkte, wenn es einen hübschen Druckprozess bietet (z. B. fett gedruckte Keywords)!
Oder, wenn Sie wissen, was normalerweise convert: geometry does not contain image
verursacht, könnte das helfen. Mein derzeitiger Prozess ist hässlich, aber wenn ich ihn zu 100% Zuverlässigkeit zurückbekommen könnte, wäre das im Moment in Ordnung.
Vielen Dank im Voraus!
Das hält einige Versprechen. Ich bin mir ziemlich sicher, dass ich diesen Weg vorher gegangen bin und aufgegeben habe, aber ich vergesse, warum, und meine ersten Tests deuten darauf hin, dass es funktionieren könnte. Ich werde versuchen, dies morgen oder Montag in Gang zu bringen, um zu bestätigen, dass diese Lösung funktioniert. Vielen Dank! – CommonsWare
Kein Würfel. Den gleichen ImageMagick-Fehler bei etwa der gleichen Häufigkeit erhalten. Muss eine Postscript-Eingabe sein. – CommonsWare
Tatsächlich zeigten weitere Experimente, dass der Fehler nur bei der html2ps-Lösung auftritt, wenn die Quelldatei nachgestellte Leerzeichen hatte, die ein effektiv leeres Bild erzeugten. Also, das funktioniert! Danke vielmals! – CommonsWare