Pdf.js: पीडीएफ में डिजिटल हस्ताक्षर। जेएस

को निर्मित 13 जन॰ 2012  ·  174टिप्पणियाँ  ·  स्रोत: mozilla/pdf.js

नमस्ते! हमें इस बात में दिलचस्पी है कि आप कब या यदि पीडीएफ दर्शक (PDF.js) में सिग्नेचर डेटा व्यू (एक्सएड्स, पाड्स एंड कैड्स) को लागू करने जा रहे हैं

सधन्यवाद

एलेजांद्रो पिंडो,
एसओए एक्स

2-feature 4-annotations

सबसे उपयोगी टिप्पणी

उपरोक्त सभी लोगों के लिए, कृपया यहां टिप्पणी जोड़ने के बजाय GitHub के नए +1 प्रतिक्रिया बटन का उपयोग करें।

सभी 174 टिप्पणियाँ

वर्तमान में इस सुविधा को लागू करने के लिए कोई आसन्न योजना नहीं है। हमने नहीं देखा कि यह बहुत ऊपर आया है इसलिए यह प्राथमिकता नहीं है। हम हमेशा अधिक योगदानकर्ताओं की तलाश में रहते हैं, इसलिए हम इस सुविधा को जोड़ने के लिए किसी भी पैच का स्वागत करेंगे। यदि आप इसे जोड़ने में रुचि रखते हैं, तो हमारे आईआरसी चैनल (#pdfjs irc.mozilla.org) द्वारा यदि आपको कोई सवाल है, तो इसे रोकने के लिए स्वतंत्र महसूस करें।

ब्रेंडन

नमस्ते

इस सुविधा के कार्यान्वयन पर वर्तमान स्थिति क्या है?

धन्यवाद

@ fermo111 अभी तक लागू नहीं किया गया है, लेकिन मुझे किसी ऐसे व्यक्ति को कोच करने में खुशी होगी जो इस कार्य को करने के लिए तैयार है।

@yurydelendik मैं पीडीएफ फाइलों को पीडीएफ में डिजिटल हस्ताक्षर प्रस्तुत करने की सुविधा को लागू करने में दिलचस्पी रखता हूं। मै आपसे कैसे सम्पर्क कर सकता हूं?

@wolvz कृपया मुझे IRC irc.mozilla.org चैनल पर देखें #pdfjs (यह सबसे सरल है) या सामान समन्वय के लिए हमारी किसी भी सार्वजनिक बैठक में शामिल हों।

मैं Sig.idgetAnnotation (जैसे TextAnnotation, LinkAnnotation) को लागू करने की कोशिश कर रहा हूं, annotation.js में, pdf.js. में डिजिटल हस्ताक्षर का समर्थन करने के लिए
हस्ताक्षर पीडीएफ दर्शक में दिखाई दे रहा है, और मैं पहले से ही डीईआर-एन्कोडेड पीकेसीएस ऑब्जेक्ट में लगे प्रमाण पत्रों को निकाल और सत्यापित कर सकता हूं ...
अब मैं अगले चरण में जा रहा हूं, जो कि फाइल के मैसेज डाइजेस्ट को सत्यापित करना है।
इसके लिए मुझे फ़ाइल सामग्री तक पहुँच की आवश्यकता है ... मुझे नहीं पता कि क्या यह संभव है या नहीं, ताकि एनोटेशन.जेएस से उस तक पहुंच न हो, लेकिन मैं इसका पता नहीं लगा सकता। सबसे अच्छा मैं कर सकता था कोर में सामग्री प्राप्त करने के लिए। Js का उपयोग कर:

var contentStreamPromise = this.pdfManager.ensure (यह, 'getContentStream', []);
var dataPromises = Promise.all ([contentStreamPromise]);
dataPromises.then (फ़ंक्शन (डेटा) {
var contentStream = डेटा [0];
var सामग्री = contentStream.str.bytes;
वापसी सामग्री;
});

क्या कोई मुझे बता सकता है कि एनोटेशन.जेएस में फ़ाइल सामग्री प्राप्त करने का सबसे अच्छा तरीका क्या है?
अग्रिम में धन्यवाद...

wolvz,
इस संबंध में कोई प्रगति?

@yurydelendik @wolvz
मुझे डिजिटल सिग्नेचर डिस्प्ले फीचर में बेहद दिलचस्पी है। मैंने wolvz के रिपॉजिटरी पर क्लोन किया और कोड बनाया लेकिन जब मैंने इसका उपयोग करने का प्रयास किया, तो मुझे इस त्रुटि के साथ एक वादा अस्वीकृति मिल रही है: "आवश्यकता परिभाषित नहीं है"। क्या कोई समझा सकता है कि उस त्रुटि का कारण क्या होगा और मैं इसे कैसे ठीक कर सकता हूं? इसके अलावा, मैं इस सुविधा पर काम जारी रखने के लिए बहुत इच्छुक हूं। मैंने iText लाइब्रेरी के माध्यम से जावा में पीडीएफ़ के साथ काम किया है, लेकिन उनके साथ जावास्क्रिप्ट में काम करना कुछ ऐसा है जो मैंने पहले कभी नहीं आजमाया है। क्या कोई मुझे कुछ प्रलेखन / ट्यूटोरियल के लिए निर्देशित कर सकता है जो मुझे सही दिशा में इंगित कर सकता है ताकि मैं यह पता लगा सकूं कि मुझे इस क्षेत्र को और नीचे ले जाने की कोशिश करने के लिए कहां शुरू करना है?

मैं उलझन में हूं। पीडीएफजेएस में डिजिटल सिग्नेचर पीडीएफ दिखाने के लिए मुझे अपने pdf.js लाइब्रेरी में क्या करना है

untitled

यह हस्ताक्षर और प्रमाणपत्र दोनों पीडीएफ में दिखा रहे हैं .. लेकिन जब मैं इसे पीडीएफ में खोलता हूं। तो क्या यह वहां दिखाई नहीं देगा।

@ mrpandya007 , डिजिटल हस्ताक्षर प्रदर्शित नहीं करता है क्योंकि डेवलपर्स ने इसे छिपाने के लिए तब तक चुना जब तक उनके पास हस्ताक्षर सत्यापन सुविधा काम नहीं करती।
अगर मुझे याद है, अगर आप उन्हें दिखाना चाहते हैं, तो आपको यहाँ पर 389 से 392 तक लाइनें बतानी होंगी: https://github.com/mozilla/pdf.js/blob/master/src/core/core/annotation.j##L389
हालांकि यकीन नहीं है, और मैं अभी इसका परीक्षण नहीं कर सकता।

@wolvz , प्रतिक्रिया के लिए

कृपया मुझे जवाब दें .... मुझे क्या करना है .. मैं आपको परीक्षण करने के लिए पीडीएफ दे सकता हूं

डिजिटल हस्ताक्षरों के लिए अभी तक कोई अच्छा समर्थन नहीं है, इसलिए इसे लागू करना होगा।

डिजिटल हस्ताक्षर की इस समस्या को ठीक करने में हमें कितने दिन लगेंगे क्योंकि हम आपके दायित्व पर निर्भर हैं।

इसमें एक लंबा समय लग सकता है क्योंकि इस सुविधा को किसी व्यक्ति द्वारा विकसित किया जाना है और वर्तमान में उच्च प्राथमिकता वाले मुद्दे हैं।

heading

मैं हेडिंग में "=" चिन्ह के ऐसे मुद्दे का सामना क्यों कर रहा हूं, केवल पीडीएफ में। फाइल डाउनलोड होने के बाद।
कृपया कोई समाधान। यह केवल telerik जनरेट की गई pdf में होता है।

@ mrpandya007 कृपया अन्य मुद्दों के अंदर असंबंधित मुद्दों को पोस्ट न करें। उस समस्या के लिए एक अलग समस्या खोलें।

मुझे भी इसी समस्या का सामना करना पड़ा। हालांकि मुझे जरूरी नहीं कि हस्ताक्षर सत्यापन की आवश्यकता हो, यह मेरे मामले में पर्याप्त होगा जो केवल हस्ताक्षर छवि दिखाने के लिए पर्याप्त है। हो सकता है कि जब तक हस्ताक्षर सत्यापन को लागू नहीं किया जाता है, तब तक छवि नहीं दिखाने के बजाय, छवि को दिखाने के लिए बेहतर होगा और इसे एक छोटे पाठ के साथ एनोटेट करें जो कुछ कहता है जैसे "हस्ताक्षर सत्यापन लागू नहीं किया गया है। हस्ताक्षर स्थिति अज्ञात"? तो कम से कम नेत्रहीन पीडीएफ दिखाएगा कि आप क्या उम्मीद करेंगे।

क्या इस मुद्दे को संबोधित किया जाएगा के लिए एक समयरेखा है? या हमें किसी अन्य उत्पाद पर विचार करना चाहिए?
pdfjsissue

जहाँ तक मुझे पता है, कोई भी इस पर काम नहीं कर रहा है, इसलिए यदि कोई इस पर काम करने को तैयार है, तो बेझिझक पीआर प्रस्तुत करें।

नमस्ते,
एक PDF.JS संस्करण जो केवल डिस्प्लेडिजिटल हस्ताक्षर फ़ील्ड में सक्षम है, कई उपयोगकर्ताओं के लिए पर्याप्त होना चाहिए ... क्या कोई "कांटा" है जो ऐसा करने में सक्षम है?
सादर

@DORNINEM आपको केवल कोड के टुकड़े पर टिप्पणी करने की आवश्यकता है जो हस्ताक्षर एनोटेशन को छुपाता है।
लेकिन वैसे भी, यहाँ आपके लिए कहा गया कांटा है: https://github.com/wolvz/pdf.js

@wolvz !! बहुत बहुत धन्यवाद।
मुझे आश्चर्य है कि यह सुविधा आधिकारिक संस्करण में क्यों नहीं है, क्योंकि यह बहुत ठीक है। मैंने अपनी कुछ हस्ताक्षरित पीडीएफ फाइलों (1 से 6 अलग-अलग हस्ताक्षर क्षेत्रों से) के साथ परीक्षण किया और परिणाम perfec है!
मुझे वास्तव में यकीन है कि वास्तविक आवश्यकता इन क्षेत्रों को प्रदर्शित करने की है, हस्ताक्षर को मान्य करने की नहीं। हस्ताक्षर सत्यापन सर्वर की ओर से सबसे अच्छा किया जाता है क्योंकि इसके लिए स्थानीय प्रमाणपत्र भंडार पर कुछ समय प्रमाणपत्र स्थापित नहीं करने की आवश्यकता होती है।

नमस्ते,

कोई व्यक्ति बता सकता है कि हमें कौन सी लाइन पर टिप्पणी करनी है या डिजिटल हस्ताक्षर प्रदर्शित करने के लिए pdf.js की अनुमति देनी है?

सभी जानकारी के लिए धन्यवाद :)

