Jak mogę wyodrębnić zakres stron / część pliku PDF?


423

Czy masz pomysł, jak wyodrębnić część dokumentu PDF i zapisać go jako PDF? W systemie OS X jest to całkowicie trywialne za pomocą Preview. Próbowałem edytora PDF i innych programów, ale bezskutecznie.

Chciałbym program, w którym wybieram część, którą chcę, a następnie zapisuję ją jako pdf za pomocą prostej komendy, takiej jak CMD+ Nw OS X. Chcę, aby wyodrębniona część była zapisana w formacie PDF, a nie JPEG.


Próbowałeś ImageMagick?
Martin Schröder

3
To do bitmapy Potrzebuję czegoś, co zapisuje jako PDF!
user72469,

3
pdfshufflerw repozytoriach.
Marc

2
pdfshufflernie działają już w Ubuntu 14.04+. Zawsze możesz skorzystać z okna dialogowego drukowania lub alternatywy opartej na terminalu, takiej jakpdfseparate
Rho

@Rho Wersja bezpośrednio zainstalowana przez apt-getnadal działa dla mnie dobrze w 16.04. Może naprawili błędy, jeśli były jakieś?
Xji

Odpowiedzi:


476

pdftkjest przydatnym narzędziem dla wielu platform ( strona główna pdftk ).

pdftk full-pdf.pdf cat 12-15 output outfile_p12-15.pdf

przekazujesz nazwę głównego pliku pdf, a następnie nakazujesz, aby zawierał tylko określone strony (12-15 w tym przykładzie) i zapisywał go w nowym pliku.


6
Jeśli chcę wyodrębnić strony 1-10, 15 i 17, jak napisać polecenie?
Patrick Li

31
@PatrickLipdftk A=in.pdf cat A1-10 A15 A17 output out.pdf
m8mble 28.10.16

9
Pamiętaj, że pdftknie jest dostępny w Ubuntu 18.04. (patrz askubuntu.com/questions/1028522/… )
alkamid

6
@alkamid it is: sudo snap install pdftk
Qubix

12
Chociaż z pdftkpewnością jest to narzędzie, które może wykonać tę pracę, odradzam to. To nie jest wolne oprogramowanie, ale niezgrabne oprogramowanie shareware. Potrzebuje również JVM. Bardziej rozsądnym narzędziem jest qpdf, jak sugerowano w innej odpowiedzi .
leftaroundabout

245

bardzo proste, użyj domyślnego czytnika plików PDF:

wydrukuj jako plik. to jest to! menu drukowania

następnie

ustawienie nowego pliku PDF


12
flippin brilliant
andybleaden

17
Daje katastrofalne wyniki dzięki plikom rzutnika, mapom i innym dokumentom niezgodnym z formatem strony drukarki.
Luís de Sousa,

11
Może to spowodować, że plik będzie miał znacznie większy rozmiar niż oryginalny dokument.
dat

7
więc nie „wyodrębnia” zakresu stron. Tworzy nowy plik pdf ze starego, tak jakbyś używał wysokiej rozdzielczości drukarki / skanera.
sylvainulg,

6
Nadaje się do prostych przypadków, ale niepożądane wyniki w dokumentach z wyróżnieniem komentarzy: wyróżnienie staje się 100% kryciem i blokuje tekst.
loved.by.Jesus

79

Zakres stron - skrypt Nautilus


Przegląd

Stworzyłem nieco bardziej zaawansowany skrypt oparty na samouczku @ThiagoPonte, do którego jest link. Jego kluczowe cechy to

  • że jest oparty na GUI,
  • kompatybilny ze spacjami w nazwach plików,
  • i oparty na trzech różnych backendach, które są w stanie zachować wszystkie atrybuty oryginalnego pliku

Zrzut ekranu

wprowadź opis zdjęcia tutaj

Kod

