কমান্ড লাইন থেকে পিডিএফ মেটাডেটা কীভাবে সম্পাদনা করবেন?


82

পিডিএফ-ফাইলগুলির মেটাডেটা সম্পাদনা করার জন্য আমার একটি কমান্ড লাইন সরঞ্জাম প্রয়োজন।

আমি এই ডিভাইসে আমার নোট এবং মিনিট লেখার জন্য একটি আইপটেক মাইনোট প্রিমিয়াম ট্যাবলেট ব্যবহার করছি, এগুলি পরে আমদানি করুন এবং ইনস্কেপ এবং ঘোস্ট স্ক্রিপ্ট ব্যবহার করে একটি সাধারণ স্ক্রিপ্টের মাধ্যমে সেগুলিকে স্বয়ংক্রিয়ভাবে পিডিএফে রূপান্তর করুন।

পিডিএফের মেটাডেটাতে কিছু বিভাগ যুক্ত করার জন্য কি কোনও কমান্ড লাইন সরঞ্জাম আছে, তাই আমি পিডিএফ পরে (উদাহরণস্বরূপ জিনোম-ডু সহ) বিভাগগুলি অনুসারে খুঁজে পেতে পারি?

আপডেট: আমি পিডিএফটেক দিয়ে সমাধানটি চেষ্টা করেছিলাম এবং এটি কাজ করে তবে মনে হয় যে জিনোম-ডু পিডিএফ-মেটাডেটার যত্ন নেয় না। এটি করার জন্য জিনোম-ডু করার কোনও উপায় আছে কি?

উত্তর:


100

এক্সিফ্টোলকে একবার চেষ্টা করুন, এটি প্যাকেজ লাইবাইমেজ-এক্সিফ্টোল-পারল থেকে পাওয়া যায় os

উদাহরণস্বরূপ, যদি আপনার কাছে অঙ্কন.পিডিএফ নামে একটি পিডিএফ ফাইল থাকে এবং আপনি এর মেটাডেটা আপডেট করতে চান, ইউটিলিটি, এক্সিফটোল এইভাবে ব্যবহার করুন:

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

কোনও কারণে সাবজেক্ট এন্টার করা পিডিএফ ফাইলের মেটাডেটার কীওয়ার্ড ক্ষেত্রে শেষ হয়। কিছু ক্ষেত্রে সমস্যা নয়, এমনকি আকাঙ্ক্ষিত, তবে এটি সমস্যাযুক্ত হতে পারে, প্রমাণিত হতে হবে এবং নটিলাস মেটাডেটা পূর্বরূপদর্শনকারী এটি দেখায় না তবে অ্যাডোব অ্যাক্রোব্যাট ভিউয়ার এবং পিডিএফ-এক্সচঞ্জ দর্শক তা করে না।

আপনি যদি ব্যবহার না করেন তবে প্রোগ্রামটি মূল ফাইলটির একটি ব্যাকআপ তৈরি করবে; -overwrite_originalস্যুইচ করুন, এর মানে হল যেখানে আপডেট পিডিএফ রয়েছে সেই ফোল্ডারে একটি সদৃশ উপস্থিত থাকবে। উপরের উদাহরণ থেকে; নামের একটি ফাইল; অঙ্কন.পিডিএফ_রিজিনাল তৈরি করা হবে।

আপনার নিজের ঝুঁকিতে ওভাররাইট স্যুইচটি ব্যবহার করুন, আমার পরামর্শ হ'ল এই ফাইলটি ব্যবহার না করা এবং কিছু ক্ষেত্রে স্ক্রিপ্ট স্ক্রিপ্টের ক্ষেত্রে আরও ভাল অবস্থানে নিয়ে যাওয়া script


16
দ্রষ্টব্য: " সমস্ত মেটাডেটা সম্পাদনাগুলি প্রত্যাবর্তনযোগ্য While যদিও এটি সাধারণত একটি সুবিধা হিসাবে বিবেচিত হবে, এটি একটি সম্ভাব্য সুরক্ষা সমস্যা কারণ পুরানো তথ্য আসলে কখনও ফাইল থেকে মোছা হয় না ।"
বাদামি প্রায়

5
@ নান্টিয়াবাউনট্টি আপনি যদি সমস্ত অবশেষ এবং অব্যবহৃত মেটাডেটা এন্ট্রিগুলি মুছে ফেলতে চান তবে আপনি পিডিএফ ফাইলটি এক্সিফটোলের সাহায্যে প্রক্রিয়াকরণের পরে লিনিয়ারাইজ করতে পারেন। এই গিথুব গিস্টে এটি আরও বিশদে বর্ণনা করা হয়েছে ।
গ্লুটানীমেট