@maximlefebvre के अनुसार https://github.com/wolvz/pdf.js/commit/7df3f4fe6e21b888358fd7718cb15e3c266ba666 , जो PDF.js को हस्ताक्षर प्रदर्शित करने देने के लिए पर्याप्त होना चाहिए। ध्यान दें कि यह PDF.js टीम द्वारा एक स्थिर समाधान के रूप में सत्यापित नहीं किया गया है (इसलिए यह अभी तक आधिकारिक कोडबेस में नहीं है), लेकिन यह एक अस्थायी समाधान के रूप में काम कर सकता है।

हम हस्ताक्षर सत्यापन को लागू करने में रुचि रखते हैं। ऐसा लगता है कि @wolvz ने इस पर काम शुरू कर दिया, लेकिन इसे पूरा नहीं किया - क्या आपके पास कोई आंशिक कोड है जिसे हम शीर्ष पर काम कर सकते हैं?

@wolvz , क्या आप कृपया अपने रेपो को समझने के लिए एक छोटा सा नोट देकर हमारी मदद कर सकते हैं। मैं यह समझने में असमर्थ हूं कि आपके कोड की जांच कैसे शुरू करें। हम हस्ताक्षर को लागू करने की कोशिश कर रहे हैं और हम आपकी परियोजना को पूरा करने और समुदाय की मदद करने में सक्षम हो सकते हैं।

हमने https: // pkijs का उपयोग करके ब्राउज़र में पीडीएफ के हस्ताक्षर और हस्ताक्षर सत्यापन दोनों को लागू किया है, आप यहां एक प्रारंभिक हस्ताक्षर सत्यापन डेमो देख सकते हैं: https://pkijs.org/examples/PDFexample.html हमने अभी तक पीडीएफ के साथ एकीकृत नहीं किया है लेकिन भविष्य में ऐसा नहीं होगा। हमारा इरादा इस सबसे को OSS के रूप में जारी करना है और एकीकरण को सुचारू बनाने के लिए आवश्यक PDFs में किसी भी बदलाव को वापस देना है।

बहुत बढ़िया, धन्यवाद @rmhrisk! हालांकि, मुझे यकीन नहीं है कि सीए बंडल फ़ाइल कैसे बनाई जाए। क्या आपके पास ऐसा करने का विवरण है? मुझे लगता है कि जब यह pdf.js के साथ एकीकृत होता है तो यह अधिक "प्लग एंड प्ले" होगा जहां यह डिफ़ॉल्ट रूप से एडोब रूट सीए के साथ आता है और प्रमाण पत्र श्रृंखला को सत्यापित कर सकता है, है ना? और क्या आपके पास pdf.js एकीकरण के लिए एक अपेक्षित समयरेखा है? आपके काम की काफी तारीफ हो रही है!

यहाँ एक है: http://curl.haxx.se/ca/cacert.pem और एक नमूने के लिए भंडार में जाँच की।

यहाँ एक उपकरण बनाने के लिए है: https://github.com/PeculiarVentures/tl-create

मैं इस समय ईटीए साझा नहीं कर सकता, हम संसाधनों पर सीमित हैं और यह हमारे लिए महत्वपूर्ण है लेकिन हमें पहले कुछ और जटिल भागों को समाप्त करने की आवश्यकता है।

मैंने आपके द्वारा लिंक किए गए, साथ ही साथ कुछ प्रमाणपत्र जो मैंने Adobe Reader का उपयोग करके PDF से निकालने का प्रयास किया था, लेकिन मुझे हमेशा "TypeError: अपरिभाषित की संपत्ति 'सिग्नेचर_टाइम_स्टैंप' नहीं पढ़ी जा सकती है" (सफारी / क्रोम स्थिर / क्रोम में) कनारी)।

मेरे आने वाले सप्ताह में कुछ समय होने वाला है, इसलिए मुझे बताएं कि क्या मैं किसी भी तरह से pdf.js में विलय करने में मदद कर सकता हूं।

यह नमूना इस समय केवल मूल हस्ताक्षरों, टाइमस्टैम्पिंग या एलटीवी का समर्थन करता है। मुझे unmitigatedrisk डॉट कॉम पर rmh में पिंग करने के लिए स्वतंत्र महसूस करें

ओह समझा। संदर्भ के लिए, अंत में इसे क्रोम / फ़ायरफ़ॉक्स में काम करने के लिए मिला (लेकिन सफारी नहीं, जो जाहिरा तौर पर इस सीए बंडल और इस पीडीएफ फ़ाइल का उपयोग करके केवल पूर्वनिर्मित WebCrypto का समर्थन करता है)।

हाँ, वह भी, न केवल उपसर्ग मुद्दे पर, बल्कि वे केवल नेटफ्लिक्स ड्रम मामलों को संभालने के लिए पर्याप्त वेबक्रिप्टो का समर्थन करते हैं। उदाहरण के लिए, वे सार्वजनिक कुंजी को आपके द्वारा बनाई गई कीपर के लिए निर्यात नहीं करते हैं !? ब्राउज़र समर्थन का सत्यापन करने के लिए यह एक अच्छा संसाधन है - https://diafygi.github.io/webcrypto-examples/

@viveksjain क्या आप पुष्टि कर सकते हैं कि आपको Chrome / Firefox में काम करने का तरीका कैसा लगा

मैंने फ़ायरफ़ॉक्स में विकास प्लगइन का उपयोग करने की कोशिश की है, हालांकि यह अभी भी हस्ताक्षर दिखाने में विफल रहता है।
http://mozilla.github.io/pdf.js/extensions/firefox/pdf.js.xpi

@complience उसे https://pkijs.org/examples/PDFexample.html पीडीएफ फाइलों पर काम करने वाला नमूना कोड मिला

Hi @complience , मेरे पास https://github.com/viveksjain/pdf.js/tree/sig-verify-support पर काम करने का एक सबूत है git clone --recursive https://github.com/viveksjain/pdf.js.git का उपयोग करके इसे आज़मा सकते हैं। थोड़े अधिक काम के साथ इसे इस रेपो में एक पुल अनुरोध के लिए तैयार होना चाहिए, लेकिन मेरे पास अभी समय नहीं है।

@viveksjain अच्छा है! पुल अनुरोध के लिए तैयार होने से पहले अभी भी क्या आवश्यक है?

+1 यह कार्यक्षमता प्राप्त करने में प्रसन्नता।

हाँ, यह समुदाय के लिए एक बहुत अच्छा मूल्य होगा, कई उपयोग मामलों के लिए दरवाजा खोलना। धन्यवाद!!

इस कार्यक्षमता के लिए +1

इस कार्यक्षमता के लिए +1

उपरोक्त सभी लोगों के लिए, कृपया यहां टिप्पणी जोड़ने के बजाय GitHub के नए +1 प्रतिक्रिया बटन का उपयोग करें।

इस समारोह के लिए + 1

इस समारोह के लिए + 1

फिर, कृपया इस कार्यक्षमता को बनाए रखने के लिए शीर्ष टिप्पणी पर GitHub के प्रतिक्रिया बटन का उपयोग करें, जो हमें समस्या को प्राथमिकता देने में मदद करेगा। "+1" टिप्पणियों को जोड़ने से डेवलपर्स के लिए अनावश्यक सूचनाएं आती हैं।

"TypeError: @vitksjain की शाखा का उपयोग करके अपरिभाषित की संपत्ति 'सिग्नेचर_टाइम_स्टैंप' नहीं पढ़ सकता है

+1। इस सुविधा का इंतजार है!

यह कार्यक्षमता कब उपलब्ध होगी? विवेकसैन की प्रगति का क्या हुआ?

@complience हाय, मेरे पास https://github.com/viveksjain/pdf.js/tree/sig-verify-support पर काम करने का एक सबूत है https://github.com/viveksjain/pdf.js.it का उपयोग करके आजमा सकते हैं

@lexcorp दुर्भाग्य से यह मेरे पिछले संदेश के बाद मेरे लिए कम प्राथमिकता बन गया। मैं देखूंगा कि क्या मैं इसे प्राप्त कर सकता हूं, लेकिन कोई भी वादा नहीं करने जा रहा हूं जो मैं नहीं रख सकता ...

मैं इस संस्करण को संकलित करने की कोशिश कर रहा हूं: https://github.com/viveksjain/pdf.js/tree/sig-verify-support
जब मैं कमांड दर्ज करता हूं: नोड सामान्य बनाते हैं
मुझे संदेश मिलता है: ### एक्सटेंशन बिल्ड नंबर प्राप्त करना
और संकलन प्रक्रिया नहीं की जाती है

मैं इस त्रुटि को कैसे हल कर सकता हूं?
मैं कुछ गलत कर रहा हूं?
संकलन समाप्त क्यों नहीं?

@lexcorp यदि अभी भी कोई रुचि है, तो कम से कम मेरे संस्करण को संकलित करने के लिए पर्याप्त अपडेट किया गया है। : +1:

हाय विवेक, हाँ मैं अभी भी दिलचस्पी, धन्यवाद ...

2016-12-12 12:55 GMT-06: 00 Gustavo Zambonin सूचनाएं @github.com:

@lexcorp https://github.com/lexcorp अगर अभी भी कोई दिलचस्पी है, तो
संकलित करने के लिए कम से कम मेरे संस्करण को अपडेट किया गया है। 👍

-
आप इसे प्राप्त कर रहे हैं क्योंकि आपका उल्लेख किया गया था।
इस ईमेल का उत्तर सीधे दें, इसे GitHub पर देखें
https://github.com/mozilla/pdf.js/issues/1076#issuecomment-266518165 ,
या धागा म्यूट करें
https://github.com/notifications/unsubscribe-auth/AFfB-LbmIVIrJLnxwJlm8aDITDKh5tWLks5rHZi5gaJpZM4BlvMP

हे गुस्तावो, धन्यवाद ...

2016-12-12 12:55 GMT-06: 00 Gustavo Zambonin सूचनाएं @github.com:

@lexcorp https://github.com/lexcorp अगर अभी भी कोई दिलचस्पी है, तो
संकलित करने के लिए कम से कम मेरे संस्करण को अपडेट किया गया है। 👍

