আমি এমন কোনও সরঞ্জাম জানি না যা আপনার জন্য রূপান্তর করবে। আপনার অবশ্যই এটি করতে সক্ষম হওয়া উচিত, তবে এটি কিছুটা সময় নিতে পারে। আমি বেসিক প্রক্রিয়াটির রূপরেখা করব। আপনার ওপেন সোর্স কমান্ড লাইন ইউটিলিটিগুলি pdftk
এবং djvused
(ডিজেভিউলিবার অংশ) প্রয়োজন হবে। এগুলি আপনার প্যাকেজ পরিচালক (জিএনইউ / লিনাক্স) বা তাদের ওয়েবসাইটগুলি (উইন্ডোজ, ওএস এক্স) থেকে উপলব্ধ available
পদক্ষেপ 1: ফাইল পাঠ্য রূপান্তর
প্রথমে ডিজেভিইউ ফাইলটিকে পিডিএফে রূপান্তর করতে কোনও বুক ব্যবহার করুন (বুকমার্ক ছাড়াই)।
ধরুন ফাইলগুলি ডাকা হয়েছে filename.djvu
এবং filename.pdf
।
পদক্ষেপ 2: ডিজেভিউর রূপরেখা বের করুন
এরপরে, ডিজেভিইউর আউটলাইন ডেটা একটি ফাইলে আউটপুট করুন, এর মতো:
djvused "filename.djvu" -e 'print-outline' > bmarks.out
এটি সিরিয়ালযুক্ত গাছের ফর্ম্যাটে DJVU নথি বুকমার্কের তালিকাভুক্ত একটি ফাইল। আসলে এটি কেবল একটি এসএক্সপিআর , এবং সহজেই পার্স করা যায়। ফর্ম্যাটটি নিম্নরূপ:
file ::= (bookmarks
<bookmark>*)
bookmark ::= (name
page
<bookmark>*)
name ::= "<character>*"
page ::= "#<digit>+"
উদাহরণ স্বরূপ:
(bookmarks
("bmark1"
"#1")
("bmark2"
"#5"
("bmark2subbmark1"
"#6")
("bmark2subbmark2"
"#7"))
("bmark3"
"#9"
...))
পদক্ষেপ 3: DJVU রূপরেখাকে পিডিএফ মেটাডেটা ফর্ম্যাটে রূপান্তর করুন
এখন, আমাদের এই বুকমার্কগুলি পিডিএফ মেটাডেটার প্রয়োজনীয় ফর্ম্যাটে রূপান্তর করতে হবে। এই ফাইলটির ফর্ম্যাট রয়েছে:
file ::= <entry>*
entry ::= BookmarkBegin
BookmarkTitle: <title>
BookmarkLevel: <number>
BookmarkPageNumber: <number>
title ::= <character>*
সুতরাং আমাদের উদাহরণ হয়ে উঠবে:
BookmarkBegin
BookmarkTitle: bmark1
BookmarkLevel: 1
BookmarkPageNumber: 1
BookmarkBegin
BookmarkTitle: bmark2
BookmarkLevel: 1
BookmarkPageNumber: 5
BookmarkBegin
BookmarkTitle: bmark2subbmark1
BookmarkLevel: 2
BookmarkPageNumber: 6
BookmarkBegin
BookmarkTitle: bmark2subbmark2
BookmarkLevel: 2
BookmarkPageNumber: 7
BookmarkBegin
BookmarkTitle: bmark3
BookmarkLevel: 1
BookmarkPageNumber: 9
মূলত, আপনার কেবলমাত্র এসএক্সপিআর ট্রিটি চলার জন্য একটি স্ক্রিপ্ট লিখতে হবে, স্তরটি পর্যবেক্ষণ করে, এবং প্রতিটি বিন্যাসের নাম, পৃষ্ঠার নম্বর এবং স্তরটি সঠিক ফরমেটে আউটপুট করতে হবে।
পদক্ষেপ 4: রূপান্তরিত বুকমার্কগুলিতে পিডিএফ মেটাডেটা এবং স্প্লাইস বের করুন
একবার রূপান্তরিত তালিকা পেয়ে গেলে, আপনার রূপান্তরিত পিডিএফ ফাইল থেকে পিডিএফ মেটাডেটা আউটপুট করুন:
pdftk "filename.pdf" dump_data > pdfmetadata.out
এখন, ফাইলটি খুলুন এবং শুরু হওয়া লাইনটি সন্ধান করুন:
NumberOfPages:
এই লাইনের পরে রূপান্তরিত বুকমার্কগুলি সন্নিবেশ করান। নতুন ফাইল হিসাবে সংরক্ষণ করুনpdfmetadata.in
পদক্ষেপ 5: বুকমার্কগুলি সহ পিডিএফ তৈরি করুন
এখন আমরা এই মেটাডেটা যুক্ত করে একটি নতুন পিডিএফ ফাইল তৈরি করতে পারি:
pdftk "filename.pdf" update_info "pdfmetadata.in" output out.pdf
ফাইলটি out.pdf
আপনার পিডিএফের একটি অনুলিপি হতে হবে ডিজেভিইউ ফাইল থেকে আমদানিকৃত বুকমার্কগুলির সাথে।
j.split('#')[1]
করেছি(int(re.findall(r'\d+', j.split('#')[1])[0])+1)
এবং এটি দুর্দান্ত কাজ করেছে। ডেবিয়ান জেসির প্রয়োজন:sudo apt-get install pdftk djvulibre-bin python-pip ruby ruby-dev libmagickwand-dev; sudo pip install sexpdata; sudo gem install iconv pdfbeads