9
@ নান্টিয়াবাউনট্টি ওয়েল, অবশ্যই এটি কোনও প্রামাণিক উত্স নয় তবে এটি কেবল কারণ কোনও একটিই সময় লেখেনি। তবে আমি নিশ্চয়তা দিতে পারি যে লেখকের বর্ণিত পদ্ধতিটি কাজ করে। এটি নিজে চেষ্টা করে দেখুন: ১) এমন একটি পিডিএফ নিন যাতে কিছু ট্যাগ থাকে এবং সমস্ত মেটাডেটা "মুছুন" দিয়ে exiftool -overwrite_original -all:all="" file.pdf; ২) exiftool -PDF-update:all= file.pdfএখনও পুরানো মেটাডেটা উপস্থিত রয়েছে তা নিশ্চিত করতে ব্যবহার করুন ; ৩) এর সাথে ফাইলটিকে লিনিয়ারাইজ করুন qpdf --linearize file.pdf; ৪) আবার যাচাই করুন, যেমন আপনি ২ তে করেছেন); সমস্ত মেটাডেটা চলে যেতে হবে;
গ্লুটানিমেট

4
৫) পিডিএফ অভিধান দেখে ফাইলটি সমস্ত মেটাডেটা থেকে মুছে ফেলা হয়েছে কিনা তা নিশ্চিত করুন ( pdfinfo -meta file.pdf)
গ্লুটানিমেট

1
পুরোপুরি কাজ করে। আমি নিয়মিতভাবে একটি পিডিএফ থেকে অন্য পিডিএফে মেটাটাটা অনুলিপি করতে চাই, যে ক্ষেত্রে exiftool -overwrite_original -tagsFromFile <srcfile> <destfile>আমার যা প্রয়োজন (বিকল্পটি -overwrite_originalমূলটি ওভাররাইট করে <destfile>)।
এস্ট্রোফ্লয়েড

15

আপনি ব্যবহার করে মেটাডেটা সম্পাদনা করতে পারেন pdftkupdate_infoপ্যারামিটার পরীক্ষা করে দেখুন । ডেটা ফাইল হিসাবে, নীচে একটি উদাহরণ:

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

( উত্স )


1
ঠিক আছে, এর অর্থ হল আমাকে একটি টেক্সটফাইলে মেটাডেটা রফতানি করতে হবে, সেগুলি সম্পাদনা করতে হবে এবং পাঠ্য ফাইলটি পুনরায় আমদানি করতে হবে। কমান্ড-লাইন থেকে সরাসরি কোনও একক মেটাডেটা সেট করার কোনও উপায় আছে?
বিডিআর 529

সেখানে থাকতে পারে তবে আমি এটি খুঁজে পেলাম না।
অলি

pdftkমেটাডেটাতে ইউনিকোডের অক্ষরগুলি মনে হচ্ছে।
যান্ত্রিক শামুক

1
pdftkনতুন পিডিএফ ব্যবহার করতে আমার কিছুটা সমস্যা হয়েছিল (নতুন সংস্করণগুলি এইএসভি 2 এর মাধ্যমে এনক্রিপ্ট করা হয়েছে)। দেখে মনে হচ্ছে এটি বন্ধ রয়েছে। exiftoolভাল কাজ ছিল।
s1lv3r

2
পিডিএফটেক ব্যবহার করতে, আপনার যা করা দরকার তা হ'ল: 1) pdftk book.pdf dump_data output report.txt2) edit.txt 3 সম্পাদনা)pdftk book.pdf update_info report.txt output bookcopy.pdf
ক্র্যাক

6

ঘোস্টভিউ ব্যবহার করা

এই বিষয়বস্তু দিয়ে "পিডিফমার্ক" নামে একটি ফাইল তৈরি করুন:

[ /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

তারপরে এই pdfmarksফাইলটিকে একটি পিডিএফ, পিএস বা ইপিএস ইনপুট ফাইলের সাথে একত্রিত করুন:

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

সূত্র: http://milan.kupcevic.net/ghostscript-ps-pdf/


0

pdftkপদ্ধতিটি বিশদভাবে বর্ণনা করার জন্য , যা দুর্দান্ত কারণ এটি আপনাকে যা যা পছন্দ করে তা পরিবর্তন করার পাশাপাশি একই .bashrcসাথে আপনাকে একটি কমান্ড দিয়ে এটি করার জন্য একটি স্ক্রিপ্ট (আপনার বা অন্যান্য এলিয়াস ফাইলের জন্য) প্রদর্শন করে shows এটি আপনি যে ফাইলটি সম্পাদনা করতে চান তার একটি নতুন সংস্করণ তৈরি করে, আপনার পছন্দসই সম্পাদকটি মেটাডাটাফিলের সাথে খোলে এবং তারপরে আপনার পরিবর্তনগুলি কার্যকর করে এবং পরিবর্তিত পিডিএফ ফাইলটিতে ফাইল তৈরি / সংশোধন সময় সেট করে as এটি ব্যবহার করতে, আপনার .bashrcফাইলটিকে রিসোর্স করার পরে , কেবল টাইপ করুন

editPDFmetadata myfile.pdf

এই নামটি এখানে:

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}
}

.bashrcআপনার হোম ফোল্ডারে ফাইলের উপরে কেবল সংজ্ঞাটি রাখুন , তারপরে একটি নতুন টার্মিনাল খুলুন এবং এটি ব্যবহারের জন্য প্রস্তুত থাকবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.