-
आप इसे प्राप्त कर रहे हैं क्योंकि आपका उल्लेख किया गया था।
इस ईमेल का उत्तर सीधे दें, इसे GitHub पर देखें
https://github.com/mozilla/pdf.js/issues/1076#issuecomment-266518165 ,
या धागा म्यूट करें
https://github.com/notifications/unsubscribe-auth/AFfB-LbmIVIrJLnxwJlm8aDITDKh5tWLks5rHZi5gaJpZM4BlvMP

वहाँ एक मुद्दा क्यों डिजिटल हस्ताक्षर के लिए समर्थन pdf.js में नहीं मिलता है?

कृपया # 7702 में चर्चा का पालन करें।

मुझे पीडीएफजी में हस्ताक्षर सत्यापन के लिए उनके उपयोग के मामलों के बारे में लोगों से सुनने में दिलचस्पी है। कृपया मुझे अपने उपयोग के मामले में peculiarventures.com पर ryan पर ईमेल करें।

मुझे PDFjs में साइन इन करने के लिए आपके उपयोग के मामलों को सुनने में भी दिलचस्पी होगी, अगर आप उस परिदृश्य की परवाह करते हैं तो मैं आपके उपयोग के मामले को भी सुनना चाहता हूं।

Pdf.js की सिग-वेरीफाइड-सपोर्ट ब्रांच IE का समर्थन नहीं करती है और फायरफॉक्स पूरी तरह से कारण बनता है, जिसे WebCrypto नहीं मिल सकता है, इससे निपटने के लिए कोई विचार?

हाय दोस्तों - क्या डिजिटल हस्ताक्षर सत्यापन पहले से ही काम कर रहा है?

यहाँ एक ही सवाल: क्या डिजिटल हस्ताक्षर नवीनतम स्थिर बिल्ड के साथ काम करने वाले हैं जो https://mozilla.github.io/pdf.js/getting_started/#download से डाउनलोड किए जा सकते हैं?

FWIW: मैंने वर्तमान में उपलब्ध बीटा रिलीज़ का परीक्षण किया है और कोई हस्ताक्षर नहीं देख सकता। केवल एक चीज जो मैंने नोटिस की है, वह ब्राउज़र कंसोल में निम्नलिखित पंक्ति है:

Warning: Unimplemented widget field type "Sig", falling back to base field type

नहीं, डिजिटल हस्ताक्षर अभी तक लागू नहीं किए गए हैं। जो कोई भी इस पर काम करने का इच्छुक है, उसे एक अनुरोध भेजने का स्वागत है। धन्यवाद।

मैं इस कार्यक्षमता पर काम करना चाहता हूं। कोई मुझे PDF.js के आंतरिक घटकों के बारे में कुछ दिशानिर्देश दे सकता है?

ऊपर बताए गए कुछ शुरुआती काम हैं जिनका आप उपयोग करने में सक्षम हो सकते हैं। कोड शैली और परीक्षण निर्देशों के लिए विकी को पढ़ना सुनिश्चित करें।

@wolvz : hi दर्शक में कौन सा हिस्सा है। क्या वह असहजता होगी? आपकी रिपॉजिटरी pdf.js का मूल स्रोत है

हालांकि अधिकांश उपयोगकर्ता स्थिर संस्करण फ़ाइलों का उपयोग करेंगे।

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

हमने PKIjs और PDFjs पर आधारित एक डिजिटल हस्ताक्षर समाधान लागू किया है जो डिजिटल हस्ताक्षर को सत्यापित करने और बनाने में सक्षम है। आप इसका एक उदाहरण यहां यूएस डिजिटल सिग्नेचर कानून को देख सकते हैं।

image

दर्शक वर्तमान में ईआईडीएएस ट्रस्ट सूची के साथ-साथ मोज़िला विश्वसनीय एस / माइम जारीकर्ताओं पर भी भरोसा करता है।

यदि आप किसी भी मुद्दे का सामना करते हैं तो मुझे [email protected] पर ईमेल करें, अगर कोई हो तो नमूना फाइलों के साथ।

@rmhrisk क्या आप नमूना कोड के साथ

@xrkolovos पर हस्ताक्षर और सत्यापन कार्य करने के लिए आवश्यक कार्य का बड़ा हिस्सा https://github.com/PeculiarVentures/PKI.js , https://github.com/PeculiarVentures/ASN1.js , https://github.com/PeculiarVentures/xnjs/ , https://github.com शामिल हैं / PeculiarVentures / tl-create , और https://github.com/PeculiarVentures/webcrypto-liner।

हमने अपनी खुद की पीडीएफ लाइब्रेरी भी बनाई (हालांकि रेंडरिंग के लिए हम पीडीएफज का इस्तेमाल करते हैं) ताकि हम कई तरह के सिग्नेचर पीडीएफ के लिए बना सकें। इस लाइब्रेरी को अंततः सार्वजनिक किया जाएगा, लेकिन यह इस बिंदु पर सार्वजनिक उपभोग के लिए तैयार नहीं है।

हमारे दर्शक के स्रोत को सार्वजनिक नहीं किया जाएगा, लेकिन उपरोक्त पुस्तकालयों के साथ कोई अपने दर्शकों में सत्यापन को पुन: प्रस्तुत कर सकता है। हमारे पास यह करने का एक बुनियादी उदाहरण है: https://pkijs.org/examples/PDFexample.html इसे आपके दर्शकों में एकीकृत करने की आवश्यकता होगी।

इसे pdf.js के साथ कब मर्ज किया जाएगा?

इस बिंदु पर @Aarbel मुझे नहीं पता कि जब हमारे पास

IMHO, फ़ायरफ़ॉक्स 59 (ESR) जारी होने से पहले इसे लागू नहीं करने का मतलब होगा कि उद्यम में फ़ायरफ़ॉक्स का अंत हो सकता है अगर क्रोम या एज डिजिटल हस्ताक्षर पढ़ सकते हैं।

@ FrenchHope न तो फ़ायरफ़ॉक्स के क्रोम डिजिटल हस्ताक्षर को सत्यापित कर सकता है।

इस कार्यक्षमता पर कोई अद्यतन?

@Snuffleupagus @yurydelendik @timvandermeij ? :)

जैसा कि मैंने https://github.com/mozilla/pdf.js/pull/7702#pullrequestreview -4866355 में बताया, पहला कदम एक अमूर्त एपीआई बनाना होगा जो किसी भी कस्टम PKI / क्रिप्टो को PDF.js. के साथ एकीकृत करने की अनुमति देता है।

@rmhrisk मैं क्रोम उपयोगकर्ताओं के बारे में परवाह नहीं है। मैं फ़ायरफ़ॉक्स entreprise उपयोगकर्ताओं के बारे में परवाह है। बहुत से लोग अब एज ब्राउज़र या इंटरनेट एक्सप्लोरर का उपयोग करेंगे यदि फ़ायरफ़ॉक्स अब एडोब एक्रोबेट रीडर प्लगइन के साथ डिजिटल हस्ताक्षर को सत्यापित नहीं कर सकता है।

बहुत सी कंपनियां अब विंडोज 10 में प्रवास करती हैं ...

न तो एज या आईई कर सकते हैं।

Adobe Acrobat Reader ActiveX के साथ @rmhrisk IE कर सकता है।

संपादित करें: एज डिजिटल हस्ताक्षर दिखा सकता है लेकिन आपको हस्ताक्षर की वैधता की जानकारी नहीं देता है जैसा कि Adobe Acrobat Reader करता है।

ActiveX को हटा दिया गया है और अंततः काम नहीं करेगा।

एज डिजिटल हस्ताक्षर को बर्फ नहीं करता है यह हस्ताक्षर की स्थिति की परवाह किए बिना एक एनोटेशन में छवि दिखाता है।

नमस्कार, इस सुविधा की वर्तमान स्थिति क्या है?

अभी इस पर काम नहीं किया जा रहा है, लेकिन हाल ही में किसी ने आईआरसी पर ऊपर दिए गए कोड में रुचि दिखाई। पहला कदम वास्तव में https://github.com/mozilla/pdf.js/issues/1076#issuecomment -374244765 होगा।

नमस्ते, क्या आपके पास उस एपीआई को जारी करने के लिए डीईसी 2018 या शायद 2019 जैसी कोई अपेक्षित तारीख है?
वैसे पीडीएफ दर्शक के लिए धन्यवाद, उत्कृष्ट काम करता है

मैं ऊपर बताए गए साधारण फिक्स को लागू करना चाहता था ... निम्नलिखित पंक्तियों को टिप्पणी करते हुए:

// Hide signatures because we cannot validate them.
          if (data.fieldType === 'Sig') {
              _this2.setFlags(AnnotationFlag.HIDDEN);
          }

हालाँकि, यह कंसोल में एक त्रुटि पैदा कर रहा है (उपयोग से। js: 418)। क्या किसी को पता है कि इस मुद्दे का क्या कारण है (इस तथ्य के अलावा कि अब हस्ताक्षर प्रदर्शित होता है)?

त्रुटि:

Uncaught (in promise) DOMException: Failed to execute 'postMessage' on 'DedicatedWorkerGlobalScope': function nonSerializableClosure() {
          return nonSerializable; // creating closure on some variable
        } could not be cloned.
    at eval (http://localhost:8888/src/shared/util.js:418:20)

@brianholle
मैंने कोशिश की और यदि आप टिप्पणी करते हैं

 if (data.fieldType === 'Sig') {
      warn('unimplemented annotation type: Widget signature');
     // this.setFlags(AnnotationFlag.HIDDEN);
    }

में निर्मित pdf.worker.js, तो यह काम करता है।

इसके लिए कम से कम विकल्प प्रदान करना अच्छा होगा। उदाहरण के लिए हमारे मामले में, हम पहले से ही जानते हैं कि हस्ताक्षर वैध है, क्योंकि हम हस्ताक्षर पहले सत्यापित करते हैं।

@strazovan धन्यवाद, और सहमत हुए। मैंने एक ध्वज बनाया है जिसे default_preferences.json में सेट किया जा सकता है। यदि आप रुचि रखते हैं तो मैं उन परिवर्तनों को पोस्ट कर सकता हूं!

@ ब्रायनहोल नमस्ते, मैं आपके उदाहरण का अनुसरण करूंगा। इस कोड के साथ, क्रोम सामान्य रूप से प्रदर्शित होता है, लेकिन IE ब्राउज़र में डिजिटल हस्ताक्षरित छवि पाठ को अस्पष्ट करती है।

@hanxiaodao आप कह रहे हैं कि ब्लॉकिंग कोड को

 if (data.fieldType === 'Sig') {
      warn('unimplemented annotation type: Widget signature');
      // this.setFlags(AnnotationFlag.HIDDEN);
 }

आप IE में प्रदर्शित करने के मुद्दे हैं?

@brianholle आपके उत्तर के लिए धन्यवाद। मैं आपके उदाहरण का पालन करता हूं there लेकिन IE 11 में एक समस्या थी। डिजिटल हस्ताक्षर का लाल अध्याय पाठ सामग्री को अस्पष्ट करता है।
यह क्रोम पर प्रभाव है।
chrome pic
यह IE11 पर प्रभाव है।
ie11_pic

क्या हम रख-रखाव से कोई अनुमान प्राप्त कर सकते हैं यदि कोई प्रयास हस्ताक्षर सत्यापन में डाले जाएंगे?

यह अभी हमारे लिए प्राथमिकता नहीं है, लेकिन अगर कोई भी इसमें योगदान देना चाहता है (ऊपर की टिप्पणियों को देखें कि इसे कैसे लागू किया जाना चाहिए), तो हम इसे पीडीएफ में एकीकृत करने पर विचार करने को तैयार हैं।

हम डिजिटल हस्ताक्षर दिखाने में भी रुचि रखते हैं जिन्हें सत्यापित नहीं किया जा सकता है। कृपया, एक उदाहरण संलग्न देखें।
Verpf-Erklärg-Bundesdatenschutz-Sig.pdf

जब मैं टिप्पणी करता हूं:
अगर (data.fieldType === 'Sig') {
// this.setFlags (एनोटेशन फ़्लैग.हिडन);
}

त्रुटि:

message_handler.js:87 Uncaught (in promise) DOMException: Failed to execute 'postMessage' on 'DedicatedWorkerGlobalScope': #<DedicatedWorkerGlobalScope> could not be cloned.
    at eval (http://localhost:8888/src/shared/message_handler.js:87:21)

और क्यों "div। annotationLayer" प्रस्तुत नहीं करते

हाहा, मुझे यह पता है ... यह # 10350 से संबंधित है। तो आपको इस लाइन पर टिप्पणी करने की आवश्यकता है:
// this.setFlags (एनोटेशन फ़्लैग.हिडन);
और उसके बाद इस लाइन को जोड़ें:
data.fieldValue = null;

उपयोग को सक्षम करने के लिए pdf या pdf_viewer को कैसे कॉन्फ़िगर करें। प्रदर्शित स्विच को नियंत्रित करने वाले जेएस? उपयोग में कुछ एनोटेशनफ्लैग विकल्प हैं। INVISIBLE 0x01 ID HIDDEN 0x02 जैसी फ़ाइल। मैं HIDDEN से PRINT में PDF.worker.js में AnnotionFlag को संशोधित करता हूं। क्या मैं इस तरह से उन्हें कॉन्फ़िगर कर सकता हूं?

एक बहुत अच्छी सुविधा होनी चाहिए। उम्मीद है कि यह जल्द ही एक सुविधा होगी!

किसी को भी किसी भी विश्वसनीय workaround पता है? निर्मित फ़ाइलों का संपादन केवल स्थानीय स्तर पर या परीक्षण के उद्देश्य से हो सकता है, लेकिन इससे अधिक नहीं।

क्या pdfjs एक मृत परियोजना है? वे इतने सालों से लागू क्यों नहीं हुए जो सबसे ज्यादा चाहते थे?

image

मैं यह हासिल करना चाहता हूं कि मैं पीडीएफ में कहीं एक छोटा नोटिफिकेशन दिखा सकता हूं। डिजिटल हस्ताक्षर मान्य नहीं हैं। मुझे वह क्रोम पर काम कर रहा है, लेकिन अन्य ब्राउज़रों पर नहीं। यह सर्वश्रेष्ठ मामले से बहुत दूर है, लेकिन हम वास्तव में उन हस्ताक्षरों को दिखाना चाहते हैं, भले ही वे 100% मान्य न हों। मैंने उस टुकड़े पर pdf.worker.js कोड को बदलने की कोशिश की है जहाँ यह .setFlags (एनोटेशन फ़्लैग.हिडन); खड़ा था। मैंने एक "document.getElementbyId" निर्माण जोड़ा है, जहाँ मैं 1 या अधिक हस्ताक्षर होने पर अपना कंटेनर दिखाता हूं। लेकिन सभी ब्राउज़र (क्रोम को छोड़कर) "दस्तावेज़" को नहीं पहचानते हैं। क्या दस्तावेज़ या किसी चीज़ पर एक संपत्ति जोड़ने और दर्शक में उपयोग करने का विकल्प है। GetElementbyId के साथ अधिक निर्माण हैं। कोई भी सहायता कमाल की होगी।

हमने हाल ही में अपने दर्शक को लपेटा है जो एक वेब घटक और iframe में हस्ताक्षर सत्यापन का समर्थन करता है; आप इसका उपयोग कैसे करें, इसके बारे में और जानकारी प्राप्त कर सकते हैं: https://verify.ink/

rmhrisk यह बहुत अच्छा है !!!

@brianholle आपके उत्तर के लिए धन्यवाद। मैं आपके उदाहरण का पालन करता हूं there लेकिन IE 11 में एक समस्या थी। डिजिटल हस्ताक्षर का लाल अध्याय पाठ सामग्री को अस्पष्ट करता है।
यह क्रोम पर प्रभाव है।
chrome pic
यह IE11 पर प्रभाव है।
ie11_pic
मैं IE में एक ही सवाल है, क्या आपने इसे हल किया है?

हमारे संगठन में 2000 से अधिक लोग शामिल हैं। वे सभी क्रोम का उपयोग कर रहे हैं, फ़ायरफ़ॉक्स का नहीं क्योंकि फ़ायरफ़ॉक्स पीडीएफ के हस्ताक्षरों को सही ढंग से प्रदर्शित नहीं कर सकता है।
मुझे लगता है कि यह मोज़िला के लिए प्राथमिकता होनी चाहिए।

@wolvz : आपकी तरफ़ से कोई प्रगति हुई है?

+1

+1

हमने हाल ही में अपने दर्शक को लपेटा है जो एक वेब घटक और iframe में हस्ताक्षर सत्यापन का समर्थन करता है; आप इसका उपयोग कैसे करें, इसके बारे में और जानकारी प्राप्त कर सकते हैं: https://verify.ink/

@rmhrisk
रयान, क्या आपने समुदाय के लिए इस विज़ुअलाइज़र का एक संस्करण खोलने पर विचार किया है?

हमने PKIjs और PDFjs पर आधारित एक डिजिटल हस्ताक्षर समाधान लागू किया है जो डिजिटल हस्ताक्षर को सत्यापित करने और बनाने में सक्षम है। आप इसका एक उदाहरण यहां यूएस डिजिटल सिग्नेचर कानून को देख सकते हैं।

image

दर्शक वर्तमान में ईआईडीएएस ट्रस्ट सूची के साथ-साथ मोज़िला विश्वसनीय एस / माइम जारीकर्ताओं पर भी भरोसा करता है।

यदि आप किसी भी मुद्दे का सामना करते हैं तो मुझे [email protected] पर ईमेल करें, अगर कोई हो तो नमूना फाइलों के साथ।

@rmhrisk
रयान, क्या आपने समुदाय के लिए इस विज़ुअलाइज़र का एक संस्करण खोलने पर विचार किया है?

@lexcorp को हमने https: /verify.ink बनाया ताकि आप आसानी से हमारे दर्शक को एम्बेड कर सकें एक वेब घटक था।

इसे जोड़ना आसान है:

<html>
  <body>
    <verify-viewer  url="https://verify.ink/assets/documents/electronic_records_and_signatures_in_commerce.pdf"  show-signature-if-present="true"  notify-if-not-signed="true"  sign="true"  download="true"></verify-viewer><script type="module" src="https://verify.ink/webcomponent/index.js"></script>
    </body>
</html>

हमने हाल ही में कस्टम रूट स्टोर्स के लिए भी समर्थन जोड़ा है:
https://verify.ink/guides#root -cert प्रमाणपत्र

डिजिटल हस्ताक्षर से संबंधित विभिन्न थ्रेड्स से, मुझे यह धारणा मिली कि लापता प्रगति का मुख्य कारण यह है कि यह हस्ताक्षर प्रदर्शित करने में सक्षम नहीं है, क्योंकि उन्हें प्रदर्शित करने के लिए एक पूर्व शर्त है।

क्या यह "उपयोग हस्ताक्षर" और "प्रदर्शन हस्ताक्षर" दो उपयोग के मामलों को अलग करने के लिए समझ में आएगा?

मुझे लगता है कि बहुत सारे उपयोग के मामले हैं, जहां एकरूप हस्ताक्षर (यदि विशिष्ट प्रोजेक्ट टीम द्वारा जोड़े गए चेतावनी के साथ आवश्यक हो) का प्रदर्शन वह सब है जो आवश्यक और पर्याप्त है। यदि कोड के मामूली संशोधनों के साथ यह पहले से ही संभव है, तो ऐसा आधिकारिक कार्यक्षमता क्यों नहीं है जिसे चालू या बंद किया जा सकता है?

यदि यह अमान्य है तो हस्ताक्षर प्रदर्शित करने में समस्या यह है कि आप उपयोगकर्ताओं को यह मान्य है कि यह मान्य है।

डिजिटल हस्ताक्षर, उनके सिंथेटिक गीले समकक्षों के विपरीत, एक हस्ताक्षर की प्रामाणिकता और इसके साथ जुड़े इरादे दोनों को निरूपित करने के लिए हैं।

हस्ताक्षर छवि को सत्यापित किए बिना इसे प्रदर्शित करके आप उपयोगकर्ता को यह सुझाव दे रहे हैं कि यह प्रामाणिक है जब यह केवल एक छवि की प्रति हो सकती है।

लेकिन सभी वैध डिजिटल हस्ताक्षरों का पीडीएफ में दृश्य प्रतिनिधित्व नहीं होगा, है ना? जहाँ तक मुझे पता है, पीडीएफ भी एक दृश्य प्रतिनिधित्व के बिना हस्ताक्षर करने की अनुमति देता है।

क्या पुस्तकालय के उपयोगकर्ता को यह तय नहीं करना चाहिए कि क्या उसका आवेदन / उपयोग मामला वैध / अमान्य हस्ताक्षरों को प्रदर्शित करने की अनुमति देता है या यदि चेतावनी की तरह अतिरिक्त उपाय आवश्यक हैं? एक उपयोग का मामला जो मेरे मन में है वह भी हस्ताक्षर क्षेत्रों पर विचार करते हुए पीडीएफ में क्षेत्रों को चिह्नित कर रहा है। यह अभी भी एक सूचनात्मक चरित्र का हो सकता है, हालांकि अंतिम सत्यापन के लिए अन्य उपकरणों की आवश्यकता होती है। मैं एक वैकल्पिक सुविधा के रूप में प्रदर्शन की पेशकश का नुकसान नहीं देखता।

लेकिन सभी वैध डिजिटल हस्ताक्षरों का पीडीएफ में दृश्य प्रतिनिधित्व नहीं होगा, है ना? जहाँ तक मुझे पता है, पीडीएफ भी एक दृश्य प्रतिनिधित्व के बिना हस्ताक्षर करने की अनुमति देता है।

दोनों कथन सही हैं 1) सभी पीडीएफ में एक दृश्य प्रतिनिधित्व नहीं है (अधिकांश हालांकि)। 2) पीडीएफ एक दस्तावेज़ विस्तृत हस्ताक्षर की अनुमति देता है। इस बग में, हालांकि, मैंने जो कुछ भी देखा है वह डिजिटल हस्ताक्षर से जुड़े दृश्य हस्ताक्षर को दिखाने में रुचि रखता है न कि दस्तावेज़ के व्यापक हस्ताक्षर।