#!/bin/bash
#
# TITLE:        PDFextract
#
# AUTHOR:       (c) 2013-2015 Glutanimate (https://github.com/Glutanimate)
#
# VERSION:      0.2
#
# LICENSE:      GNU GPL v3 (http://www.gnu.org/licenses/gpl.html)
# 
# OVERVIEW:     PDFextract is a simple PDF extraction script based on Ghostscript/qpdf/cpdf.
#               It provides a simple way to extract a page range from a PDF document and is meant
#               to be used as a file manager script/addon (e.g. Nautilus script).
#
# FEATURES:     - simple GUI based on YAD, an advanced Zenity fork.
#               - preserves _all_ attributes of your original PDF file and does not compress 
#                 embedded images further than they are.      
#               - can choose from three different backends: ghostscript, qpdf, cpdf
#
# DEPENDENCIES: ghostscript/qpdf/cpdf poppler-utils yad libnotify-bin
#                         
#               You need to install at least one of the three backends supported by this script.
#
#               - ghostscript, qpdf, poppler-utils, and libnotify-bin are available via 
#                 the standard Ubuntu repositories
#               - cpdf is a commercial CLI PDF toolkit that is free for personal use.
#                 It can be downloaded here: https://github.com/coherentgraphics/cpdf-binaries
#               - yad can be installed from the webupd8 PPA with the following command:
#                 sudo add-apt-repository ppa:webupd8team/y-ppa-manager && apt-get update && apt-get install yad
#
# NOTES:        Here is a quick comparison of the advantages and disadvantages of each backend:
#
#                               speed     metadata preservation     content preservation        license
#               ghostscript:     --               ++                         ++               open-source
#               cpdf:             -               ++                         ++               proprietary
#               qpdf:            ++                +                         ++               open-source
#
#               Results might vary depending on the document and the version of the tool in question.
#
# INSTALLATION: https://askubuntu.com/a/236415
#
# This script was inspired by Kurt Pfeifle's PDF extraction script 
# (http://www.linuxjournal.com/content/tech-tip-extract-pages-pdf)
#
# Originally posted on askubuntu
# (https://askubuntu.com/a/282453)

# Variables

DOCUMENT="$1"
BACKENDSELECTION="^qpdf!ghostscript!cpdf"

# Functions

check_input(){
  if [[ -z "$1" ]]; then
    notify "Error: No input file selected."
    exit 1
  elif [[ ! "$(file -ib "$1")" == *application/pdf* ]]; then
    notify "Error: Not a valid PDF file."
    exit 1
  fi
}

check_deps () {
  for i in "$@"; do
    type "$i" > /dev/null 2>&1 
    if [[ "$?" != "0" ]]; then
      MissingDeps+="$i"
    fi
  done
}

ghostscriptextract(){
  gs -dFirstPage="$STARTPAGE "-dLastPage="$STOPPAGE" -sOutputFile="$OUTFILE" -dSAFER -dNOPAUSE -dBATCH -dPDFSETTING=/default -sDEVICE=pdfwrite -dCompressFonts=true -c \
  ".setpdfwrite << /EncodeColorImages true /DownsampleMonoImages false /SubsetFonts true /ASCII85EncodePages false /DefaultRenderingIntent /Default /ColorConversionStrategy \
  /LeaveColorUnchanged /MonoImageDownsampleThreshold 1.5 /ColorACSImageDict << /VSamples [ 1 1 1 1 ] /HSamples [ 1 1 1 1 ] /QFactor 0.4 /Blend 1 >> /GrayACSImageDict \
  << /VSamples [ 1 1 1 1 ] /HSamples [ 1 1 1 1 ] /QFactor 0.4 /Blend 1 >> /PreserveOverprintSettings false /MonoImageResolution 300 /MonoImageFilter /FlateEncode \
  /GrayImageResolution 300 /LockDistillerParams false /EncodeGrayImages true /MaxSubsetPCT 100 /GrayImageDict << /VSamples [ 1 1 1 1 ] /HSamples [ 1 1 1 1 ] /QFactor \
  0.4 /Blend 1 >> /ColorImageFilter /FlateEncode /EmbedAllFonts true /UCRandBGInfo /Remove /AutoRotatePages /PageByPage /ColorImageResolution 300 /ColorImageDict << \
  /VSamples [ 1 1 1 1 ] /HSamples [ 1 1 1 1 ] /QFactor 0.4 /Blend 1 >> /CompatibilityLevel 1.7 /EncodeMonoImages true /GrayImageDownsampleThreshold 1.5 \
  /AutoFilterGrayImages false /GrayImageFilter /FlateEncode /DownsampleGrayImages false /AutoFilterColorImages false /DownsampleColorImages false /CompressPages true \
  /ColorImageDownsampleThreshold 1.5 /PreserveHalftoneInfo false >> setdistillerparams" -f "$DOCUMENT"
}

