আমি কীভাবে স্বয়ংক্রিয়ভাবে পিডিএফ ফাইলগুলির মধ্যে পৃষ্ঠাগুলি নকল করব?


10

আমার প্রতি 1 থেকে 4 পৃষ্ঠার পিডিএফ ফাইল রয়েছে PDF আমার একটি সমাধান দরকার যা এই ফাইলগুলির প্রতিটির জন্য স্বয়ংক্রিয়ভাবে একটি নতুন ফাইল তৈরি করে। নতুন ফাইলগুলিতে দু'বার মূল ফাইলের বিষয়বস্তু থাকা উচিত (অর্থাত্ পৃষ্ঠা 1 থেকে শেষ অবধি একই পৃষ্ঠায় আবার একই ক্রমে অনুসরণ করা হবে)।

আমি কীভাবে এটি সম্পাদন করব?


3
দয়া করে পরিষ্কার করুন, আমরা আপনার মন পড়তে পারি না। কি বিল? আপনি একটি নতুন পিডিএফ ফাইল তৈরি করতে চান যাতে প্রতিটি পৃষ্ঠা দুবার অন্তর্ভুক্ত থাকে? কোন ক্রমে? আপনি পৃষ্ঠা 1a পৃষ্ঠা 1b এর পরে চান বা আপনি সমস্ত 4 পৃষ্ঠা এবং তারপরে আবার চারটি পৃষ্ঠা চান? আপনি কোন অপারেটিং সিস্টেম ব্যবহার করছেন? আপনি পিডিএফ তৈরি করতে কোন সরঞ্জামটি ব্যবহার করেন?
টেরডন

উত্তর:


15

উইন্ডোজের পিডিএফটক ব্যবহার করে সমাধান (যা আপনি নিজের ট্যাগ অনুসারে ব্যবহার করছেন বলে মনে করছেন):

এর ফলে পিডিএফের ফলাফল 1-প্রান্তের পৃষ্ঠাগুলি এবং তারপরে 1-সমাপ্তির পরে হবে:

pdftk in.pdf cat 1-end 1-end output out.pdf

আপনি যদি প্রতিটি পৃষ্ঠা একসাথে নকল করতে চান (যেমন হিসাবে 1,1,2,2, ...), নিম্নলিখিত ব্যাচ ফাইলটি ব্যবহার করুন:

@echo off
set pages=
setlocal enabledelayedexpansion
for /f "tokens=2" %%a in ('pdftk in.pdf dump_data ^| find /i "NumberOfPages"') do for /l %%b in (1,1,%%a) do set pages=!pages! %%b %%b
pdftk in.pdf cat!pages! output out.pdf

অনেক ধন্যবাদ: "pdftk in.pdf cat 1-end 1-end output out.pdf" আমার যা প্রয়োজন তা ঠিক করে দেয়। একমাত্র জিনিসটি হ'ল এটি একটি লুপ যা ডিরেক্টরি থেকে সমস্ত পিডিএফ ফাইল নেয় এবং সমস্ত নতুন ফাইল তৈরি করে me আমাকে আবার সাহায্য করার জন্য অনেক ধন্যবাদ। আমি কৃতজ্ঞ থাকব এবং আমার স্ত্রীকে সময় সাশ্রয়ের সাথে ডিনারে আমন্ত্রণ জানাব;)))
মার্ক

@ মার্ক: লুপটি সহজেই অর্জন করা যায়। পিডিএফ এবং কমান্ড প্রম্পট প্রকারের সাহায্যে ডিরেক্টরিতে যান for %a in (*.pdf) do @pdftk "%~a" cat 1-end 1-end output "%~na (Duplicated)%~xa"। প্রতিটি ইনপিডিএফ (নাম যে কোনও কিছু হতে পারে) এর জন্য, এর ফলাফল (সদৃশ) .pdf এর সাথে সম্পর্কিত হবে । আপনার রাতের খাবার উপভোগ করুন এবং যদি এটি আপনাকে সহায়তা করে তবে উত্তরটি (বামদিকে সবুজ চেক চিহ্নটি ক্লিক করুন) গ্রহণ করতে ভুলবেন না!
করণ

আপনাকে ধন্যবাদ - আপনি আমার জীবন বাঁচিয়েছেন! আমি আপনার সাহায্যের জন্য খুব কৃতজ্ঞ!
মার্ক

2

আপনি যদি আমার মন্তব্যে প্রশ্নের উত্তর দেন তবে আপনার স্ত্রীর খাতিরে, আমি এখানে বেশ কয়েকটি পরামর্শ দিচ্ছি, আমি আপনাকে আরও ভাল সমাধান দিতে পারি।