दस्तावेज़ विस्तृत हस्ताक्षर समर्थन के लिए फाइल करने के लिए एक और बग हो सकता है जिसमें कोई दृश्य प्रतिनिधित्व नहीं है, लेकिन मुझे डिजिटल हस्ताक्षर पर मौजूद किसी भी पीडीएफजे संबंधित बग में इसके लिए एक भी अनुरोध याद नहीं है।

क्या पुस्तकालय के उपयोगकर्ता को यह तय नहीं करना चाहिए कि क्या उसका आवेदन / उपयोग मामला वैध / अमान्य हस्ताक्षरों को प्रदर्शित करने की अनुमति देता है या यदि चेतावनी की तरह अतिरिक्त उपाय आवश्यक हैं?
मेरा व्यक्तिगत रूप से मानना ​​है कि एक एप्लिकेशन डेवलपर को अपने आवेदन के साथ जो कुछ भी करना चाहते हैं उसे करने में सक्षम होना चाहिए।

हालाँकि, यह भी सवाल है कि PDF.js जैसे पुस्तकालय का भी क्या करना है। मेरी राय में, एक विकल्प को उजागर करना जो असुरक्षित है, आसानी से गलत समझा जाता है, और लाइब्रेरी के अंतिम छोर-उपयोगकर्ता के लिए खराब सुरक्षा परिणाम होगा, कुछ ऐसा नहीं है जो पुस्तकालय उत्पादकों को आसान बनाना चाहिए।

कल्पना करें कि यदि यह विशेषता पूरी होती तो COVID-19 द्वारा इस संगरोध के दौरान बहुत मदद मिलती, कल्पना करें कि कितने लेनदेन, अनुबंध आदि।

वे घर से बाहर किए जा सकते थे, हालांकि मैंने देखा है कि यह कार्यक्षमता वर्षों से स्थिर है, मुझे इसका कारण नहीं पता है लेकिन मुझे लगता है कि अन्य उपकरणों के साथ संयोजन में यह सहयोगी कार्य, घर कार्यालय, के लिए बहुत मदद कर सकता है। आदि।

मैं पूरी तरह सहमत हूँ। डिजिटल हस्ताक्षर आने वाले वर्षों में अधिक से अधिक महान मूल्य बन जाएंगे। मेरा उपयोग मामला एक उपकरण है जिसका उपयोग चिकित्सा उपकरण विकास में किया जाता है। डिजिटल हस्ताक्षर के बिना घर कार्यालय से हमारा दैनिक कार्य वास्तव में बहुत कठिन होगा। यही कारण है कि मैं जोखिम और ग्राहक मूल्य के बीच व्यापार बंद खोजने के लिए या उनके विशिष्ट उपयोग के मामले के लिए उपयुक्त अतिरिक्त उपाय करने के लिए पुस्तकालय का उपयोग करके इसे परियोजना पर छोड़ दूंगा।

मैं इस बात से भी पूरी तरह सहमत हूं कि डिजिटल हस्ताक्षर वास्तव में एक बड़ी गायब विशेषता है।

हालाँकि, यह भी सवाल है कि PDF.js जैसे पुस्तकालय का भी क्या करना है। मेरी राय में, एक विकल्प को उजागर करना जो असुरक्षित है, आसानी से गलत समझा जाता है, और लाइब्रेरी के अंतिम छोर-उपयोगकर्ता के लिए खराब सुरक्षा परिणाम होगा, कुछ ऐसा नहीं है जो पुस्तकालय उत्पादकों को आसान बनाना चाहिए।

पुस्तकालय डेवलपर्स द्वारा कार्यान्वित किया जाता है, जिसे सुरक्षा के बारे में पता होना चाहिए।
मेरी ओर से, यदि मेरे पास सुविधा थी, तो मैं निश्चित रूप से हस्ताक्षर प्रदर्शित करूंगा, लेकिन हस्ताक्षर सर्वर पक्ष की जांच और सत्यापन भी करूंगा ताकि हस्ताक्षर मान्य न होने पर मैं चेतावनी दिखा सकूं।

@rmhrisk
क्या आप समुदाय के लिए स्रोत खोलने की योजना बनाते हैं? क्योंकि मेरे पास एक भी मामला नहीं है जहाँ मैं 1 / डॉक्स को इंटरनेट पर उपलब्ध होने की अनुमति दे सकता हूँ 2 / तीसरे पक्ष को डॉक्स तक पहुँचने की अनुमति देता है 3 / उपयोगकर्ता ब्राउज़र में जावास्क्रिप्ट को इंजेक्ट करने के लिए किसी तीसरे पक्ष को अनुमति दें।
यह pdfjs के लिए एक बढ़िया अतिरिक्त होगा।

@rmhrisk
क्या आप समुदाय के लिए स्रोत खोलने की योजना बनाते हैं? क्योंकि मेरे पास एक भी मामला नहीं है जहाँ मैं 1 / डॉक्स को इंटरनेट पर उपलब्ध होने की अनुमति दे सकता हूँ 2 / तीसरे पक्ष को डॉक्स तक पहुँचने की अनुमति देता है 3 / उपयोगकर्ता ब्राउज़र में जावास्क्रिप्ट को इंजेक्ट करने के लिए किसी तीसरे पक्ष को अनुमति दें।
यह pdfjs के लिए एक बढ़िया अतिरिक्त होगा।

हम अपने दर्शकों को बनाने के लिए उपयोग किए जाने वाले प्रत्येक पुस्तकालयों को खोलते हैं, और उनमें से बहुत कुछ है और कई काफी जटिल हैं; उदाहरण के लिए PKIjs के टुकड़े को देखें जो दर्शक के लिए प्रमाणपत्र सत्यापन को संभालता है। हम समर्थन के साथ वाणिज्यिक लाइसेंस भी प्रदान करते हैं।

हम दर्शक को ओपन-सोर्स नहीं करेंगे, इस काम को बनाने में काफी समय और निवेश लगा है और उस समय का मूल्य है। हालांकि हमने इसे संभव बनाने के लिए बनाए गए ओपन-सोर्स पुस्तकालयों का उपयोग करके दूसरों का समर्थन करने के लिए खुश हैं।

पुन: 1; दर्शक को इंटरनेट पर डॉक्स की आवश्यकता नहीं है।

पुन: 2; दर्शक को किसी तृतीय-पक्ष को डॉक्स को एक्सेस करने की आवश्यकता नहीं है।

पुन: 3; वेब घटक को होस्ट करना संभव है ताकि आप घटक को अपडेट की समीक्षा और नियंत्रण कर सकें।

मैं इस बात से भी पूरी तरह सहमत हूं कि डिजिटल हस्ताक्षर वास्तव में एक बड़ी गायब विशेषता है।

हालाँकि, यह भी सवाल है कि PDF.js जैसे पुस्तकालय का भी क्या करना है। मेरी राय में, एक विकल्प को उजागर करना जो असुरक्षित है, आसानी से गलत समझा जाता है, और लाइब्रेरी के अंतिम छोर-उपयोगकर्ता के लिए खराब सुरक्षा परिणाम होगा, कुछ ऐसा नहीं है जो पुस्तकालय उत्पादकों को आसान बनाना चाहिए।

पुस्तकालय डेवलपर्स द्वारा कार्यान्वित किया जाता है, जो _should_ सुरक्षा के बारे में जानते हैं।
मेरी ओर से, यदि मेरे पास सुविधा थी, तो मैं निश्चित रूप से हस्ताक्षर प्रदर्शित करूंगा, लेकिन हस्ताक्षर सर्वर पक्ष की जांच और सत्यापन भी करूंगा ताकि हस्ताक्षर मान्य न होने पर मैं चेतावनी दिखा सकूं।

"होना चाहिए" और "हैं" दो अलग-अलग चीजें हैं। हस्ताक्षर अमान्य होने या अविश्वास होने पर हस्ताक्षर छवि प्रदर्शित करना उस तरह का निर्णय है, जिसके परिणामों को पूरी तरह से समझे बिना कोई भी निर्णय ले सकता है।

कल्पना करें कि यदि यह विशेषता पूरी होती तो COVID-19 द्वारा इस संगरोध के दौरान बहुत मदद मिलती, कल्पना करें कि कितने लेनदेन, अनुबंध आदि।

वे घर से बाहर किए जा सकते थे, हालांकि मैंने देखा है कि यह कार्यक्षमता वर्षों से स्थिर है, मुझे इसका कारण नहीं पता है लेकिन मुझे लगता है कि अन्य उपकरणों के साथ संयोजन में यह सहयोगी कार्य, घर कार्यालय, के लिए बहुत मदद कर सकता है। आदि।

मैं इस बात से पूरी तरह सहमत हूं कि हमने अपने दर्शकों को संभव बनाने वाली सभी लाइब्रेरियों को क्यों बनाया और खोला है। यह भी है कि हम लोगों को मुफ्त में अपने दर्शक का उपयोग करने दें।

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