cpdfextract(){
  cpdf "$DOCUMENT" "$STARTPAGE-$STOPPAGE" -o "$OUTFILE"
}

qpdfextract(){
  qpdf --linearize "$DOCUMENT" --pages "$DOCUMENT" "$STARTPAGE-$STOPPAGE" -- "$OUTFILE"
  echo "$OUTFILE"
  return 0 # even benign qpdf warnings produce error codes, so we suppress them
}

notify(){
  echo "$1"
  notify-send -i application-pdf "PDFextract" "$1"
}

dialog_warning(){
  echo "$1"
  yad --center --image dialog-warning \
  --title "PDFExtract Warning" \
  --text "$1" \
  --button="Try again:0" \
  --button="Exit:1"

  [[ "$?" != "0" ]] && exit 0
}

dialog_settings(){
  PAGECOUNT=$(pdfinfo "$DOCUMENT" | grep Pages | sed 's/[^0-9]*//') #determine page count

  SETTINGS=($(\
      yad --form --width 300 --center \
          --window-icon application-pdf --image application-pdf \
          --separator=" " --title="PDFextract"\
          --text "Please choose the page range and backend"\
          --field="Start:NUM" 1[!1..$PAGECOUNT[!1]] --field="End:NUM" $PAGECOUNT[!1..$PAGECOUNT[!1]] \
          --field="Backend":CB "$BACKENDSELECTION" \
          --button="gtk-ok:0" --button="gtk-cancel:1"\
      ))

  SETTINGSRET="$?"

  [[ "$SETTINGSRET" != "0" ]] && exit 1

  STARTPAGE=$(printf %.0f ${SETTINGS[0]}) #round numbers and store array in variables
  STOPPAGE=$(printf %.0f ${SETTINGS[1]})
  BACKEND="${SETTINGS[2]}"
  EXTRACTOR="${BACKEND}extract"

  check_deps "$BACKEND"

  if [[ -n "$MissingDeps" ]]; then
    dialog_warning "Error, missing dependency: $MissingDeps"
    unset MissingDeps
    dialog_settings
    return
  fi

  if [[ "$STARTPAGE" -gt "$STOPPAGE" ]]; then 
    dialog_warning "<b>   Start page higher than stop page.   </b>"
    dialog_settings
    return
  fi

  OUTFILE="${DOCUMENT%.pdf} (p${STARTPAGE}-p${STOPPAGE}).pdf"
}

extract_pages(){
  $EXTRACTOR
  EXTRACTORRET="$?"
  if [[ "$EXTRACTORRET" = "0" ]]; then
    notify "Pages $STARTPAGE to $STOPPAGE succesfully extracted."
  else
    notify "There has been an error. Please check the CLI output."
  fi
}


# Main

check_input "$1"
dialog_settings
extract_pages

Instalacja

Postępuj zgodnie z ogólnymi instrukcjami instalacji skryptów Nautilus . Przeczytaj uważnie nagłówek skryptu, ponieważ pomoże to wyjaśnić instalację i sposób użycia skryptu.


Częściowe strony - PDF Shuffler


Przegląd

PDF-Shuffler to mała aplikacja python-gtk, która pomaga użytkownikowi łączyć lub dzielić dokumenty pdf oraz obracać, przycinać i zmieniać układ stron za pomocą interaktywnego i intuicyjnego interfejsu graficznego. Jest to nakładka na python-pyPdf.

Instalacja

sudo apt-get install pdfshuffler

Stosowanie

PDF-Shuffler może przycinać i usuwać pojedyncze strony PDF. Możesz go użyć do wyodrębnienia zakresu stron z dokumentu lub nawet stron częściowych za pomocą funkcji przycinania:

wprowadź opis zdjęcia tutaj


Elementy strony - Inkscape


Przegląd

Inkscape to bardzo wydajny edytor grafiki wektorowej typu open source. Obsługuje wiele różnych formatów, w tym pliki PDF. Możesz go użyć do wyodrębnienia, modyfikacji i zapisania elementów strony z pliku PDF.

