2012-01-05 18 views
7

मुझे बड़ी संख्या में संरक्षित पीडीएफ फाइलों को संसाधित करने और जावा प्रोग्राम का उपयोग करके उन्हें संपादित करने की आवश्यकता है, लेकिन मेरे पास इन फ़ाइलों के लिए पासवर्ड नहीं हैं। क्या इस फाइल को बैच के साथ अनलॉक करने का कोई तरीका है?संरक्षित पीडीएफ फाइलों को अनलॉक करें

मुझे उपकरण या जावा ओपन सोर्स एपीआई जैसे विंडोज कमांड चाहिए। सबसे अच्छा समाधान क्या है?

+3

सबसे अच्छा समाधान फ़ाइल सामग्री के मालिक से समर्थन का अनुरोध करना है - शायद यह वह व्यक्ति होगा जिसने पासवर्ड सुरक्षित किया है। – mah

+0

जब तक पीडीएफ के पास केवल स्वामी पासवर्ड होता है और उपयोगकर्ता पासवर्ड नहीं होता है (तब भी आप उन्हें देख सकते हैं) तो फाइलों में एन्क्रिप्टेड कुछ भी नहीं है। सीमाएं केवल दर्शक अनुप्रयोगों द्वारा लगाई जाती हैं, और पीडीएफ वास्तव में बिल्कुल सुरक्षित नहीं है। यदि आपके पास अपना स्वयं का संपादन ऐप है तो आप केवल सुरक्षा को अनदेखा कर सकते हैं। – Alasdair

उत्तर

16

क्या ये पीडीएफ फाइलें खोले जाने के लिए पासवर्ड मांग रही हैं, या सुरक्षा कॉपी, प्रिंटिंग, संशोधित, टेक्स्ट निष्कर्षण आदि के बारे में प्रतिबंधों में शामिल है?

अगर यह आपके मामला है, आप के साथ

qpdf कोशिश कर सकते हैं

उपयोग:

qpdf --decrypt file.pdf unlocked.pdf 

और एक बैच में इस्तेमाल किया जा सकता ऑपरेशन सामूहिक रूप से, इस तरह से

for f in *.pdf ; do qpdf --decrypt $f ${f%%.pdf}unlocked.pdf; done 
+0

मेरी पीडीएफ फाइलें पासवर्ड के लिए नहीं पूछ रही हैं। मेरी प्रतिबंध प्रतिलिपि, प्रिंट, संशोधित करने के बारे में हैं, मुझे एक जावा लाइब्रेरी चाहिए जो qpdf के समान काम करे। – brianbro

+0

धन्यवाद। मैंने आपकी सोल्यूशन का इस्तेमाल किया। बिल्कुल सही – brianbro

+1

हां, यह PDFUnlock के लिए सबसे अच्छा मुफ्त और मुक्त स्रोत विकल्प है! – hellboy

1

डिक्रिप्शन के लिए, आप PDFBox उपयोग कर सकते हैं मेरा उत्तर यहाँ देख में: https://stackoverflow.com/a/9976481/535203

मैं एक पीडीएफ अपने पासवर्ड दिया डिक्रिप्ट करने के लिए एक नमूना कोड दे।

पीडीएफबॉक्स के साथ ऐसा करने के लिए बाइनरी भी है, the usage here देखें।

0

आप iText लाइब्रेरी का उपयोग करके इसे भी कर सकते हैं।

 PdfReader.unethicalreading = true; 
     PdfReader reader = new PdfReader(inputFile); 
     PdfEncryptor.encrypt(reader, new FileOutputStream(outputFile), null, 
       null, PdfWriter.ALLOW_ASSEMBLY | PdfWriter.ALLOW_COPY 
        | PdfWriter.ALLOW_DEGRADED_PRINTING | PdfWriter.ALLOW_FILL_IN 
        | PdfWriter.ALLOW_MODIFY_ANNOTATIONS | PdfWriter.ALLOW_MODIFY_CONTENTS 
        | PdfWriter.ALLOW_PRINTING | PdfWriter.ALLOW_SCREENREADERS, false); 

पी.एस.:

यहाँ एक नमूना कोड है : अपने जोखिम पर unethicalreading ध्वज का उपयोग करें

संबंधित मुद्दे