मुझे अपने Angular CLI ऐप में pdfs प्रदर्शित करने की आवश्यकता है, एक संदर्भ में जहां हस्ताक्षर की वैधता प्रासंगिक नहीं है, और एक सटीक प्रदर्शन करने के लिए एकमात्र महत्वपूर्ण हिस्सा है।
मेरा परीक्षण मामला एडोब से डिजिटल हस्ताक्षर के साथ नमूना पीडीएफ था।
जैसा कि मैंने पहले ही कई उत्तर देने की कोशिश की है, मैं नीचे अपने शोध के परिणामों को संक्षेपित करूंगा।

मैंने जो सबसे आम उत्तर देखा है, वह निम्न पंक्तियों को pdf.worker.js (लाइनों 48353 से 48355) पर टिप्पणी करना है:

if (data.fieldType === 'Sig') {
      //this.setFlags(AnnotationFlag.HIDDEN);
 }

हालांकि, यह काम नहीं किया।

एनोटेशन में निम्नलिखित पंक्तियों को टिप्पणी करते हुए। पीडीएफ में सीधे-सीधे पीडीएस-डिस्ट या तो काम नहीं किया (लाइनें 285 से 287):

case 0:
        this.color = null;
        break;

यह काम नहीं किया, भले ही मुझे नहीं पता था कि दिए गए कोड की लाइन को कैसे रखा जाए:
(<any>window).pdfWorkerSrc = '<path_to_file>/pdf.worker.js';

मैंने पृष्ठ में कम से कम

page.getAnnotations().then(function(annotations) {
     console.log('annotations loaded');
     console.log(annotations);
     for (let i = 0; i < annotations.length; i++) {
          console.log(annotations[i].subtype);
      }
 }, function (reason) {
     console.log(reason);
}); 

मेरे एप्लिकेशन के लिए पीडीएफ को प्रदर्शित करना महत्वपूर्ण है। बहुत कम से कम, मैं अपने स्थान पर एक प्लेसहोल्डर प्रदर्शित करने के लिए हस्ताक्षर की सीमा आयतों को प्राप्त करने में सक्षम होना चाहूंगा।
क्या कोई मेरी मदद कर सकता है?

मुझे अपने Angular CLI ऐप में pdfs प्रदर्शित करने की आवश्यकता है, एक संदर्भ में जहां हस्ताक्षर की वैधता प्रासंगिक नहीं है, और एक सटीक प्रदर्शन करने के लिए एकमात्र महत्वपूर्ण हिस्सा है।
मेरा परीक्षण मामला एडोब से डिजिटल हस्ताक्षर के साथ नमूना पीडीएफ था।
जैसा कि मैंने पहले ही कई उत्तर देने की कोशिश की है, मैं नीचे अपने शोध के परिणामों को संक्षेपित करूंगा।

नमस्ते, मुझे लगता है कि आप लगभग अपनी पहली कोशिश के साथ थे ... क्या आपने यह https://github.com/mozilla/pdf.js/issues/1076#issuecomment -446959325 की कोशिश की है?

मैंने बस कोशिश की: कुछ भी नहीं बदला।
कोई अन्य विचार?

यह मुद्दा काफी समय से खोला गया है, इससे निपटने के लिए वर्तमान योजना क्या है, और हम कैसे मदद कर सकते हैं?

यदि मैं हस्ताक्षर प्रदर्शित नहीं कर सकता, तो बहुत कम से कम, मैं एक प्लेसहोल्डर आयत प्रदर्शित करना चाहूंगा जहां यह होना चाहिए।
(बस x को जानना, y निर्देशांक की चौड़ाई और लंबाई का समन्वय करता है)

बेशक, हस्ताक्षर प्रदर्शित करना अभी भी सबसे अच्छा परिदृश्य होगा (एक बार फिर, मुझे अपने विशिष्ट उपयोग के मामले में इसे सत्यापित करने की आवश्यकता नहीं है)।

क्या यह असत्यापित हस्ताक्षरों को प्रदर्शित करने के लिए रेंडर विकल्प जोड़ने का विकल्प होगा?
इस तरह से pdf.js के उपयोगकर्ता यह तय कर सकते हैं कि वे उन्हें प्रदर्शित करने का जोखिम उठाना चाहते हैं या नहीं।

अमान्य क्रिप्टोग्राफ़िक हस्ताक्षर प्रदर्शित करना उतना ही बुरा है जितना कि गलत तरीके से सत्यापित किया जाना
https://www.pdf-insecurity.org/

यदि बैकएंड-सर्विस को कहने से पहले हस्ताक्षर को सही तरीके से मान्य किया गया हो तो क्या होगा?
इसका मतलब यह होगा कि हस्ताक्षर ठीक था, लेकिन फिर भी एक क्लाइंट-एप्लिकेशन में प्रदर्शित नहीं किया जा सकता था।

हस्ताक्षर प्रदर्शित करने या न देने का विकल्प pdf.js के उपयोगकर्ताओं को हस्ताक्षर को किसी भी तरह से सत्यापित करने में सक्षम करेगा और फिर इसे प्रदर्शित करने या न करने के लिए स्वयं निर्णय करेगा।
यह pdf.js के डेवलपर्स के बोझ को भी दूर करेगा ताकि सभी को हस्ताक्षर सत्यापन प्रदान किया जा सके क्योंकि यह संभवतः एक प्रतिपादन पुस्तकालय का हिस्सा नहीं होना चाहिए।
Pdf.js. के उपयोग-मामलों की सभी सीमाओं पर सख्ती से हस्ताक्षर प्रदर्शित नहीं करना

यदि बैकएंड-सर्विस को कहने से पहले हस्ताक्षर को सही तरीके से मान्य किया गया हो तो क्या होगा?
इसका मतलब यह होगा कि हस्ताक्षर ठीक था, लेकिन फिर भी एक क्लाइंट-एप्लिकेशन में प्रदर्शित नहीं किया जा सकता था।

हस्ताक्षर प्रदर्शित करने या न देने का विकल्प pdf.js के उपयोगकर्ताओं को हस्ताक्षर को किसी भी तरह से सत्यापित करने में सक्षम करेगा और फिर इसे प्रदर्शित करने या न करने के लिए स्वयं निर्णय करेगा।
यह pdf.js के डेवलपर्स के बोझ को भी दूर करेगा ताकि सभी को हस्ताक्षर सत्यापन प्रदान किया जा सके क्योंकि यह संभवतः एक प्रतिपादन पुस्तकालय का हिस्सा नहीं होना चाहिए।
Pdf.js. के उपयोग-मामलों की सभी सीमाओं पर सख्ती से हस्ताक्षर प्रदर्शित नहीं करना

सर्वर और क्लाइंट के बीच सत्यापन करना ठीक है। हस्ताक्षर को वैध और मान्य प्रदर्शित करने के लिए एक ध्वज का प्रदर्शन एक फ़ुट गन होगा।

सर्वर और क्लाइंट के बीच सत्यापन करना ठीक है। हस्ताक्षर को वैध और मान्य प्रदर्शित करने के लिए एक ध्वज का प्रदर्शन एक फ़ुट गन होगा।

हम सत्यापित हस्ताक्षरों के साथ काम कर रहे हैं, लेकिन पीडीएफ ब्राउज़र का उपयोग करके क्लाइंट ब्राउज़र में उन्हें (हैक किए बिना) प्रदर्शित नहीं कर सकते
तो ग्राहकों के ब्राउज़र में PDF को रेंडर करने का अन्य विकल्प क्या आप सत्यापित हस्ताक्षर के दृश्य प्रतिनिधित्व को प्रस्तुत करने का सुझाव देंगे?

आप अपने PDFjs को परिनियोजन से पहले पैच कर सकते हैं जो भी व्यवहार की आवश्यकता है?

"हैकिंग" से मेरा यही अभिप्राय है और यही हम वर्तमान में करने को मजबूर हैं :-(

मैं यह नहीं देखता कि हम अभी भी इस मुद्दे के बारे में स्वयं से सवाल क्यों पूछ रहे हैं: "हैक्स" ने भी मेरे लिए काम नहीं किया, और मैं अभी भी आवश्यकता में हूं।

मेरे उपयोग के मामले में, हस्ताक्षरों की वैधता प्रश्न में नहीं है। हालाँकि, मुझे उन्हें प्रदर्शित करने की आवश्यकता है, या कम से कम उपयोगकर्ता को बताएं कि कैनवास के उस खाली हिस्से के बजाय "वहां कुछ है"।
मुझे परवाह नहीं है अगर एपीआई असत्यापित हस्ताक्षर के बारे में एक विशाल लाल चेतावनी पैराग्राफ के साथ आता है, या अगर यह मुझे कानूनी तौर पर यह कहने के लिए मजबूर करता है कि इसे सत्यापित नहीं किया जा सकता है, या यदि यह मुझे चेतावनी देता है कि यह मेरे स्वयं के जोखिम पर है।
... मुझे केवल हस्ताक्षर प्रदर्शित करने की आवश्यकता है।

बहुत कम से कम, मैं वास्तव में दस्तावेज़ पर हस्ताक्षर की स्थिति और आकार रखना चाहता हूं, ताकि मैं "हे, उपयोगकर्ता के साथ उनकी जगह पर एक ग्रे बॉक्स प्रदर्शित कर सकूं, वहां एक हस्ताक्षर होना चाहिए" उन पर।

वर्तमान में, उपयोगकर्ता को यह जानने की क्षमता नहीं है कि इस स्थान पर दस्तावेज़ पर हस्ताक्षर किए गए हैं।
कि तड़के का एक भी बदतर तरीका नहीं है?

यदि कोई बूलियन था जो दस्तावेज़ के सभी डिजिटल हस्ताक्षरों को पारदर्शी ग्रे टेम्पलेट बॉक्स के रूप में प्रदर्शित करने की अनुमति देता था, तो यह काफी संतोषजनक होगा, और यह सुविधा किसी भी नैतिक / सुरक्षा समस्या को नहीं बढ़ाएगी।

(मैं यह भी कहना चाहूंगा कि समस्या स्पष्ट रूप से 2012 से लंबित है, एक सौ से अधिक टिप्पणी के साथ, अकेले इस धागे में। मुझे नहीं लगता कि मैं केवल इस सुविधा के लिए इंतजार कर रहा हूं)

ग्रे बॉक्स एक रेंडरिंग त्रुटि की तरह प्रतीत होंगे और बहुत संभव है कि एक सपोर्ट-हॉटलाइन ओवरलोड करें :-)
हमारे पास जगह में एक हैकिंग काम है, जो अभी के लिए ठीक काम करता है, लेकिन यह बहुत ही बदसूरत है:

  1. Pdfjs-dist का वर्तमान, ट्रांसप्लड और मिनिफ़ाइज्ड संस्करण डाउनलोड करें
  2. ट्रांसपोंड संस्करण में विचाराधीन लाइनों को पैच करें।
  3. आंतरिक एनपीएम-रेपो में नए निजी पैकेज के रूप में रिलीज़ करें।
  4. मूल pdfjs-dist पैकेज के बजाय पैच किए गए पैकेज का उपयोग करें।