Instalacja

sudo apt-get install inkscape

Stosowanie

1.) Otwórz wybrany plik PDF za pomocą Inkscape. Pojawi się okno importu. Wybierz stronę, z której chcesz wyodrębnić elementy. Pozostaw pozostałe ustawienia bez zmian:

wprowadź opis zdjęcia tutaj

2.) W Inkscape kliknij i przeciągnij, aby wybrać elementy, które chcesz wyodrębnić:

wprowadź opis zdjęcia tutaj

3.) Odwróć zaznaczenie za pomocą !i usuń wybrany obiekt za pomocą DELETE:

wprowadź opis zdjęcia tutaj

4.) Przytnij dokument do pozostałych obiektów, otwierając okno dialogowe Właściwości dokumentu za pomocą CTRL+ SHIFT+ Di wybierając „dopasuj dokument do obrazu”:

wprowadź opis zdjęcia tutaj

5.) Zapisz dokument jako plik PDF w oknie dialogowym Plik -> Zapisz jako :

6.) Jeśli w przyciętym dokumencie znajdują się obrazy bitmapowe / rastrowe, możesz ustawić ich DPI w oknie dialogowym, które pojawi się obok:

wprowadź opis zdjęcia tutaj

7.) Po wykonaniu wszystkich kroków utworzysz prawdziwy plik PDF, który składa się tylko z wybranych obiektów:

wprowadź opis zdjęcia tutaj


Wielki wysiłek. Dzięki! Rozumiem, że nie pozwala wybrać części strony, a jedynie całe strony. Czy mam rację?
carnendil 17.04.13

2
@carnendil: Tak, dokładnie. Nie sądzę, że ghostscript jest w stanie to zrobić. Ale mogą istnieć inne rozwiązania, aby to zrobić programowo . Na razie zredagowałem swoją odpowiedź za pomocą alternatywnego (i nieco hackerskiego) rozwiązania wykorzystującego shuffler PDF.
Glutanimate,

3
ok, dodałem inną metodę za pomocą Inkscape.
Glutanimate,

1
pdfshufflernie jest wystarczające, jeśli chcesz wyodrębnić część strony PDF. Oryginalne dane PDF strony są nadal zachowane w pliku. Nie używaj tej metody, jeśli chcesz usunąć wrażliwe dane z pliku PDF.
Rob W

pdfshufflerjest teraz nazywany pdfarranger.
amoe

69

QPDF jest świetny. Użyj go w ten sposób, aby wyodrębnić strony 1-10 input.pdfi zapisać go jako output.pdf.

qpdf --pages input.pdf 1-10 -- input.pdf output.pdf

Uwaga: input.pdfnapisano dwa razy.

Możesz go zainstalować, wywołując:

sudo apt-get install qpdf

Jest to świetne narzędzie do manipulacji plikami PDF, które jest bardzo szybkie, ma bardzo niewiele zależności. „Może szyfrować i linearyzować pliki, ujawniać elementy wewnętrzne pliku PDF oraz wykonywać wiele innych operacji przydatnych dla użytkowników końcowych i programistów PDF”.

http://sourceforge.net/projects/qpdf/


3
Jedyny problem, jaki z tym miałem, to to, że mimo wszystkich usuniętych nadal wyświetla wszystkie strony w spisie treści. Poza tym genialne dzięki! :)
Wilf,

3
Świetne oprogramowanie. Nicea
Anwar

2
Ostrzeżenie - wszystkie pliki są ogromne .. mniej więcej tego samego rozmiaru co oryginał.
Corey Alix,

3
Działa, ale ta składnia do określania stron (dwukrotne wyświetlanie pliku wejściowego, a następnie dodawanie --) jest naprawdę dziwna.
Dan Dascalescu

3
Flaga --pages umożliwia dzielenie stron z wielu plików PDF. Należy pamiętać, że można uniknąć powielania nazwę używając .zamiast pliku wejściowego w opcjach --pages: qpdf --pages . 1-10 -- input.pdf output.pdf.
Bart

43

Zapisz to jako skrypt powłoki, np. Pdfextractor.sh:

#!/bin/bash
# this function uses 3 arguments:
#     $1 is the first page of the range to extract
#     $2 is the last page of the range to extract
#     $3 is the input file
#     output file will be named "inputfile_pXX-pYY.pdf"
gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -dSAFER \
   -dFirstPage="${1}" \
   -dLastPage="${2}" \
   -sOutputFile="${3%.pdf}_p${1}-p${2}.pdf" \
   "${3}"

Aby uruchomić, wpisz:

./pdfextractor.sh 4 20 myfile.pdf
  1. 4 odnosi się do strony, rozpocznie nowy pdf.

  2. 20 odnosi się do strony, na której kończy się pdf.

  3. myfile.pdf to plik pdf, który chcesz wyodrębnić części.

Dane wyjściowe byłyby myfile_p4_p20.pdfw tym samym katalogu, co oryginalny plik pdf.

Wszystkie te i więcej informacji tutaj: Porada techniczna


15
gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -dFirstPage=1 -dLastPage=10 -sOutputFile=output.pdf input.pdf
Uprośćmy

i jak określić plik wejściowy?
Anwar

1
-1 do wykonywania interpretacji parametrów bash poza ciągiem cudzysłowu. (powinno być "-sOutputFile=${3%.pdf}_p${1}-p${2}.pdf"itd. (zwróć uwagę na cytaty)).
Rotsor

1
@ Ho1, napisz to jako nową odpowiedź, to naprawdę pomaga!
Joshua Salazar

To najbardziej przenośna odpowiedź, ponieważ ghostscript prawdopodobnie zostanie zainstalowany praktycznie wszędzie.
Calimo


27

Istnieje narzędzie wiersza polecenia o nazwie pdfseparate .

Z dokumentów:

pdfseparate sample.pdf sample-%d.pdf

extracts  all pages from sample.pdf, if i.e. sample.pdf has 3 pages, it
   produces

sample-1.pdf, sample-2.pdf, sample-3.pdf

Lub, aby wybrać pojedynczą stronę (w tym przypadku pierwszą stronę) z pliku sample.pdf:

pdfseparate -f 1 -l 1 sample.pdf sample-1.pdf

2
świetne narzędzie! znacznie szybciej niżpdftk
Anwar

3
Dobrze, ale ogranicza się tylko do jednej strony, a jeśli chcesz więcej, otrzymasz osobne strony.
Ho1

2
Jasne, chociaż można wykonać powyższe polecenie w pdfunite, aby utworzyć pojedynczy dokument.
jdmcbr

3
Jeśli masz ogromny dokument i chcesz podzielić wszystkie strony, jest on naprawdę szybki i przydatny.
MEDVIS

19

pdftk( sudo apt-get install pdftk) to również świetna linia poleceń do manipulacji PDF. Oto kilka przykładów tego, co pdftkmożna zrobić:

   Collate scanned pages
     pdftk A=even.pdf B=odd.pdf shuffle A B output collated.pdf
     or if odd.pdf is in reverse order:
     pdftk A=even.pdf B=odd.pdf shuffle A Bend-1 output collated.pdf

   Join in1.pdf and in2.pdf into a new PDF, out1.pdf
     pdftk in1.pdf in2.pdf cat output out1.pdf
     or (using handles):
     pdftk A=in1.pdf B=in2.pdf cat A B output out1.pdf
     or (using wildcards):
     pdftk *.pdf cat output combined.pdf

   Remove page 13 from in1.pdf to create out1.pdf
     pdftk in.pdf cat 1-12 14-end output out1.pdf
     or:
     pdftk A=in1.pdf cat A1-12 A14-end output out1.pdf

   Burst a single PDF document into pages and dump its data to
   doc_data.txt
     pdftk in.pdf burst

   Rotate the first PDF page to 90 degrees clockwise
     pdftk in.pdf cat 1east 2-end output out.pdf

   Rotate an entire PDF document to 180 degrees
     pdftk in.pdf cat 1-endsouth output out.pdf

W twoim przypadku zrobiłbym:

     pdftk A=input.pdf cat A<page_range> output output.pdf

Pakiet „pdftk” nie ma kandydata do instalacji
FireInTheSky,

8

Czy próbowałeś PDF Mod?

Możesz na przykład wyodrębnić strony i zapisać je jako pdf.

