JPEG 파일의 디렉토리를 단일 PDF 문서로 변환


242

디렉토리에 많은 JPEG 파일이 있고 PDF로 변환 한 후 함께 연결하여 단일 문서를 만들고 싶습니다.

이것을 어떻게 할 수 있습니까?

이 프로세스가 더 빠를 것이기 때문에 명령 줄을 사용하는 것이 좋습니다.

답변:


358

로부터 imagemagick패키지를 사용하는 convert명령을 :

convert *.jpg pictures.pdf

현재 폴더에 모든 jpg가 포함 된 단일 pdf가 제공됩니다.

다음을 사용하여 IM을 설치하십시오.

sudo apt-get install imagemagick

출처 : stackoverflow

편집 : 번호가 지정되지 않은 이미지는 순서가 잘못되었습니다. 10 개 이상인 경우 filename01.jpg ... filename99.jpg 등으로 끝나는 이름을 지정해야합니다. 올바른 순서를 위해서는 선행 0이 필요합니다. 001 ... 999가 100 개 이상인 경우


1
조커를 사용하는 것이 효과가 없었으므로 @Alex의 솔루션을 사용해야했습니다.
유세비우스

2
와일드 카드는 변환과 당신을 위해 작동하지 않는 경우 @Eusebius, 당신은 같은 oneliner을 사용할 수 있습니다for f in *.jpg; do convert "$f" "$f.pdf"; done; pdftk *.pdf cat output final.pdf
장로 긱

1
GrphicMagick사용자가 실행gm convert *.jpg pictures.pdf
michaelbn

어쩌면 내 jpg 파일이 너무 크고 많을 수도 있지만 16GB 시스템이 스와핑하기 시작하면 RAM이 너무 많이 소비되었습니다.
RonJohn

8
이 방법으로 인해 not authorized오류가 발생할 수 있습니다. 이 관련 질문 및 답변을 참조하십시오 .
Jani Uusitalo

31
convert `ls -1v` file.pdf
  • 이 ls는 한 번에 하나의 파일을 "자연 순서"(1,2,3 ...)로 나열하고 변환을 진행합니다.

1
나는 이것을 시도했지만 그것은 효과가 없었다. 수많은 오류는 파일 이름의 공백과 관련이있을 수 있음을 나타냅니다.
Geek

5
공백 문제를 해결하려면 먼저 패턴 교체를 수행하십시오. for ThisFile in * .jpg; mv "$ ThisFile" "$ {ThisFile // / _}"> / dev / null 2> & 1; d
사이먼

20

나를 위해 일했습니다 (그러나 경고! 압축을 해제하면 PDF가 커집니다!) :

convert page1.jpg page2.jpg +compress file.pdf

또는:

convert -rotate 90 page\*.jpg +compress file.pdf

ubuntuforums.org에서 멈추지 +compress않도록 도와줍니다. 참고 : + compress는 압축을 끕니다. + compress 옵션을 사용하지 않고 당시 작업했던 컴퓨터가 영원히 멈추는 것처럼 보였습니다. 마일리지가 다를 수 있습니다! imagemagick.org 옵션 -compress의 RTFM , 압축 / 매달림 문제가 느리면 -compress <type>으로 실험 해보십시오.


13
위에서 제안한대로 명령에 +compress옵션을 사용하지 마십시오 convert! 실제로 모든 압축을 비활성화하여 원본 JPEG보다 10 배 큰 PDF로 남겨 둡니다. 압축 옵션을 지정하지 않으면 convert입력 압축 형식 (JPEG)과 함께 사용되며이 경우 크기가 가장 좋은 옵션 파일입니다. 출처 : http://www.imagemagick.org/script/command-line-options.php#compress

직관적이지 않습니다! 고마워요 S Minddal. 그것은 나를 위해 일했다. 내가 사용하고있는 컴퓨터가 압축을 수행하는 데 문제가 있다고 가정합니다. 답변을 조정하겠습니다.
gaoithe

2
그래서 $ converet *.jpg file.pdf보다 작은 파일 크기로 잘 작동 +compress인수
박사 학위

18

불행히도 convertPDF로 "포장"하기 전에 이미지 품질이 변경됩니다. 따라서 품질 손실을 최소화하려면 원본 jpg을 PDF 에 넣는 것이 좋습니다 img2pdf.