ইমেজ ম্যাগিক হ'ল চিত্র ম্যানিপুলেশনের জন্য একটি ক্রস-প্ল্যাটফর্ম কমান্ড লাইন সরঞ্জাম tool একবার এটি ইনস্টল হয়ে গেলে আপনি convertযা চান তা করতে তার সরঞ্জামটি ব্যবহার করতে সক্ষম হওয়া উচিত । বিশদগুলি আপনার অপারেটিং সিস্টেমের উপর নির্ভর করে। আমি ধরে নিচ্ছি যে আপনি পুরো ফাইলটির দুটি কপি চান, প্রতিটি পৃষ্ঠার দ্বিগুণ হয় না।

  1. লিনাক্স / ওএসএক্স / ইউনিক্স ইত্যাদি

    for n in *pdf; do convert -density 150 "$n" "$n" "$n"; done
    

    এটি বিদ্যমান ফাইলগুলি ওভাররাইট করবে , আপনি প্রথমে ব্যাকআপ নিতে চাইতে পারেন।

  2. উইন্ডোজ। এটি কিছুটা ভুল হতে পারে, আমি উইন্ডোজ ব্যবহার করি না তাই এটি পরীক্ষা করতে পারি না তবে সাধারণ ধারণাটি এমন কিছু হওয়া উচিত

    for %f in (*.pdf) do (convert.exe %f %f %f)
    

আপনার forলুপটি অনুপস্থিত doneএবং $nসম্ভবত উদ্ধৃত করা উচিত। সম্ভবত আমি কীভাবে convertকাজ করে তা মিস করছি তবে convertআপনি তিনবার একই ফাইলটি পাস করার পরে কী করবে? আমি এখনই এটি পরীক্ষা করতে পারি না।
slhck

ধন্যবাদ @ এসএলএইচইচকে, আপনি যথারীতি উভয় গণিতেই ঠিক আছেন। সাধারণ রূপান্তর বিন্যাস হয় convert infile1 infile2 ... infileN outfile। সুতরাং, আপনি যদি একই ফাইলটিকে তিনবার পাস করেন তবে এটি দ্বিগুণ ইনপুট হিসাবে গ্রহণ করবে এবং তারপরে আউটপুট হিসাবে একই ফাইলটিতে লিখবে। আমি যে করেনি পরীক্ষা :)।
টেরডন

ওহ, দুর্দান্ত, তারপরে আমিও কিছু শিখলাম :)
slhck

আমার ভাল লাগছে। অনেক ধন্যবাদ. উপরের মন্তব্য: আমি সেটিকে প্রথম চেষ্টা করেছিলাম এবং এটি পুরোপুরি কাজ করেছিল, কেবলমাত্র ডান লুপটি আমি এখনও সেরে রাখছি .... আপনি কি আমাকে আবার সাহায্য করতে পারবেন? অগ্রিম ধন্যবাদ!
মার্ক

@ মার্ক দুঃখিত, আপনার অর্থ কী তা আমি নিশ্চিত নই। কোন মন্তব্য? কোন লুপ? জানালা নাকি বাশ এক?
টেরডন

2

আপনি যদি লিনাক্সে প্রতিটি পৃষ্ঠা এক সাথে নকল করতে চান (যেমন 1,1,2,2, ...), এই স্ক্রিপ্টটি এটি করবে:

#!/bin/bash
INPUTFILE=$*
PAGENUM=`pdftk ${INPUTFILE} dump_data | grep NumberOfPages | cut -d : -f 2  | cut -d " " -f 2`
PAGES=`seq 1 ${PAGENUM}`
DUPAGES=`for i in ${PAGES} ; do echo $i $i | tr "\n" " " ; done`
OUTPUT=`basename ${INPUTFILE} .pdf`.dup.pdf
pdftk ${INPUTFILE} cat ${DUPAGES} output ${OUTPUT}

0

যদি আপনার পিডিএফটেক ইনস্টল না করা থাকে তবে পপ্পলার-ইউসস থাকে তবে এই কমান্ডটি ব্যবহার করুন:

for f in *
do
    pdfjoin $f $f
done

এটি ফেডোরা 21-র ক্ষেত্রে বিশেষভাবে প্রাসঙ্গিক, যেখানে আর pdftk সংগ্রহস্থলটিতে আর উপলব্ধ নেই।


0

সাধারণ ব্যবহার pdfunite। এটি সম্ভবত আরও স্ক্রিপ্টিং জ্ঞান দিয়ে আরও সরল করা যেতে পারে।

সচেতন থাকুন যে শেষ যুক্তিটি ফলাফল ফাইল । যদি আপনি এটি ভুলে যান তবে এই ফাইলটি ওভাররাইট করা হবে।

pdfunite 1.pdf 2.pdf 3.pdf 4.pdf result.pdf
pdfunite result.pdf result.pdf result.pdf 3-times-result.pdf

0

পিডিএফটক দিয়ে লিনাক্সে 4 পৃষ্ঠার পিডিএফ (1,1,2,2,3,3,4,4) পৃষ্ঠাগুলি নকল করার জন্য এই প্রবেশিকাটি আমার জন্য কাজ করেছে:

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