Làm cách nào để chuyển đổi tệp .pdf thành thư mục hình ảnh?


16

Tôi có một số tệp .pdf mà tôi muốn chuyển đổi sang định dạng đọc ưa thích của mình là .cbr hoặc .cbz hoặc, nếu điều này không thể trực tiếp, tôi cần trích xuất tất cả các trang từ .pdf dưới dạng hình ảnh và sau đó nén chúng vào định dạng của tôi về sự lựa chọn. Tôi chỉ có thể lưu từng trang một với Trình xem tài liệu. Rõ ràng, tôi muốn làm điều đó nhanh hơn một chút. Tôi đã thử pdfsam, pdf shuffler và pdfmod đều không gặp may. Tôi đang sử dụng Ubuntu 11.10.

Câu trả lời:


14

Tốt thôi, tôi đã thực hiện thêm một số nghiên cứu và mặc dù phương pháp của tohuwawohu có hiệu quả, tôi thấy việc sử dụng một chương trình có tên pdftoppm để đạt được những gì tôi muốn thực hiện dễ dàng hơn . Vì tôi khá là một cư dân khi sử dụng các ứng dụng dòng lệnh, tôi sẽ cố gắng hết sức để giải thích làm thế nào tôi có thể làm việc này cho tôi.

  1. Điều hướng đến thư mục chứa .pdf bạn muốn chỉnh sửa và mở một thiết bị đầu cuối ở đó. Tôi đã làm điều này bằng cách sử dụng lệnh mẫu:

    cd ~/Documents/PDF
    
  2. Giả sử tệp tôi muốn chỉnh sửa được gọi là Sample.pdf Điều tôi muốn làm là sử dụng pdftoppm để tạo tệp hình ảnh của mỗi trang của .pdf. Một số định dạng có thể được chọn (xem liên kết trang man ở trên) nhưng tôi thích sử dụng .png. Lệnh cơ bản trông như thế này:

    pdftoppm -FORMAT FILENAME.pdf PREFIX
    

    hoặc trong ví dụ trên:

    pdftoppm -png Sample.pdf Sample
    

    Lệnh này tạo một tệp hình ảnh của mỗi trang trong cùng thư mục với tệp .pdf gốc với các tên như Sample-01.png, Sample-02.png, v.v. Tôi đã thử nó với các phần mở rộng .png và .jpeg thành công. .jpg rõ ràng là không được hỗ trợ.

  3. Sau đó, tôi chỉ sử dụng Trình quản lý lưu trữ bằng cách chọn tất cả các tệp hình ảnh mới tạo, nhấp chuột phải và chọn "Nén" từ menu ngữ cảnh. Sau đó tôi chọn định dạng lưu trữ mà tôi thích (trong trường hợp này là .cbz hoặc Comic Book Zip) và tạo tệp lưu trữ mới.

  4. Bây giờ tôi có một tệp .cbz mới sáng bóng có tên là Sample.cbz mà sau đó tôi có thể xem bằng trình đọc Comix của mình !

Hy vọng những gì tôi đã đăng ở trên đủ ý nghĩa để người khác có thể học hỏi từ nó. Nếu tôi cần thay đổi nó theo bất kỳ cách nào xin vui lòng cho tôi biết.


Rất đẹp! pdftoppmTrên thực tế, có vẻ như nó dễ sử dụng hơn so với ImageMagick convert.
tohuwawohu

vâng nó rất hữu ích và dễ dàng Tôi chỉ muốn biết. có thể thêm tiền tố alpha. Giống như tiền tố-a, tiền tố-b, tiền tố-c, theo cách này
Pankaj Badukale

pdftoppmcực kỳ chậm và sử dụng tất cả RAM trên máy tính của tôi. pdfimages -jlàm việc tốt hơn nhiều
Eric Duminil

4

Tôi không quen thuộc lắm với * .cbr / * .cbz, nhưng có vẻ như bạn sẽ phải kết hợp hai bước:

  1. Chuyển đổi PDF thành hình ảnh
  2. Nén chúng vào một kho lưu trữ ZIP / RAR.

