Archiv der Kategorie: Postscript & PDF

Markdown

Markdown ist eine Auszeichnungssprache, mit der einfach strukturierte Quelltexte geschrieben werden können. Pandoc ist ein Konverter für Markdown-Dokumente, der in PDF, epub, HTML, LaTeX, docx, odt… konvertiert.

Installation Pandoc

Pandoc ist in den Quellen meist veraltet, daher sollte das Paket direkt von Pandoc.org installiert werden.

Für das Erzeugen von PDF-Dateien sind folgende Zusatzpakete erforderlich:

sudo apt-get install texlive-latex-base texlive-generic-recommended texlive-fonts-recommended lmodern

 

pdfimages

Mit dem Befehl pdfimages kann man alle Bilder aus einem PDF-Dokument extrahieren.

Der Befehl pdfimages -j datei.pdf ./bilder/ extrahiert alle Bilder aus dem Dokument datei,pdf und speicher sie im Ordner /bilder/.

pdfjam

pdfjam ist eine Sammlung von praktischen PDF-Tools.

pdfjoin – PDF-Dokumente zusammenfügen
pdfcrop – Ränder beschneiden….

pdfnup – mehrere PDFs auf eine Seite

pdfnup --nup 2x1 --suffix '2x1' infile.pdf
pdfnup --nup 2x2 --suffix '2x2' infile.pdf

PDF auf A4 und Rand auf 20mm
pdfcrop --papersize a4 --margins 20 datei.pdf datei_neu.pdf

PDF auf A4 anpassen
pdfjoin datei.pdf --paper a4paper --fitpaper false --outfile .datei_neu.pdf

oder
pdfjam --outfile out.pdf --paper a4paper in.pdf

Ghostscript

Auflösung von PDF-Dateien verändern (z. B. um ein PDF-Dokument mit sehr hochauflösenden Bildern für den E-Mail-Versand zu komprimieren):

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf

Für PDFSETTINGS sind folgende Optionen möglich:

  • /screen (nur für Bildschirmanzeige – 72 dpi)
  • /ebook (geringe Qualität – 150 dpi)
  • /printer (hohe Qualität – 300 dpi)
  • /prepress: (hohe Qualität mit hoher Farbtreue – 300 dpi)

Ein fertiges Skript für Nautilus gibt es unter http://launchpad.net/compress-pdf. Hier noch eine Kurzanleitung zur Installation des Skripts:

$ sudo apt-get install zenity ghostscript libnotify-bin
$ cd ~/.gnome2/nautilus-scripts
$ wget http://launchpad.net/compress-pdf/1.x/1.4/+download/Compress-PDF-1.4.tar.gz
$ tar -xzf Compress-PDF*.tar.gz && rm Compress-PDF*.tar.gz

Beispiele, wie PDF-Dateien in Bilder umgewandelt werden können zeigen die Artikel pdf2bmp und pdf2jpg

Fonts

Fonts liegen in

/usr/share/fonts

eigene Fonts liegen in

.fonts oder .local/share/fonts

Microsoft-Fonts

Will man die True Type Mircosoft Schriftarten Arial, Times, Comic Sans… installieren, so muss man das Paket ttf-mscorefonts-installer installieren.

Fonts nachinstallieren

Eine Auswahl schöner Fonts:

sudo apt-get install fonts-dkg-handwriting fonts-dosis fonts-femkeklaver fonts-humor-sans fonts-isabella fonts-kristi fonts-leckerli-one fonts-lindenhill fonts-okolaks fonts-pecita fonts-quattrocento fonts-radisnoir fonts-rufscript fonts-tomsontalks fonts-vollkorn fonts-yanone-kaffeesatz

Unnötige Fonts deinstallieren

sudo dpkg -P fonts-gargi fonts-kacst fonts-kacst-one fonts-lklug-sinhala fonts-lohit-beng-assamese fonts-lohit-beng-bengali fonts-lohit-deva fonts-lohit-gujr fonts-lohit-guru fonts-lohit-knda fonts-lohit-mlym fonts-lohit-orya fonts-lohit-taml fonts-lohit-taml-classical fonts-lohit-telu fonts-noto fonts-noto-cjk fonts-noto-hinted fonts-noto-mono fonts-noto-unhinted fonts-tlwg-garuda fonts-beng fonts-deva fonts-deva-extra fonts-gujr fonts-guru fonts-indic fonts-knda fonts-mlym fonts-orya fonts-taml fonts-telu fonts-thai-tlwg fonts-beng-extra fonts-guru-extra fonts-kalapi fonts-khmeros-core fonts-lao fonts-nakula fonts-nanum fonts-navilu fonts-pagul fonts-sahadeva fonts-samyak-deva fonts-samyak-gujr fonts-samyak-mlym fonts-samyak-taml fonts-sarai fonts-sil-abyssinica fonts-sil-padauk fonts-smc fonts-takao-pgothic fonts-telu-extra fonts-tibetan-machine fonts-tlwg-garuda-ttf fonts-tlwg-kinnari fonts-tlwg-kinnari-ttf fonts-tlwg-laksaman fonts-tlwg-laksaman-ttf fonts-tlwg-loma fonts-tlwg-loma-ttf fonts-tlwg-mono fonts-tlwg-mono-ttf fonts-tlwg-norasi fonts-tlwg-norasi-ttf fonts-tlwg-purisa fonts-tlwg-purisa-ttf fonts-tlwg-sawasdee fonts-tlwg-sawasdee-ttf fonts-tlwg-typewriter fonts-tlwg-typewriter-ttf fonts-tlwg-typist fonts-tlwg-typist-ttf fonts-tlwg-typo fonts-tlwg-typo-ttf fonts-tlwg-umpush fonts-tlwg-umpush-ttf fonts-tlwg-waree fonts-tlwg-waree-ttf fonts-gubbi fonts-gujr-extra fonts-orya-extra fonts-stix fonts-wqy-microhei

 

 