Opis:

PDF Mod to proste narzędzie do modyfikowania dokumentów PDF. Może obracać, wyodrębniać, usuwać
i zmieniać kolejność stron poprzez przeciąganie i upuszczanie. Wiele dokumentów można łączyć poprzez przeciąganie
i upuszczanie. Możesz także edytować tytuł, temat, autora i słowa kluczowe
dokumentu PDF za pomocą PDF Mod.

Zainstaluj za pośrednictwem centrum oprogramowania

Mam nadzieję, że to się przyda.

Regars.


TAK, faktycznie próbowałem, ale NIE pozwala mi zapisać części strony, np. Wykresu jako pdf ... Chyba że nie widzę opcji. Pozwala mi wyodrębnić całą stronę z dokumentu, ale nie tego chcę
user72469,

Używam go regularnie, świetne narzędzie! ale miałem dokument zawierający około 170 stron, z którymi pdfmod nie mógł sobie poradzić.
loved.by.Jesus

Łał. Jest to zaskakująco gładkie. Rzuciłem na nią moją 512-stronicową książkę (50MiB) i ... była szybka. Interfejs użytkownika to pestka. Dla ćpunów z CLI, takich jak ja, potrzeba pewnego poziomu GUI, aby mnie przekonać, ale to wystarczy!
patrz

PDF Mod zawiera błędy w Kubuntu 18
Joshua Salazar

8

Próbowałem zrobić to samo. Wszystko co musisz zrobić to:

  1. zainstaluj pdftk:

    sudo apt-get install pdftk
    
  2. jeśli chcesz wyodrębnić losowe strony:

    pdftk myoldfile.pdf cat 1 2 4 5 output mynewfile.pdf
    
  3. jeśli chcesz wyodrębnić zakres:

    pdftk myoldfile.pdf cat 1-2 4-5 output mynewfile.pdf
    

Sprawdź źródło, aby uzyskać więcej informacji.


Uważam tę odpowiedź za najlepszą, ponieważ pokazuje ona, jak wprowadzić wiele zakresów.
Roman Luštrik,

6

Jak się okazuje, mogę to zrobić imagemagick. Jeśli go nie masz, zainstaluj po prostu za pomocą:

sudo apt-get install imagemagick

Uwaga 1 : Próbowałem tego z jednostronicowym plikiem pdf (uczę się obsługiwać imagemagick, więc nie chciałem więcej problemów niż to konieczne). Nie wiem czy / jak to będzie działać na wielu stronach, ale możesz wyodrębnić jedną interesującą stronę za pomocą pdftk:

pdftk A=myfile.pdf cat A1 output page1.pdf

gdzie podajesz numer strony, która ma zostać podzielona (w powyższym przykładzie A1wybiera pierwszą stronę).

Uwaga 2 : Obraz wynikowy wykorzystujący tę procedurę będzie rastrem.


Otwórz pdf za pomocą polecenia display, które jest częścią imagemagickpakietu:

display file.pdf

Mój wyglądał tak:

wyświetlanie obrazu pdf
Kliknij obraz, aby zobaczyć wersję w pełnej rozdzielczości

Teraz klikniesz okno, a menu pojawi się z boku. Tam wybierz Przekształć | Upraw .

imagemagick transform> menu przycinania

W głównym oknie możesz wybrać obszar, który chcesz przyciąć, po prostu przeciągając wskaźnik (klasyczny wybór od rogu do rogu).

wybór obszaru do uprawy
Zwróć uwagę na wskaźnik w kształcie dłoni wokół obrazu podczas wybierania

Ten wybór można zawęzić przed przejściem do następnego kroku.

Po zakończeniu zwróć uwagę na mały prostokąt, który pojawia się w lewym górnym rogu (patrz obrazek powyżej). Pokazuje wymiary obszaru wybranego najpierw (np. 281x218), A następnie współrzędne pierwszego narożnika (np +256+215.).

Zapisz wymiary wybranego obszaru; będziesz go potrzebować w momencie zapisywania przyciętego obrazu.

Teraz w menu podręcznym (które jest teraz konkretnym menu „przycinania”) kliknij przycisk Przytnij .

menu kadrowania obrazu