Về bước 1, bạn có thể sử dụng lệnh của ImageMagickconvert . Bạn có thể cung cấp convertvới PDf bao gồm nhiều trang và convertsẽ trả về mỗi trang dưới dạng tệp đồ họa. Tôi đã kiểm tra nó với một văn bản được quét ở tốc độ 400 dpi và lệnh sau đây đã tạo ra các JPGE duy nhất:

$ convert -verbose -colorspace RGB -interlace none -density 400 -quality 100 yourPdfFile.pdf 00%d.jpeg

(tín dụng liên quan đến -qualitytùy chọn: mục diễn đàn này )

Kết quả là, bạn nhận được 000.jpeg, 001.jpegvà như vậy. Chỉ cần nén chúng vào.cbz tập tin, và bạn đã hoàn tất.

Bạn thậm chí có thể kết hợp cả hai bước bằng cách "nối" chúng:

$ convert -verbose -colorspace RGB -interlace none -density 400 -quality 100 yourPdfFile.pdf 00%d.jpg && zip -vm comic.cbz *.jpg

(đảm bảo rằng không có bất kỳ JPEG nào khác trong thư mục làm việc hiện tại của bạn, vì sử dụng mã ở trên, zip sẽ di chuyển tất cả các JPEG vào tệp cbz)


4

Tôi đã viết một tập lệnh bash đơn giản cho chính xác mục đích này, bạn sẽ cần cài đặt poppler, vì vậy:

sudo apt-get install poppler-utils #ubuntu
brew install poppler # mac

Đây là tập lệnh bash (lưu nó dưới dạng convert_to_cbz.sh):

filename="${1%.*}"
echo "Converting $filename to cbz"
mkdir "./$filename"
pdftoppm -jpeg "$1" "./$filename/000"
zip -r9 "${filename}.cbz" "./$filename" 
rm -rf "./$filename"

Để sử dụng tập lệnh bash:

chmod +x convert_to_cbz.sh
./convert_to_cbz.sh "Nintendo Official Magazine 066 (OldGameMags).pdf"

Hy vọng điều này sẽ hữu ích cho một ai đó!


Thật tuyệt vời, cảm ơn. Tôi đã phải thay đổi kịch bản một chút mặc dù. pdftoppmsử dụng tất cả RAM của tôi và làm hỏng máy tính của tôi. Thay thế dòng thứ 4 bằng pdfimages -j "$1" "./$filename/000" thủ thuật. Nó hoạt động tốt, nhanh, dường như không có bất kỳ sự giảm chất lượng nào và cbz nhỏ hơn một chút so với pdf gốc. pdfimagescũng được bao gồm trong poppler-utils.
Eric Duminil

3

Hãy thử sử dụng cỡ nòng để chuyển đổi trực tiếp .pdf sang .cbr hoặc .cbz.


Cảm ơn lời đề nghị, nhưng đối với tôi, sử dụng Calibre làm giải pháp sẽ không hiệu quả. Tôi đã cài đặt chương trình và tôi rất tiếc phải nói rằng nó dính ra như ngón tay cái đau trên máy tính để bàn của tôi! Ngoài ra, tôi phát hiện ra bằng cách sử dụng lệnh pdftoppm bên dưới là CÁCH nhanh hơn cài đặt và định cấu hình Calibre trước khi chuyển đổi.
Shawn

@Shawn Vâng, tôi sẽ nói rằng Calibre xấu và chậm, nhưng nó làm được việc. Tôi rất vui vì bạn đã tìm thấy một giải pháp tốt hơn, mặc dù vậy :)
bntser

1

Có vẻ như cách dễ nhất là sử dụng Acrobat Pro.

  1. Mở PDf trong Acrobat Pro.
  2. Khi tệp được mở, hãy chuyển đến FileExportImageJPEG , nó sẽ xuất từng trang dưới dạng JPG.
  3. Đặt tất cả các JPG vào một thư mục
  4. Zip thư mục.
  5. Thay đổi thủ công phần mở rộng ở cuối tệp được nén từ .zip sang .cbz

Nếu bạn thích tệp CBR , hãy chọn thư mục thay vì nén nó, sau đó thay đổi phần mở rộng từ .rar thành .cbr .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.