उगली सही? लेकिन यह काम करता है और एम्बेडेड हस्ताक्षर को ठीक करता है।

ग्रे बॉक्स एक रेंडरिंग त्रुटि की तरह प्रतीत होंगे और बहुत संभव है कि एक सपोर्ट-हॉटलाइन ओवरलोड करें :-)

हां, हां, हां, मेरा मतलब था कि कोई भी टेम्पलेट / छवि / संदेश जिसे * द्वारा सराहा जा सकता है, पीडीएफ में डिजिटल हस्ताक्षर हैं जिन्हें सत्यापित नहीं किया जा सकता है, और इस तरह, प्रदर्शित नहीं किए गए थे। कुछ भी जो उपयोगकर्ता द्वारा समझा जा सकता है यदि कोई संदेश समझाता है।

  1. ट्रांसपोंड संस्करण में विचाराधीन लाइनों को पैच करें।

मैं वर्तमान में अपने नोड_मॉड्यूल्स में पीडीएफ़एस-डिस्टर्ब के साथ कोणीय सीएलआई का उपयोग कर रहा हूं, लेकिन मैंने जो कुछ पोस्ट लिखा है, उसका कोई समाधान मेरी तरफ से काम नहीं किया, और न ही इसने किया:

नमस्ते, मुझे लगता है कि आप लगभग अपनी पहली कोशिश के साथ थे ... क्या आपने इस # 1076 (टिप्पणी) की कोशिश की है?

क्या मुझे कुछ याद आया, या क्या मेरा मामला उस फिक्स के लिए बहुत विशिष्ट है?

हमने इस सूत्र में स्पष्टीकरण का पालन किया।
https://github.com/mozilla/pdf.js/issues/4743#issuecomment -163958888

हमने मूल रूप से इस हिस्से को बदल दिया है:

// Hide unsupported Widget signatures.
if (data.fieldType === 'Sig') {
   warn('unimplemented annotation type: Widget signature');
   this.setFlags(AnnotationFlag.HIDDEN);
}

इसके लिए:

// Hide unsupported Widget signatures.
if (data.fieldType === 'Sig') {
   warn('unimplemented annotation type: Widget signature');
}

मुझे पता है कि आप पूरे 'अगर' को हटा सकते हैं लेकिन हम सबसे छोटा संभव पैच चाहते थे।

ओह। यह वास्तव में तय है कि मेरी तरफ से काम नहीं किया।
जब मैं अपने एप्लिकेशन के भाग को प्रदर्शित करने के लिए पीडीएफ पर वापस जाता हूं, तो मैं फिर से कोशिश करूंगा।
मैंने अभी तक अपना स्वयं का पैकेज नहीं बनाया था, लेकिन पिछली बार मैंने कोशिश करने पर नोड_मॉडल / पीडीएफजे-डिस्टेंस में सीधे फ़ाइल को बदलने से कुछ भी नहीं बदला।

क्या आपने दोनों फाइल pdf.worker.js और pdf.worker.min.js
यह हमारे दृष्टिकोण में आवश्यक था।

क्या आपने दोनों फाइल pdf.worker.js और pdf.worker.min.js
यह हमारे दृष्टिकोण में आवश्यक था।

आप एक उत्कृष्ट बिंदु उठाते हैं जिसे मैंने अनदेखा किया हो सकता है!
मैं कोशिश करूँगा कि आज जल्दी से, और देखें कि क्या यह काम करता है।

नमस्ते मुझे आपका दृष्टिकोण पसंद है, लेकिन दुर्भाग्य से यह मेरे लिए काम नहीं कर पाया
मैंने इस तरह लाइनें बदलीं:

हमने इस सूत्र में स्पष्टीकरण का पालन किया।
# 4743 (टिप्पणी)

हमने मूल रूप से इस हिस्से को बदल दिया है:

// Hide unsupported Widget signatures.
if (data.fieldType === 'Sig') {
   warn('unimplemented annotation type: Widget signature');
   this.setFlags(AnnotationFlag.HIDDEN);
}

इसके लिए:

// Hide unsupported Widget signatures.
if (data.fieldType === 'Sig') {
   warn('unimplemented annotation type: Widget signature');
}

मुझे पता है कि आप पूरे 'अगर' को हटा सकते हैं लेकिन हम सबसे छोटा संभव पैच चाहते थे।

तब मैंने इसे gulp generic के साथ बनाया और निर्मित संसाधनों का उपयोग किया।

क्या आपने दोनों फाइल pdf.worker.js और pdf.worker.min.js
यह हमारे दृष्टिकोण में आवश्यक था।

pdf.worker.js का निर्माण किया गया था, लेकिन आप pdf.worker.min.js उल्लेख करते हैं, यह कैसे बनाया जाता है और इसे कहाँ संग्रहीत किया जाता है?
मैं क्या खो रहा हूँ?

आपका अग्रिम रूप से बोहोत धन्यवाद

@ ll-priva हमने स्वयं pdf.js का निर्माण नहीं किया।
जैसा कि मैंने टिप्पणी में कहा था https://github.com/mozilla/pdf.js/issues/1076#issuecomment -658601553 हमने वास्तव में pdfjs-dist के पहले से ही बनाए गए संस्करण को डाउनलोड किया और pdf.worker.js के बंडल संस्करणों को पैच किया। pdf.worker.min.js

Https://github.com/mozilla/pdf.js/issues/1076#issuecomment -658609803 में मेरा स्पष्टीकरण शायद थोड़ा अस्पष्ट था, क्षमा करें।
हमने पूर्वनिर्मित पैकेज https://www.npmjs.com/package/pdfjs-dist को पैच करके वर्णित समाधान लागू किया
तब हमने अपने आंतरिक npm-रिपॉजिटरी में एक निजी pdfjs-dist पैकेज को पुश करने के लिए pdf.worker.js और pdf.worker.min.js इन पैच संस्करणों का उपयोग किया।
पिछले नहीं बल्कि कम से कम हमने आधिकारिक pdfjs-dist पैकेज के बजाय अपने उत्पादन कोड में इस पैच किए गए संस्करण का उपयोग किया।

मुझे उम्मीद है कि यह हमारे दृष्टिकोण को थोड़ा स्पष्ट करता है।

@PSpSynedra आपका बहुत-बहुत धन्यवाद। मेरे लिए भी यही काम किया

मैं कुछ हफ्तों में पहली बार इस कार्य पर वापस आ रहा हूं, लेकिन यह अभी भी मेरी तरफ से काम नहीं करता है।
मैंने फिलहाल अपना निजी पैकेज नहीं बनाया है: जब तक मैं पुनर्निर्माण नहीं करता था, नोड_मॉडलस्पीडज-डिस्ट में सीधे फाइलों को संशोधित करके काम करना चाहिए था (स्थानीय स्तर पर, तब मुझे वास्तव में संशोधित pdf.js को आयात करना होगा। संपत्ति या पैकेज)।

फ़ोल्डर में "सिग" की खोज करने से 4 अलग फ़ाइल परिणाम मिलते हैं:

  • pdfjs-जिले \ buildpdf.worker.js
  • pdfjs-जिले \ buildpdf.worker.min.js
  • pdfjs-जिले \ es5 \ buildpdf.worker.js
  • pdfjs-जिले \ lib \ कोर \ annotation.js

मैंने "यदि" की सामग्री को हटाने के लिए उन सभी 4 घटनाओं का संपादन किया, जो हस्ताक्षर क्षेत्र को साफ कर दिया और इसे छिपाने के लिए एक ध्वज सेट किया, जैसा कि ऊपर उल्लेख किया गया है।
कुछ भी अलग नहीं हुआ: getAnnotations () एक खाली सरणी देता है, और मौजूदा हस्ताक्षर अभी भी प्रदर्शित नहीं होते हैं।

मुझे यह संदेश अभी भी सांत्वना में मिला है, जो कोई त्रुटि या चेतावनी नहीं है (pdf.worker.js: 2965: 14):

चेतावनी: अनपेक्षित विजेट फ़ील्ड प्रकार "सिग", बेस फ़ील्ड प्रकार पर वापस गिर रहा है।

कोड को देखने से, इसका मतलब है कि एनोटेशन.जेएस इसे "बेस" विड्जोटनोटेशन में लपेटता है, जिसका अर्थ है कि संदेश एक समस्या नहीं दिखती है, केवल वह झंडे जो मैंने हटा दिए हैं।

क्या मैं कुछ भूल रहा हूँ? मैंने min.js फाइल के साथ-साथ js फाइल को भी एडिट किया, जो कि बिल्ड फोल्डर में हैं और जैसे होना चाहिए वैसा ही इस्तेमाल किया जाना चाहिए, इसलिए सब कुछ काम करना चाहिए ...
आपने वास्तव में @ ll-priva और @PSpSynedra क्या किया?

@ ईप्सिओम यह वही है जो मैंने अभी किया था, और इसने मेरे लिए लगभग 5 मिनट में काम किया: https://github.com/mozilla/pdf.js/issues/1076#issuecomment -446959325

आपको this.setFlags(AnnotationFlag.HIDDEN); टिप्पणी करने के साथ-साथ data.fieldValue=null जोड़ने की आवश्यकता है। मेरे द्वारा संशोधित की गई एकमात्र फ़ाइल pdf.worker.js , जो हमारे मामले में pdfjs-dist लाइब्रेरी से है इसलिए पहले से ही संशोधित है

@ एप्सिओम और अन्य जो यहां समाप्त हो सकते हैं।
मैं एक ही मुद्दा था, परिणाम के लिए पीडीएफ कार्यकर्ता फ़ाइलों को संपादित।