pdflatex

Mit pdflatex lässt sich eine tex-Datei in ein PDF-Dokument umwandeln.

pdflatex -etex -interaction=nonstopmode linux.tex

Enthält die Datei ein Inhaltsverzeichnis, muss der Befehl zwei mal ausgeführt werden.

geschützte PDF

In der Datei /usr/share/ghostscript/*/lib/gs_pdfwr.ps oder auch /usr/share/gs-esp/8.15/lib/gs_pdfwr.ps steht gegen Ende folgender Eintrag:

 % Patch 'where' so that the distiller operators are only visible 
 % if the pdfwrite device is the current one. 
 { currentdevice .devicename /pdfwrite eq { 
 .where 

Dieser muss in { currentdevice .devicename /pdfwritexyz eq { abgeändert werden.
Danach ist es möglich mit ps2pdf geschützte Dateien umzuwandeln.

psselect

psselect -e eingabe.ps ausgabe.ps schreibt alle geraden Seiten in eine neue Datei.

Mit -o werden die ungeraden Seiten gespeichert.

Für die Seiten 1 und 3-5 gibt man psselect -p1.3-5 eingabe.ps ausgabe.ps an.

Die Umgekehrte Reihenfolge erhält man mit -r

pdftk

Manipulation von PDF-Dateien

Beispiele:
Mehrere PDFs verschmelzen: pdftk eins.pdf zwei.pdf drei.pdf cat output einszweidrei.pdf

Einzelne Seiten von PDFs in ein neues PDF extrahieren: pdftk input.pdf cat 1 2 4 5 12 output auszug.pdf
pdftk A=eins.pdf B=zwei.pdf cat A1-7 B1-5 A8 output kombiniert.pdf

Ein mehrseitiges PDF in Einzelseiten zerlegen: pdftk beispiel.pdf burst

Von Seite 2 bis Ende: pdftk inputfile.pdf cat 2-end output outputfile.pdf

Installation unter Ubuntu18.04 Bionic:

  • wget http://archive.ubuntu.com/ubuntu/pool/universe/p/pdftk/pdftk_2.02-4build1_amd64.deb
  • wget http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-6/libgcj17_6.4.0-8ubuntu1_amd64.deb
  • wget http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-defaults/libgcj-common_6.4-3ubuntu1_all.deb
  • sudo dpkg -i pdftk_2.02-4build1_amd64.deb libgcj17_6.4.0-8ubuntu1_amd64.deb libgcj-common_6.4-3ubuntu1_all.deb

ps2pdf

Umwandeln von PostScript in PDF
Beispiele:

  • Optimieren, für schnelle Anzeige: ps2pdf -dOptimize=true datei.ps
  • Schriften einbinden: ps2pdf -dEmbedAllFonts=true datei.ps
  • Komprimieren: ps2pdf -dUseFlatCompression=true datei.ps
  • Auflösung: ps2pdf -dPDFSETTINGS=/printer datei.ps Parameter (schlecht -> gut): /screen /ebook /printer /prepress

pdf2bmp

Folgendes Skript konvertiert PDF-Dokumente in BMP-Dateien, wobei die Auflösung der BMP-Datei frei gewählt werden kann. Standard ist 300 dpi.

#!/bin/bash
#pdf2bmp - konvertiert PDF/PS-Dateien nach BMP
#
function err_text {
  while [ $# -gt 0 ] ; do
    echo "$1" 1>&2 # Ausgabe auf stderr
    shift
  done
  echo "`basename $0` [-r resolution" href="-o outfile] infile[.pdf|.ps]" 1>&2 //
   # Ausgabe auf stderr
  exit 1
}

# Sortieren der Parameter
set--`getopt "r:o:" "$@"` || err_text
# Startwerte definieren
outres=300
# Parameter abfragen
while : ; do
  case "$1" in
    -r) shift; outres=$1;;
    -o) shift; outfile=$1;;
    --) break;;
  esac
  shift
  [ $# -eq 0 ] && break # Fehler in den angegebenen Parametern
done
shift
[ $# -lt 1 ] && err_text # kein Dateiname wurde übergeben
while [ $# -ge 1 ] ; do
  if [ -f "$1" ] ; then
    gs -sDEVICE=bmp16m -sOutputFile="${outfile:-`basename "$1"`}_%03d.bmp" -r$outres //
     -dNOPAUSE -dBATCH "$1"
  else
    err_text "`basename $0` - Datei '$1' existiert nicht"
  fi
  shift
done