Pertanyaan Bagaimana cara mengedit pdf metadata dari baris perintah?


Saya membutuhkan alat baris perintah untuk mengedit metadata dari pdf-file.

Saya menggunakan tablet Aiptek MyNote Premium untuk menulis catatan dan menit saya di perangkat ini, mengimpornya nanti dan mengonversinya menjadi pdf secara otomatis dengan skrip sederhana menggunakan inkscape dan ghostscript.

Apakah ada alat baris perintah untuk menambahkan beberapa kategori ke metadata pdf, sehingga saya dapat menemukan pdf nanti (misalnya dengan gnome-do) berdasarkan kategori?

Pembaruan: Saya mencoba solusi dengan pdftk dan berhasil, tetapi tampaknya gnome-do tidak menangani pdf-metadata. Apakah ada cara untuk melakukan gnome-do untuk melakukan itu?


63
2018-02-21 11:40


asal




Jawaban:


Cobalah exiftool, ini tersedia dari paket libimage-exiftool-perl di repositori.

Sebagai contoh, Jika Anda memiliki file pdf yang disebut drawing.pdf dan Anda ingin memperbarui metadatanya, Gunakan utilitas, exiftool, dengan cara ini:

exiftool -Title="This is the Title" -Author="Happy Man" -Subject="PDF Metadata" drawing.pdf

Untuk beberapa alasan, Subjek yang dimasukkan berakhir di bidang kata kunci dari metadata dalam file pdf. tidak masalah dalam beberapa kasus, bahkan diinginkan, bagaimanapun, ini mungkin bermasalah, evince dan previewer metadata nautilus tidak menunjukkan ini tetapi penampil Adobe Acrobat dan PDF-XChange penampil tidak.

Program ini akan membuat cadangan file asli jika Anda tidak menggunakan; -overwrite_original switch, ini berarti duplikat akan ada di folder tempat pdf yang diperbarui. Dari contoh di atas; sebuah file bernama; drawing.pdf_original akan dibuat.

gunakan switch timpa dengan resiko Anda sendiri, saran saya adalah tidak menggunakannya dan script sesuatu untuk memindahkan file ini ke lokasi yang lebih baik untuk berjaga-jaga.


75
2018-05-04 05:08



Ini berfungsi dengan baik, terima kasih. Sungguh mengherankan berapa banyak alat yang datang dengan ubuntu / linux. Saya ingin tahu lebih banyak tentang semua hal ini :-). Sementara itu saya menggunakan pdfmod setelah mengimpor file saya. Ini adalah aplikasi kecil yang bagus. - bdr529
Perhatikan bahwa: "Semua pengeditan metadata dapat dibalik. Meskipun ini biasanya dianggap sebagai keuntungan, itu adalah a masalah keamanan potensial karena informasi lama tidak pernah benar-benar dihapus dari file. " - nutty about natty
@nuttyaboutnatty jika Anda ingin membersihkan semua entri metadata yang tersisa dan tidak terpakai, Anda dapat melolarisasi file PDF segera setelah memprosesnya dengan exiftool. Ini dijelaskan lebih detail di inti Github ini. - Glutanimate
@nuttyaboutnatty Yah, tentu saja itu bukan sumber yang berwenang tetapi itu hanya karena tidak ada yang meluangkan waktu untuk menulisnya. Namun, saya dapat memastikan bahwa metode yang dijelaskan oleh penulis berhasil. Cobalah sendiri: 1.) Ambil PDF yang memiliki beberapa tag dan "hapus" semua metadata dengan exiftool -overwrite_original -all:all="" file.pdf; 2.) Gunakan exiftool -PDF-update:all= file.pdf untuk mengkonfirmasi bahwa masih ada metadata lama; 3.) meliniahkan file dengan qpdf --linearize file.pdf; 4.) Periksa lagi, seperti yang Anda lakukan di 2.); semua metadata harus hilang; - Glutanimate
5.) mengkonfirmasi bahwa file telah dibersihkan dari semua metadata dengan melihat kamus PDF (pdfinfo -meta file.pdf) - Glutanimate


Anda dapat mengedit metadata dengan menggunakan pdftk. Periksa update_info parameter. Adapun file data, di bawah ini adalah contoh:

InfoKey: Title
InfoValue: Mt-Djing: multitouch DJ table
InfoKey: Subject
InfoValue: Dissertation for Master degree
InfoKey: Keywords
InfoValue: DJing, NUI, multitouch, user-centered design
InfoKey: Author
InfoValue: Pedro Lopes

(Sumber)


13
2018-02-21 11:44



Ok, ini berarti saya harus mengekspor metadata ke textfile, mengeditnya dan memasukkan kembali textfile. Apakah ada cara untuk langsung mengatur metadata tunggal dari baris perintah? - bdr529
Mungkin ada, tetapi saya tidak dapat menemukannya. - Olli
pdftk tampaknya karakter Unicode dalam metadata. - Mechanical snail
Saya punya masalah saat menggunakannya pdftk pada pdf baru (versi yang lebih baru dienkripsi melalui AESV2). Sepertinya sudah dihentikan. exiftool bekerja lebih baik. - s1lv3r
untuk menggunakan pdftk, yang perlu Anda lakukan adalah: 1) pdftk book.pdf dump_data output report.txt 2) edit report.txt 3) pdftk book.pdf update_info report.txt output bookcopy.pdf - craq


Menggunakan Ghostview

Buat file bernama "pdfmarks" dengan konten ini:

[ /Title (Document title)
  /Author (Author name)
  /Subject (Subject description)
  /Keywords (comma, separated, keywords)
  /ModDate (D:20061204092842)
  /CreationDate (D:20061204092842)
  /Creator (application name or creator note)
  /Producer (PDF producer name or note)
  /DOCINFO pdfmark

lalu gabungkan ini pdfmarks file dengan file input PDF, PS atau EPS:

gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=output.pdf no_marks.pdf pdfmarks

Sumber: http://milan.kupcevic.net/ghostscript-ps-pdf/


3
2018-01-19 18:54





Untuk menguraikan tentang pdftk metode, yang bagus karena ini menunjukkan Anda semua yang sedang diatur, pada saat yang sama memungkinkan Anda mengubah apa pun yang Anda suka, di sini adalah skrip (untuk .bashrc atau file alias lainnya) untuk melakukannya dengan satu perintah. Ini menciptakan versi baru dari file yang ingin Anda edit, membuka editor favorit Anda dengan metadatafile, dan kemudian mengimplementasikan perubahan Anda dan mengatur waktu pembuatan / modifikasi file pada file PDF yang dimodifikasi agar sama dengan aslinya. Untuk menggunakannya, setelah sumber daya Anda .bashrc file, cukup ketik

editPDFmetadata myfile.pdf

Inilah aliasnya:

editPDFmetadata() {
OUTPUT="${1}-new.pdf"
METADATA="tmp${1}-report.txt"
pdftk ${1} dump_data output $METADATA
$EDITOR $METADATA
pdftk ${1} update_info $METADATA  output $OUTPUT
touch -r ${1} ${OUTPUT}
}

Cukup letakkan definisi di atas ke dalam .bashrc file di folder rumah Anda, kemudian buka terminal baru dan itu akan siap digunakan.


0
2018-05-17 17:40