मेरे मामले में मैं एक गंभीर एप्लिकेशन में पीडीएफ प्रदर्शित करने के लिए https://github.com/VadimDez/ng2-pdf-viewer का उपयोग कर रहा हूं। यह मॉड्यूल सीधे क्लाउड वर्कर से पीडीएफ वर्कर को लोड कर रहा था, लोकल फाइल को नहीं। इसलिए जांचें कि क्या वेब ऐप वास्तव में संशोधित pdf.worker.js फ़ाइल का उपयोग कर रहा है। आप कंसोल में अनइम्प्लीमेंटेड विजेट फील्ड टाइप "सिग" चेतावनी पर क्लिक करके चेक कर सकते हैं और माउस को फाइल के नाम पर ले जा सकते हैं।

@konum चेतावनी " http: // localhost : 4200 / आस्तियों / विक्रेता / pdf.worker.js" से है, लेकिन मैंने पहले ही बताई गई इस फ़ाइल की दो पंक्तियों को पहले ही बता दिया था:
if (data.fieldType === 'Sig') { //this.setFlags(AnnotationFlag.HIDDEN); //data.fieldValue = null; }

फिर भी दृष्टि में कोई डिजिटल हस्ताक्षर नहीं ...

@ Epsiom ने मेरे लिए भी काम नहीं किया। फिर भी में देख रहा हूँ।

@ एप्सिओम को देखने के लिए हस्ताक्षर प्राप्त करने में
मामला "सिग":
नया SquareAnnotation (पैरामीटर्स) लौटाएं;

क्या इस लाइन के ठीक ऊपर स्विच है।
(0, _util.warn) ('अनइम्प्लीमेंटेड विजेट फील्ड टाइप "" + फ़ील्डटाइप +' ", '+" बेस फील्ड टाइप पर वापस गिर रहा है। ");

@konum ने मेरे लिए काम नहीं किया:
ERROR Error: Uncaught (in promise): Object: {"message":"SquareAnnotation is not defined","stack":"AnnotationFactory_create<strong i="7">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:47999:7\nget annotations<strong i="8">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:48877:43\nLocalPdfManager_ensure/<<strong i="9">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:49204:21\nLocalPdfManager_ensure<strong i="10">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:49202:14\nPage_getOperatorList<strong i="11">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:48815:43\nwphSetupRenderPage/<<strong i="12">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:49883:13\n"} AnnotationFactory_create<strong i="13">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:47999:7 get annotations<strong i="14">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:48877:43 LocalPdfManager_ensure/<<strong i="15">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:49204:21 LocalPdfManager_ensure<strong i="16">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:49202:14 Page_getOperatorList<strong i="17">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:48815:43 wphSetupRenderPage/<<strong i="18">@http</strong>://localhost:4200/assets/vendor/pdf.worker.js:49883:13

@Epsiom आप

@ ईप्सिओम को स्पष्ट करने के लिए, केवल this.setFlags(AnnotationFlag.HIDDEN); टिप्पणी की जानी चाहिए। data.fieldValue = null; अगर इसके मौजूद नहीं होने पर जोड़ा जाना चाहिए, लेकिन टिप्पणी नहीं की जानी चाहिए।

हम पीडीएफजेएस-डिस्ट पैकेज का भी उपयोग कर रहे हैं, इसलिए हमने पहले की टिप्पणी के अनुसार उस एक को सीधे संशोधित किया। क्या आप सकारात्मक हैं कि जिस कोड को आप संशोधित कर रहे हैं वह वास्तव में निष्पादित हो रहा है? यदि यह आपके निर्माण के आधार पर नोड_मॉड्यूल्स में है, तो उनमें से कुछ संपत्ति को कैश किया जा सकता है, और आप वास्तव में अपने संशोधित कोड का उपयोग नहीं कर सकते हैं।

@kjhangiani मुझे स्पष्ट रूप से याद है कि कंसोल में कोई भी जोड़ा हुआ कंसोल दिखाई देता है, इसलिए इसे स्पष्ट रूप से निष्पादित किया जाता है।
मैं इस कार्य पर वापस आने पर data.fieldValue = null; जोड़ने का प्रयास करूंगा, और देखूंगा कि क्या काम करता है।

data.fieldValue = null; वापस if (data.fieldType === 'Sig') ब्लॉक में जोड़ने के साथ-साथ console.log("TEST") बस के मामले में, और कुछ भी नहीं हुआ, जबकि "TEST" सही ढंग से कंसोल में दिखाई दिया, सामान्य Warning: Unimplemented widget field type "Sig", falling back to base field type. बाद

कोई अन्य विचार?

@ एप्सिओम को देखने के लिए हस्ताक्षर प्राप्त करने में
मामला "सिग":
नया SquareAnnotation (पैरामीटर्स) लौटाएं;

क्या इस लाइन के ठीक ऊपर स्विच है।
(0, _util.warn) ('अनइम्प्लीमेंटेड विजेट फील्ड टाइप "" + फ़ील्डटाइप +' ", '+" बेस फील्ड टाइप पर वापस गिर रहा है। ");

मेरे लिए काम किया, आपने मेरा दिन बचाया, धन्यवाद।

@yduybya हाल ही में आपका प्रोजेक्ट कैसा है?
क्या इसकी कोई खासियत है?
मुझे लगता है कि मुझे pdf.js के अपने संस्करण को अपडेट करने और इसे फिर से आज़माने की आवश्यकता है, भले ही यह हाल ही में हो।

क्या Angular 9 ऐप पर pdf.js को अपडेट करने का कोई आसान तरीका है?
मुझे यहाँ पर नई pdf.worker.js (http://mozilla.github.io/pdf.js/build/pdf.worker.js) मिलीं, लेकिन केवल उस फ़ाइल को बदलने से काम नहीं हुआ (जाहिर है)।

मैंने अपने प्रोजेक्ट को वापस https://github.com/mozilla/pdf.js/issues/8836 और https://github.com/ashishyadav0019/pdfJS_angular4_Ts.git पर ट्रेस किया , लेकिन ये प्रोजेक्ट पुरानी फ़ाइलों का उपयोग कर रहे हैं।

PDF.js github और pdfJS_angular4_Ts.it पर फाइलें सहसंबद्ध नहीं हैं।
किसी को पता है कि कैसे सही ढंग से एक कोणीय 9 परियोजना पर pdf.js आयात करने के लिए, अप-टू-डेट फ़ाइलों के साथ?

@ ईप्सिओम फॉर https://github.com/VadimDez/ng2-pdf-viewer का उपयोग कर रहा हूं

Ng2-pdf- व्यूअर डॉक्स से:
डिफ़ॉल्ट रूप से कार्यकर्ता cdnjs.cloudflare.com से भरा हुआ है।
कार्यकर्ता को अपने कोड अपडेट पथ में उदाहरण के लिए /pdf.worker.js होना चाहिए
(विंडो को किसी भी रूप में) .pdfWorkerSrc = '/pdf.worker.js';
पीडीएफ-दर्शक घटक प्रदान करने से पहले इसे सेट किया जाना चाहिए।

इस परियोजना का उपयोग करने से आपकी परियोजना के लिए pdfjs-dist निर्भरता बढ़ जाएगी। SquareAnnotation टिप के साथ node_modules / pdfjs-dist / build / pdf.worker.js संपादित करें।

@konum मैं सीधे कई कारणों से pdf.js का उपयोग कर रहा हूं और एनजी 2-पीडीएफ-दर्शक नहीं, इससे प्रेरित होकर: https://github.com/ashishyadav0019/pdfJS_angular4_Ts.git
मेरे पास pdfjs-dist निर्भरता है, लेकिन यह src/assets/vendor/pdf.worker.js है जिसका उपयोग किया जाता है।
कोई उपाय ?

@Epsiom क्या आपने pdf.js और pdf.worker.js दोनों फाइलों को नवीनतम कोड में अपडेट करने की कोशिश की है?

@konum यह ठीक है कि मैं क्या करने की कोशिश कर रहा हूं, लेकिन चूँकि pdf.js का उपयोग शायद ही कभी कोणीय में किया जाता है, क्योंकि अधिकांश प्रोजेक्ट में केवल ng2-pdf-दर्शकों की आवश्यकता होती है, और चूंकि pdf.js के नवीनतम संस्करण में उपयोग की जाने वाली फाइलें भिन्न होती हैं पहली नज़र में ऐसा करने की प्रक्रिया स्पष्ट है।

नमस्ते,

यह टिप्पणी करना ।setFlags (एनोटेशन फ़्लैग.हिडन); pdf.worker.js में v2.6.347 पर हस्ताक्षर छवि नहीं दिखाएं।

क्या उसमें बदलाव हुआ था?

@lainosantos हाँ, एक बदलाव है। यदि आप प्रपत्र रेंडरिंग को निष्क्रिय करते हैं, तो हस्ताक्षर फिर से दिखाए जाते हैं।

@stephanrauh धन्यवाद

PDFViewerApplicationOptions.set('renderInteractiveForms', false);

क्या रूपों को सक्षम करने और हस्ताक्षर दिखाने का एक तरीका है?

@lainosantos नहीं, लेकिन मैं एक अच्छा चलने के माध्यम से पाया है कि कैसे अपने स्वयं के रूपों का निर्माण करने के लिए। उदाहरण मानता है कि renderInteractiveForms dectined है। यह कोणीय का उपयोग करता है, लेकिन मुझे लगता है कि आप एक अलग रूपरेखा का उपयोग करने पर भी विचार निकाल सकते हैं: https://medium.com/factory-mind/angular-pdf-forms-fa72b15c3fbd

मेरे पास इस समय के लिए अधिक जरूरी मामले हैं और कार्य पर समय नहीं दे सकते हैं, लेकिन अगर कोई भी कोणीय 9 पर एक अप-टू-डेट pdf.js संस्करण आयात करने का प्रबंधन करता है, तो वह मेरा सबसे गहरा धन्यवाद होगा।

@Epsiom आप यहाँ हैं: https://www.npmjs.com/package/ngx-extended-pdf-viewer :)

@stephanrauh ... ठीक है, सिवाय इसके कि मुझे संगत IE11 होने की आवश्यकता है और केवल कैनवास का उपयोग करने के लिए सीधे एक कस्टम-निर्मित पीडीएफ दर्शक है, इसलिए मैं इसका उपयोग नहीं कर सकता, दुख की बात है।
मैं या तो एनजी 2-पीडीएफ-दर्शक या किसी भी प्रकार का उपयोग नहीं कर सकता, मैं वास्तव में अपने आप में पीडीएफ के बारे में पूछ रहा हूं। जो वास्तव में एक आला मामला है।

क्या यह पृष्ठ उपयोगी था?
5 / 5 - 1 रेटिंग्स