다음 명령을 사용합니다.

  1. 이 명령은 해상도 나 품질의 손실없이 pdf모든 jpg이미지 에서 파일 을 만드는 것입니다 .

    ls -1 ./*jpg | xargs -L1 -I {} img2pdf {} -o {} .pdf

  2. 이 명령은 pdf페이지를 하나의 문서로 연결합니다 .

    pdftk * .pdf 고양이 출력 결합 .pdf

  3. 마지막으로 검색 가능한 PDF 파일의 스캔 품질을 변경하지 않는 OCR 텍스트 레이어를 추가합니다.

    pypdfocr Combine.pdf

    사용에 대한 대안 pypdfocr:

    ocrmypdf Combine.pdf Combine_ocr.pdf


1
좋은 방법! 압축이없는 유일한 단점은 결과로 생성되는 .pdf 파일 크기가 매우 높아질 것입니다 (즉, 모든 사진을 결합한 것보다 약간 큼). 그러나 변환하는 문서가 실제로 중요한 문서라면 가치가 있습니다!
Gokul NC

1
이것은 convert"보안 정책`PDF '에 의해 허용되지 않는 작업을 수행하려는 시도"와 함께 실패한 후에 잘 작동했습니다 .
Matthias Braun

12

LibreOffice Writer로 jpg 또는 png 파일을 열고 PDF로 내 보냅니다.

pdf를 내보내는 간단한 방법입니다.


예! 이미지 파일을 PDF로 내보내는 가장 좋은 방법은 LibreOffice입니다. 우리는에 ... 가져온 파일, 옵션 머리글과 바닥 글 전자 이상으로 많은 감사를 크기 조정, 페이지 레이아웃을 포함하여 PDF 출력을 완벽하게 제어 할 수 있습니다 user359154 영리한 제안을 위해!

8

다음 솔루션은 ImageMagick에도 의존 convert하지만 약간 더 정교합니다.

  • 출력 PDF 페이지 크기를 동일하게 유지하면서 모든 이미지의 크기가 다를 수 있습니다 (아래 예의 A4).
  • 이미지를 PDF 페이지의 중앙에 배치합니다.
  • 이미지 테두리와 PDF 페이지 테두리 사이의 최소 공간을 보장하여 문제없이 PDF를 인쇄 할 수 있습니다.
  • 이미지 데이터는 변경되지 않습니다. 따라서 이미지 품질에는 영향을 미치지 않으며 PDF 파일의 이미지 크기는 이미지와 거의 같으며 나중에 원본 이미지를으로 다시 추출 할 수 있습니다 pdfimages -j file.pdf img. 현재 PNG에서만 작동합니다. 아래 @dma_k의 설명을 참조하십시오. .

명령:

  1. 이 답변의 스크립트를 사용 하여 각 이미지를 A4 페이지 크기와 5 % 테두리가있는 자체 한 페이지 PDF 파일로 변환하십시오.
  2. 다음과 같이 모든 1 페이지 PDF 파일을 PDFtk로 연결하십시오.

    pdftk *.pdf cat output out.pdf
    

2
이 명령은 (적어도 Ubuntu 16.04에서 제공되는 버전에서) 이미지 데이터 영향을 받음을 보여줍니다 .convert some.jpg -format pdf -compress jpeg generated.pdf ; pdfimages -j generated.pdf generated.pdf ; diff -sq some.jpg generated.pdf-000.jpg
Stéphane Gourichon

2
나는 GraphicsMagick과 함께 놀고 있었고 이미지 재 압축을 수행 하는 것을 알았 습니다 . PDF 페이지에서 결과 JPEG 이미지의 품질이 훨씬 떨어집니다. 따라서 현재 가장 안전한 방법은 PNG 이미지를 추가하는 것입니다. 이미지가 올바르게 삽입됩니다. 이 게시물 도 참조하십시오 .
dma_k

-3

나는 http://convert-my-image.com/ 당신이 (아직 동일한 페이지이지만 다른 페이지) 이미지의 아카이브를 제공하고 공통의 PDF로 연결할 수있는 긍정적 인 것


3
이 제안에는 적어도 세 가지 문제가 있습니다. (1) 이미지를 웹 사이트에 업로드하고 결과 PDF를 다운로드하기 때문에 속도가 느려집니다. (2) 귀하의 데이터를 해당 웹 사이트를 운영하는 사람과 해당 웹 사이트를 위반 한 사람 및 유선 사용자에게 공개합니다. (3) 명령 줄 솔루션이 아닙니다.
sampablokuper
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.