Na koniec, gdy będziesz zadowolony z wyników przycinania, kliknij menu Plik | Zapisać

Przejdź do folderu, w którym chcesz zapisać przycięty plik pdf, wpisz nazwę, kliknij przycisk Format , w oknie „Wybierz typ formatu obrazu” wybierz PDF i kliknij przycisk Wybierz . Wróć do okna „Przeglądaj i wybierz plik”, kliknij przycisk Zapisz .

imagemagick zapisz jako pdf

Przed zapisaniem imagemagickpoprosi o „wybranie geometrii strony”. Tutaj wpisujesz wymiary przyciętego obrazu, używając prostej litery „x”, aby oddzielić szerokość i wysokość.

imagemagick wybierz geometrię strony

Teraz możesz to wszystko zrobić idealnie z wiersza poleceń (polecenie jest convertz opcją -crop) - na pewno jest to szybsze, ale musisz wcześniej znać współrzędne obrazu, który chcesz wyodrębnić. Sprawdź man converti przykład na ich stronie internetowej .


Nie wiem o GUI imagemagick. Wygląda ciekawie. Jeśli jednak się mylę, popraw mnie, ale myślę, że imagickick nie obsługuje obrazów wektoryzowanych. Więc eksportujesz prawdopodobnie tylko obraz rastrowy / bitmapowy. W takim przypadku ta metoda jest taka sama, jak zrobienie zrzutu ekranu regionu dokumentu.
Glutanimate,

1
Rzeczywiście, imagemagickdziała tylko na obrazach rastrowych i displayjest tylko jednym poleceniem pakietu. Istnieje wiele interfejsów imagemagick- sprawdź ich stronę internetową. Myślę, że najlepszym rozwiązaniem dla obrazów wektorowych jest twoja metoda z Inkscape.
carnendil

2
Możesz dodać zastrzeżenie na górze odpowiedzi jako ostrzeżenie, że spowoduje to konwersję grafiki wektorowej do grafiki rastrowej. Ta właściwość sprawia, że ​​jest to zupełnie inne podejście.
bluenote10

2

Rozdzielanie i scalanie plików PDF jest bardzo przydatne w przypadku tych i innych operacji na plikach PDF.

Pobierz stąd


1
Możesz pobrać najnowszą wersję z linku powyżej, ale jeśli wolisz wygodę Software Center, możesz także zainstalować ją stamtąd (lub z terminala przez sudo apt-get install pdfsam). Jednak wersja Ubuntu jest dość przestarzała, ponieważ wciąż jest w wersji 1.1.4, podczas gdy wersja sourceforge jest już 2.2.2.
Waldir Leoncio

Najnowsza wersja 3.x (obecnie 3.1.0) ma pakiet .deb, który można zainstalować na Ubuntu i moduł Extract Pages, który robi to, o co poprosił OP
Andrea Vacondio

1
@Andrea Vacondio Bravo za doskonałą edycję! Pomagasz zabezpieczyć internet. Dowiedziałem się, że plik ze starego linku na sourceforge.net ma w sobie bzdury. Nowi właściciele strony SourceForge powiedzieli, że przestaną to robić, ale oczywiście skłamali.
karel,

2

Ponieważ pierwotny użytkownik poprosił o narzędzie interaktywne, a nie narzędzie wiersza poleceń: łatwym rozwiązaniem jest użycie dowolnej przeglądarki plików PDF (okular na Kubuntu, evince, a nawet Firefox na Ubuntu), a następnie użycie standardowego okna dialogowego drukowania, wybierz „drukuj, aby Plik PDF ”, a następnie wybierz w rozszerzonym oknie dialogowym ustawień, które strony„ wydrukować ”. Ten wariant ma pewne wady, ponieważ niektóre sztuczki z oryginalnego pliku PDF (takie jak obrócone strony, formularze itp.) Mogą się zgubić, ale działa ono prosto w przypadku większości prostych plików PDF.


0

Jeśli chcesz wyodrębnić z plików PDF, możesz użyć http://www.sumnotes.net . To niesamowite narzędzie do wyodrębniania notatek, wyróżnień i obrazów z plików PDF. Możesz także obejrzeć samouczki na Youtube, pisząc sumnotes.

Mam nadzieję, że ci się spodoba!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.