Wiem, że już to robiłem, więc jestem pewien, że to możliwe, po prostu zapominam, jak to zrobić. Istnieje sposób, aby powiedzieć konwerterowi, aby pobrać konkretną stronę pliku PDF, i chciałbym zachować format tej strony jako PDF.
Wiem, że już to robiłem, więc jestem pewien, że to możliwe, po prostu zapominam, jak to zrobić. Istnieje sposób, aby powiedzieć konwerterowi, aby pobrać konkretną stronę pliku PDF, i chciałbym zachować format tej strony jako PDF.
Odpowiedzi:
ImageMagick to narzędzie do obrazów bitmapowych, których większość plików PDF nie jest. Jeśli go użyjesz, zrasteryzuje dane, co często nie jest pożądane.
Pdftk może wyodrębnić jedną lub więcej stron z pliku PDF.
pdftk A=input.pdf cat A42 A43 output pages_42_43.pdf
Jeśli masz instalację LaTeX z PDFLaTeX, możesz użyć stron pdf . Istnieje opakowanie powłoki dla stron pdf, pdfjam .
pdfjam -o pages_42_43.pdf input.pdf 42,43
Inną możliwością (przesadną tutaj, ale przydatną w przypadku wymagań bardziej złożonych niż jedna strona) jest Python z biblioteką PyPdf .
#!/usr/bin/env python
import copy, sys
from pyPdf import PdfFileWriter, PdfFileReader
input = PdfFileReader(sys.stdin)
output = PdfFileWriter()
for i in [42, 43]:
output.addPage(input.getPage(i))
output.write(sys.stdout)
pdfjam
działa jak urok i został już zainstalowany z moją dystrybucją LaTeX. Jest bardzo łatwy w użyciu.
pdftk
więc nie wydaje się po prostu wyodrębniać strony. W przeciwnym razie wynik był dobry.
Możesz użyć notacji w convert(1)
indeksie dolnym, aby „indeksować” do pliku PDF:
$ convert source.pdf[1] dest.pdf
Wartość indeksu zależy od sposobu, w jaki eksporter PDF numerował strony. W testach na plikach tutaj liczby wydają się być zerowe, więc powyższy przykład pokazuje drugą stronę dokumentu. Widziałem przykłady online, w których zamiast tego pokazują indeksy liter, ponieważ najwyraźniej twórca PDF „ponumerował” w ten sposób strony w tym dokumencie.
Niestety nie daje to bardzo dobrych wyników, ponieważ ImageMagick zakłada, że wszystko opiera się na pikselach, a zatem rasteryzuje obrazy wektorowe, takie jak typografia w typowym pliku PDF.
Lepszym narzędziem do tego zadania jest Ghostscript , który prawdopodobnie już zainstalowałeś:
$ gs -dNOPAUSE -dBATCH -dFirstPage=2 -dLastPage=2 -sDEVICE=pdfwrite \
-sOutputFile=dest.pdf -f src.pdf
To przekazuje dane PDF bez zmian, ponieważ Ghostscript rozumie PDF (pochodną PostScript) na znacznie głębszy poziom niż ImageMagick.
-density 300
to najsłodsze miejsce. Coś większego i tworzysz ogromne pliki tymczasowe - które i tak prawdopodobnie zmniejszysz do miniatur
source.pdf[3-6]
pdftk
. Będziesz chciał z niego skorzystać.