ìë íìžì! PDF ë·°ìŽ (PDF.js)ìì ìëª ë°ìŽí°ë³Žêž° (Xades, Pades & Cades)륌 구íí ìêž° ëë 구í ì¬ë¶ì êŽì¬ìŽ ììµëë€.
ì¢ ë¥ ìë¶
ìë íëë¡ íŒë€ë,
SOA-X
íì¬ìŽ êž°ë¥ì 구íí ê³íì ììµëë€. ì°ëŠ¬ë ê·žê²ìŽ ë§ìŽ ëì€ë ê²ì ë³Žì§ ëª»íêž° ë묞ì ì°ì ììê° ìëëë€. ì°ëŠ¬ë íì ë ë§ì êž°ì¬ì륌 ì°Ÿê³ ììŒë¯ë¡ìŽ êž°ë¥ì ì¶ê° í íšì¹ë¥Œ íìí©ëë€. ì¶ê°ì êŽì¬ìŽ ììŒìë©Ž IRC ì±ë (#pdfjs irc.mozilla.org)ì ë€ë¥Žì ëë©ëë€.
Brendan
ìë íìžì
ìŽ êž°ë¥ì 구íì ëí íì¬ ìíë 묎ìì ëê¹?
ê°ì¬
@ fermo111 ìì§ êµ¬íëì§ ììì§ë§ìŽ ìì ì êž°êºŒìŽ ìí í ì¬ëì ìœì¹íê²ëìŽ êž°ì©ëë€.
@yurydelendik pdf.js ìì PDF íìŒì ëì§íž ìëª ì íìíë êž°ë¥ì 구ííë ë° êŽì¬ìŽ ììµëë€. ìŽë»ê² ì°ëœ í ì ììµëê¹?
@wolvz IRC irc.mozilla.org ì±ë #pdfjs (ê°ì¥ ê°ëší©ëë€)ìì ì 륌 ì°Ÿê±°ë ê³µê° íì ì ì°žì¬íì¬ ìì ì ì¡°ì íììì€.
pdf.jsìì ëì§íž ìëª
ì ì§ìíêž° ìíŽ annotation.jsìì SigWidgetAnnotation (ì : TextAnnotation, LinkAnnotation)ì 구ííë €ê³ í©ëë€.
ìëª
ìŽ pdf ë·°ìŽì íìëê³ DERë¡ ìžìœë© ë PKCS7 ê°ì²Žì í¬íš ë ìžìŠì륌 ìŽë¯ž ì¶ì¶íê³ íìží ì ììµëë€.
ìŽì íìŒì ë©ìì§ ë€ìŽì ì€ížë¥Œ íìžíë ë€ì ëšê³ë¡ ìŽëí©ëë€.
ìŽë¥Œ ìíŽ íìŒ ëŽì©ì ëí ì¡ìžì€ ê¶íìŽ íìí©ëë€ ... annotation.jsìì ì¡ìžì€ í ì ìëì§ ì¬ë¶ë ì ì ìì§ë§ ììëŒ ìë ììµëë€. ëŽê° í ììë ìµì ì ë€ìì ì¬ì©íì¬ core.jsì ëŽì©ì ê°ì ž ì€ë ê²ì
ëë€.
var contentStreamPromise = this.pdfManager.ensure (this, 'getContentStream', []);
var dataPromises = Promise.all ([contentStreamPromise]);
dataPromises.then (function (data) {
var contentStream = ë°ìŽí° [0];
var contents = contentStream.str.bytes;
ë°í ëŽì©;
});
ëêµ°ê° annotation.jsìì íìŒ ëŽì©ì ì»ë ê°ì¥ ì¢ì ë°©ë²ìŽ 묎ììžì§ ìë € 죌ìê² ìµëê¹?
믞늬 ê°ì¬ë늜ëë€ ...
wolvz,
ìŽì êŽë šíì¬ ìŽë€ ì§ì ìŽ ììµëê¹?
ížì ëŽì ê°êž°
ëì§íž ìëª
íì êž°ë¥ì ë§€ì° êŽì¬ìŽ ììµëë€. wolvzì 늬í¬ì§í 늬륌 ë³µì íê³ ìœë륌 ë¹ëíì§ë§ ì¬ì©íë €ê³ íë©Ž "require is not defined"ì€ë¥ì íšê» promise ê±°ë¶ê° íìë©ëë€. ë구ë ì§ ê·ž ì€ë¥ì ììžê³Œ íŽê²° ë°©ë²ì ì€ëª
í ì ììµëê¹? ëíìŽ êž°ë¥ì ëí ìì
ì ê³ìí ìí¥ìŽ ììµëë€. iText ëŒìŽëžë¬ëŠ¬ë¥Œ íµíŽ Javaìì pdfë¡ ìì
íì§ë§ javascriptë¡ ìì
íë ê²ì ìŽì ì ìëí ì ìŽìë ìì
ì
ëë€. ëêµ°ê°ê° ë륌 ì¬ë°ë¥ž ë°©í¥ìŒë¡ ìëŽ í ììë 묞ì / íí 늬ìŒë¡ ìëŽíì¬ìŽ êž°ë¥ì íë ìëë¡ ìŽëíë €ê³ í ë ìŽëìë¶í° ììíŽìŒíëì§ ììëŒ ì ììµëê¹?
íŒë ì€ëœìµëë€. pdfJSìì ëì§íž ìëª pdf륌 íìíë €ë©Ž pdf.js ëŒìŽëžë¬ëŠ¬ììíŽìŒ í ìŒ
ìŽ ìëª ê³Œ ìžìŠìë 몚ë pdfë¡ íìëì§ë§ pdf.jsë¡ ìŽë©Ž íìëì§ ììµëë€.
@ mrpandya007 , ê°ë°ìê° ìëª
íìž êž°ë¥ìŽ ìë í ëê¹ì§ ìšêž°ëë¡ ì ííêž° ë묞ì ëì§íž ìëª
ìŽ íìëì§ ììµëë€.
ëŽê° êž°ìµíë 겜ì°, ëšìí íìëꞰ륌 ìíë©Ž ì¬êž°ì 389 ~ 392 íì 죌ì ì²ëŠ¬íŽìŒí©ëë€. https://github.com/mozilla/pdf.js/blob/master/src/core/annotation.js#L389
ê·žëë íì€íì§ ììŒë©° ì§êžì í
ì€íž í ì ììµëë€.
@wolvz , ìëµì ëí
ì ìê² ëëµ íŽì£Œìžì .... ì ê°íŽìŒ í ìŒ .. í ì€íž í pdf륌 ë늎 ì ììµëë€.
ìì§ ëì§íž ìëª ì ëí ì¢ì ì§ììŽ ììŒë¯ë¡ìŽë¥Œ 구ííŽìŒí©ëë€.
ì°ëŠ¬ë ë¹ì ì libì ìì¡Žíêž° ë묞ì ëì§íž ìëª ë¬žì 륌 íŽê²°íë ë° ë©°ì¹ ìŽ ê±žëŠŽ ê²ì ëë€.
ìŽ êž°ë¥ì ëêµ°ê°ê° ê°ë°íŽìŒíê³ íì¬ ì°ì ììê° ë ëì 묞ì ê° ììŒë¯ë¡ ìê°ìŽ ì€ë 걞늎 ì ììµëë€.
íìŒì ë€ìŽë¡ë í í pdf.jsììë§ ì 목ì "="ë¡ê·žìž 묞ì ê° ë°ìíë ìŽì ë 묎ìì
ëê¹?
ìŽë€ íŽê²°ì±
ìŽëŒë죌ìžì. telerikìì ìì± ë pdfììë§ ë°ìí©ëë€.
@ mrpandya007 ë€ë¥ž ìŽì ìì êŽë šìë ìŽì륌 ê²ìíì§ ë§ììì€. íŽë¹ 묞ì ì ëíŽ ë³ëì 묞ì 륌 ìœë ë€.
ëë ê°ì 묞ì ê° ë°ìíìµëë€. ìëª ì íšì± ê²ì¬ê° ë°ëì íìí ê²ì ìëì§ë§ ì 겜ì°ìë ìëª ìŽë¯žì§ ë§ íìíêž°ì 충ë¶í ê²ì ëë€. ìŽë¯žì§ë¥Œ íìíì§ ìë ëì ìëª ì íšì± ê²ì¬ê° 구í ë ëê¹ì§ ìŽë¯žì§ë¥Œ íìíê³ "ìëª ì íšì± ê²ì¬ê° 구íëì§ ìììµëë€. ìëª ìí륌 ì ì ìì"곌 ê°ì ìì í ì€ížë¡ 죌ìì ì¶ê°íë ê²ìŽ ì¢ìµëë€. ê·žëì ì ìŽë ìê°ì ìŒë¡ pdfë ë¹ì ìŽ êž°ëíë ê²ì 볎ì¬ì€ ê²ì ëë€.
ìŽ ë¬žì ê° ìžì íŽê²° ë ì§ì ëí ìŒì ìŽ ììµëê¹? ìëë©Ž ë€ë¥ž ì íì ê³ ë €íŽìŒí©ëê¹?
ëŽê° ìë í ì묎ëìŽ ìì ì ìííì§ ììŒë¯ë¡ ëêµ°ê°ìŽ ìì ì ìí í ìí¥ìŽ ìë€ë©Ž PRì ì ì¶íŽ 죌ìêž° ë°ëëë€.
ìë
íìžì,
ëì§íž ìëª
íë ë§ íì í ììë PDF.JS ë²ì ì ë§ì ì¬ì©ììê² ì¶©ë¶íŽìŒí©ëë€.ìŽ ìì
ì ìí í ììë "í¬í¬"ê° ììµëê¹?
묞ì ìžì¬
@DORNINEM ìëª
죌ìì ìšêž°ë ìœë륌 죌ì ì²ëŠ¬íë©Žë©ëë€.
ê·žë¬ë ìŽìšë ì¬êž°ì ìì²í í¬í¬ê° ììµëë€. https://github.com/wolvz/pdf.js
@wolvz !! ê°ì¬í©ëë€.
ìŽ êž°ë¥ìŽ ê³µì ë²ì ììë ìŽì ê° ê¶êží©ëë€. ìëª
ë PDF íìŒ ì€ ìŒë¶ (1-6 ê°ì ë€ë¥ž ìëª
íë)ë¡ í
ì€ížíëë° ê²°ê³Œë ì벜í©ëë€!
ì§ì§ íìë ìëª
ì ì íšì±ì ê²ì¬íë ê²ìŽ ìëëŒ ìŽë¬í íë륌 íìíë ê²ì
ëë€. ìëª
ì íšì± ê²ì¬ë ë¡ì»¬ ìžìŠì ì ì¥ìì ì€ì¹ëì§ ìì ìžìŠìê° íìí ëê° ììŒë¯ë¡ ìë² ìž¡ìì ê°ì¥ ì ìíë©ëë€.
ìë íìžì,
ëêµ°ê°ê° pdf.jsê° ëì§íž ìëª ì íì í ì ìëë¡ ì°ëŠ¬ê° 죌ìì ë¬ê±°ë 죌ìì ì ê±°íŽìŒíë ì€ì ì€ëª í ì ììµëê¹?
몚ë ì 볎ì ê°ì¬ë늜ëë€ :)
@maximlefebvre https://github.com/wolvz/pdf.js/commit/7df3f4fe6e21b888358fd7718cb15e3c266ba066 ì ë°ë¥Žë©Ž PDF.jsê° ìëª ì íìíêž°ì 충ë¶íŽìŒí©ëë€. ê·žë¬ë ìŽê²ì PDF.js íìì ìì ì ìž ì룚ì ìŒë¡ íìžëì§ ìììŒë¯ë¡ (ë°ëŒì ìì§ ê³µì ìœëë² ìŽì€ììë ìŽì ) ìì ì룚ì ìŒë¡ ìë í ì ììµëë€.
ìëª íìžì 구ííë ë° êŽì¬ìŽ ììµëë€. @wolvzê°ìŽ ìì ì ììíì§ë§ ìë£íì§ ìì ê² ê°ìµëë€. ì°ëŠ¬ê° ìì í ììë ë¶ë¶ ìœëê° ììµëê¹?
@wolvz , ê·íì ì ì¥ì륌 ìŽíŽíêž° ìíŽ ìì ë©ëªšë¥Œ ìì±íì¬ ëìì 죌ìê² ìµëê¹? ìœë íìžì ììíë ë°©ë²ì ìŽíŽí ì ììµëë€. ì°ëŠ¬ë ìëª ì 구ííë €ê³ ë žë ¥íê³ ììŒë©° ê·íì íë¡ì ížë¥Œ ìë£íê³ ì»€ë®€ëí°ë¥Œ ëìž ì ììµëë€.
https : // pkijs륌 ì¬ì©íì¬ ëžëŒì°ì ìì PDFì ìëª ë° ìëª íìžì 몚ë 구ííìµëë€ https://pkijs.org/examples/PDFexample.html ì°ëŠ¬ë ìì§ PDFjsì íµí©ëì§ ììì§ë§ ê·žë ê² ë©ì§ ìì 믞ëì ê·žë ê² í ê²ì ëë€. ì°ëŠ¬ì ìëë ìŽê²ì ëë¶ë¶ì OSSë¡ ì¶ìíê³ ìíí íµí©ì ìíŽ íìí PDFjsì ë³ê²œ ì¬íì ëëë €ì£Œë ê²ì ëë€.
ê°ì¬í©ëë€ @rmhrisk! ê·žë¬ë CA ë²ë€ íìŒì ë§ëë ë°©ë²ì ì ëªšë¥Žê² ìµëë€. ê·žë ê²íë ë°©ë²ì ëí ììží ëŽì©ìŽ ììµëê¹? ìŽê²ìŽ pdf.jsì íµí© ë ë Ʞ볞ì ìŒë¡ Adobe Root CAì íšê» ì ê³µëê³ ìžìŠì 첎ìžì íìží ììë "íë¬ê·ž ì€ íë ìŽ"ê° ë ë§ì ê²ìŽëŒê³ ìê°í©ëë€. ë§ìµëê¹? ê·žëŠ¬ê³ pdf.js íµí©ì ëí ìì íì ëŒìžìŽ ììµëê¹? ê·íì ìì ì ëëší ê°ì¬í©ëë€!
ì¬êž°ìë http://curl.haxx.se/ca/cacert.pemìŽ ìê³ ë€ë¥ž íëë ìí ìëì ì ì¥ìì 첎í¬ìžëììµëë€.
ì¬êž°ì ë§ë€ ììë ëêµ¬ê° ììµëë€ : https://github.com/PeculiarVentures/tl-create
ì§êžì ETA륌 ê³µì í ì ììµëë€. 늬ìì€ê° ì íëìŽ ììŒë©° ìŽë ì°ëŠ¬ìê² ì€ìíì§ë§ ë ë³µì¡í ë¶ë¶ì 뚌ì ìë£íŽìŒí©ëë€.
ë§í¬ í ìžìŠìì Adobe Reader륌 ì¬ì©íì¬ PDFìì ì¶ì¶íë €ê³ ìëí ìžìŠì륌 ìëíì§ë§ íì "TypeError : Cannot read property 'signature_time_stamp'of undefined"ì€ë¥ê° ë°ìí©ëë€ (Safari / Chrome stable / Chrome 칎ë늬ì).
ìŽë² 죌ì ìê°ìŽ ì¢ìì í ë pdf.jsë¡ ë³í©íë ë° ìŽë€ ì ìŒë¡ë ëìì ì€ ì ìëì§ ìë €ì£Œìžì.
ìŽ ìíì íì¬ êž°ë³ž ìëª ë§ ì§ìíë©° íì ì€í¬í ëë LTVë ì§ìíì§ ììµëë€. unmitigatedrisk dot comì rmhìì ì ìê² íì 볎ëŽì£Œìžì.
ì, ìê² ìµëë€. ì°žê³ ë¡, ë§ì¹šëŽìŽ CA ë²ë€ ê³ŒìŽ PDF íìŒì ì¬ì©íì¬ Chrome / Firefoxìì ìëíëë¡íìµëë€ (ê·žë¬ë Safarië ì ëì¬ ê°
ê·žë ìµëë€. ì ëì¬ ë¬žì ë¿ë§ ìëëŒ netflix drm ì¬ë¡ë¥Œ ì²ëŠ¬íêž°ì 충ë¶í webcrypto ë§ ì§ìí©ëë€. ì륌 ë€ìŽ ìì± í í€ ìì ëí ê³µê° í€ë¥Œ ëŽë³ŽëŒ ì ììµëë€!? ìŽ ëžëŒì°ì ì§ìì verifingìí ì¢ì ìììŽë€ - https://diafygi.github.io/webcrypto-examples/
@viveksjain Chrome / Firefoxìì ìŽë»ê² ìëíëì§ íìží ì ììµëê¹?
firefoxìì ê°ë° íë¬ê·žìžì ì¬ì©íŽ 볎ìì§ë§ ì¬ì í ìëª
ì íìíì§ ëª»íë ê² ê°ìµëë€.
http://mozilla.github.io/pdf.js/extensions/firefox/pdf.js.xpi
@complience ê·žë https://pkijs.org/examples/PDFexample.html ììë ìí ìœë륌 ë°ììµëë€.
ìë
íìžì @complience , https://github.com/viveksjain/pdf.js/tree/sig-verify-support ìì ìì
íë ê°ë
ìŠëª
ìŽ git clone --recursive https://github.com/viveksjain/pdf.js.git
륌 ì¬ì©íì¬ ìëíŽ ë³Œ ì ììµëë€. ì¡°êž ë ìì
íë©ŽìŽ ëŠ¬í¬ì§í 늬ì ëí í 늬íì€ížë¥Œë°ì ì€ë¹ê° ë ê²ì
ëë€.íì§ë§ ìì§ ìê°ìŽ ìììµëë€.
ížì ëŽì ê°êž° í 늬íì€ížë¥Œ ì€ë¹íêž° ì ì ì¬ì í íìí ê²ì 묎ìì ëê¹?
+1ìŽ êž°ë¥ì ì¬ì©íê²ëìŽ êž°ì©ëë€.
ì, ìŽê²ì ë§ì ì¬ì© ì¬ë¡ì ëí 묞ì ìŽìŽ 컀뮀ëí°ì í° ê°ì¹ë¥Œ ì¶ê° í ê²ì ëë€. ê°ì¬í©ëë€!!
ìŽ êž°ë¥ì ëí +1
ìŽ êž°ë¥ì ëí +1
ìì 몚ë ì¬ëë€ìê² ì¬êž°ì ëêžì ì¶ê°íë ëì GitHubì ìë¡ìŽ +1 ë°ì ë²íŒì ì¬ì©íìêž° ë°ëëë€.
ìŽ êž°ë¥ì ëíŽ + 1
ìŽ êž°ë¥ì ëíŽ ð + 1
ë€ì í ë², ìëš ëêžììë GitHubì ë°ì ë²íŒì ì¬ì©íì¬ìŽ êž°ë¥ì ì°¬ì±íë©Ž 묞ì ì ì°ì ìì륌 ì íë ë° ëììŽë©ëë€. "+1"죌ìì ì¶ê°íë©Ž ê°ë°ììê² ë¶íìí ìëŠŒìŽ ë°ìí©ëë€.
@viveksjain ë¶êž°ë¥Œ ì¬ì©íì¬ "TypeError : Cannot read property 'signature_time_stamp'of undefined"
+1. ìŽ êž°ë¥ì êž°ë€ëŠ¬ê³ ììµëë€! ..
ìŽ êž°ë¥ì ìžì ì¬ì©í ì ììµëê¹? ë¹ ë²¡ì€ììžì ë°ì ì ìŽë»ê² ëììµëê¹?
@complience ìë íìžì, https://github.com/viveksjain/pdf.js/tree/sig-verify-support ìì ìì íë ê°ë ìŠëª ìŽ https://github.com/viveksjain/pdf.js.git ì ì¬ì©íì¬ ìëíŽ ë³Œ ì ììµëë€
@lexcorp ë¶ííë ìŽê²ì ìŽì ë©ìì§ ìŽíì ì ìê² ë®ì ì°ì ììê°ëììµëë€. ëŽê° ëìê° ì ìëì§ ë³Œê²ì,íì§ë§ ëŽê° ì§í¬ ììë ìœììíì§ ìì ê±°ìì ...
ìŽ ë²ì ì 컎íìŒíë €ê³ í©ëë€ : https://github.com/viveksjain/pdf.js/tree/sig-verify-support
ëª
ë ¹ì ì
ë ¥ í ë : node make generic
ë€ì ë©ìì§ê° íìë©ëë€. ### íì¥ ë¹ë ë²íž ê°ì ž
ê·žëŠ¬ê³ ì»ŽíìŒ ê³Œì ìŽ ìíëì§ ììµëë€
ìŽ ì€ë¥ë¥Œ ìŽë»ê² íŽê²°í ì ììµëê¹?
ëŽê° ë ì못íê³ ìë?
컎íìŒì ëëŽì§ ìê² ìµëê¹?
@lexcorp ì¬ì í êŽì¬ìŽ ìë€ë©Ž ì ìŽë ëŽ ë²ì ì 컎íìŒíêž°ì 충ë¶í ì ë°ìŽížë©ëë€. : +1 :
ìë íìžì Vivek, ë€, ì¬ì í êŽì¬ìŽ ììµëë€. ê°ì¬í©ëë€ ...
2016-12-12 12:55 GMT-06 : 00 Gustavo Zambonin [email protected] :
@lexcorp https://github.com/lexcorp ìì§ êŽì¬ìŽ ììŒìë©Ž
ì ìŽë ëŽ ë²ì ì 컎íìŒíêž°ì 충ë¶í ì ë°ìŽížëììµëë€. ðâ
ë¹ì ìŽ ìžêž ëìêž° ë묞ì ìŽê²ì ë°ê³ ììµëë€.
ìŽ ìŽë©ìŒì ì§ì ëµì¥íê³ GitHubìì íìžíìžì.
https://github.com/mozilla/pdf.js/issues/1076#issuecomment-266518165 ,
ëë ì€ë ë ììê±°
https://github.com/notifications/unsubscribe-auth/AFfB-LbmIVIrJLnxwJlm8aDITDKh5tWLks5rHZi5gaJpZM4BlvMP
.
ìë Gustavo, ê³ ë§ì ...
2016-12-12 12:55 GMT-06 : 00 Gustavo Zambonin [email protected] :
@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ì ë Œì륌 ë°ë¥Žììì€.
PDFjsìì ìëª íìžììí ì¬ì© ì¬ë¡ì ëíŽ ì¬ëë€ì ì견ì ë£ê³ ì¶ìµëë€. ì¬ì© ì¬ë¡ì íšê» ryan (peculiarventures.com)ìŒë¡ ìŽë©ìŒì 볎ëŽì£Œììì€.
ëí PDFjs ë¡ê·žìžì ëí ì¬ì© ì¬ë¡ë¥Œ ë£ê³ ì¶ìµëë€. íŽë¹ ìë늬ì€ì êŽì¬ìŽ ìë€ë©Ž ì¬ì© ì¬ë¡ë ë£ê³ ì¶ìµëë€.
pdf.jsì sig-verify-support ëžëì¹ë IE륌 ì§ìíì§ ììŒë©° íìŽìŽ íì€ë ì벜íê² WebCrypto륌 ì»ì ì ììµëë€. ì²ëŠ¬ í ììŽëìŽê° ììµëê¹?
https://github.com/PeculiarVentures/webcrypto-liner/blob/master/BrowserSupport.md 륌 ì¬ì©í ì ììµëë€.
ìë íìžì ì¬ë¬ë¶-ëì§íž ìëª íìžìŽ ìŽë¯ž ìëíê³ ììµëê¹?
ëìŒí ì§ë¬ž : ëì§íž ìëª ì 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 : ìë íìžì
ëë¶ë¶ì ì¬ì©ìë ìì ì ìž ë²ì íìŒì ì¬ì©í©ëë€.
Mozilla Firefox 59 ESRìŽ ì¶ì ë ë Adobe Acrobat íë¬ê·žìžìŽ ë ìŽì ì¬ì©ëì§ ììŒë¯ë¡ ìŽì ëì§íž ìëª íìì ê°ì êž°ë¥ìŽ êž°ì ì¬ì©ì륌 ìíŽ pdf.jsì ì€ì ë¡ íìí©ëë€.
ëì§íž ìëª ì íìžíê³ ìì± í ììë PKIjs ë° PDFjs êž°ë°ì ëì§íž ìëª ì룚ì ì 구ííìµëë€. ì¬êž° ìì ë¯žêµ ëì§íž ìëª ë²ì 볎ë ì륌 볌 ì ììµëë€.
ë·°ìŽë íì¬ eIDAS ì 뢰 목ë¡ììë CAì Mozilla ì 뢰 S / MIME ë°êžì륌 ì 뢰í©ëë€.
묞ì ê° ë°ìíë©Ž ìí íìŒìŽìë ê²œì° [email protected] ìŒë¡ ìŽë©ìŒì 볎ëŽì£Œììì€.
@rmhrisk ìí ìœëì íšê» github ì ì¥ì륌 ì ê³µ í ì ììµëê¹?
@xrkolovos ìì ì ìëª íê³ íìžíë ë° íìí ëë¶ë¶ì ìì ì ì€í ìì€ì ëë€. ì¬êž°ìë https://github.com/PeculiarVentures/PKI.js , https://github.com/PeculiarVentures/ASN1.js , https://github.com/PeculiarVentures/xadesjs/ , https://github.comìŽ í¬íšë©ëë€. / PeculiarVentures / tl-create ë° https://github.com/PeculiarVentures/webcrypto-liner.
ëí PDFìì íì©íë ë€ìí ì íì ìëª ì ë§ë€ ì ìëë¡ ì첎 PDF ëŒìŽëžë¬ëŠ¬ë¥Œ ë§ë€ììµëë€ (ì°ëŠ¬ë ë ëë§ì PDFjs륌 ì¬ì©íì§ë§). ìŽ ëŒìŽëžë¬ëŠ¬ë ê²°êµ ê³µê°ëì§ë§ íì¬ë¡ìë ê³µê°ì ìŒë¡ ì¬ì©í ì€ë¹ê°ëì§ ìììµëë€.
ë·°ìŽì ìì€ë ê³µê°ëì§ ìì§ë§ ìì ëŒìŽëžë¬ëŠ¬ë¥Œ ì¬ì©íë©Ž ëêµ°ê° ìì ì ë·°ìŽìì ê²ìŠì ì¬í í ì ììµëë€. ì¬êž°ììŽë¥Œ ìííë ë°©ë²ì ëí Ʞ볞 ìê° ììµëë€. https://pkijs.org/examples/PDFexample.html ë·°ìŽì íµí©íêž° ë§íë©Žë©ëë€.
ìžì pdf.jsì ë³í©ë©ëê¹?
@Aarbel ìŽ ìì ìì ìžì ì°ëŠ¬ê° ê°ì§ê³ ìë ê²ì 늬í©í ë§ í ìê°ì ì°Ÿì ì ììì§ ëªšë¥Žê² ì§ë§ ìœê² ë³í© í ì ìì§ë§ PDFjsìì ìì ì ì°Ÿë ê²ì íìžíê³ ì¶ìµëë€. PDFjs íì ìŽì ì íìí ì¢ ìì±ìŒë¡ ìžíŽìŽ êž°ë¥ìŽ ëíëŽë í¬êž°ì ëíŽ ì°ë €ë¥Œ íëª íìµëë€. ìŽê²ìŽ ì°ë €ëë íìŽ ìì ì ìííë ë° ìì§ëìŽë§ ìê°ì ìë¹íë ê²ì ìë¯žê° ììµëë€.
IMHO, Firefox 59 (ESR)ê° ì¶ìëêž° ì ì 구ííì§ ììŒë©Ž Chrome ëë Edgeê° ëì§íž ìëª ì ìœì ì ìë€ë©Ž êž°ì ìì Firefoxì ì¢ ë§ì ì믞í©ëë€.
@FrenchHope Firefoxì í¬ë¡¬ì ëì§íž ìëª ì íìží ì ììµëë€.
ìŽ êž°ë¥ì ëí ì ë°ìŽížê° ììµëê¹?
ížì ëŽì ê°êž° :)
https://github.com/mozilla/pdf.js/pull/7702#pullrequestreview -4866355ìì ì€ëª íë¯ìŽ 첫 ë²ì§ž ëšê³ë ì¬ì©ì ì§ì PKI / crypto륌 PDF.jsì íµí© í ììë ì¶ì API륌 ë§ëë ê²ì ëë€.
@rmhrisk Chrome ì¬ì©ìë ì 겜 ì°ì§ ììµëë€. ì ë Firefox êž°ì ì¬ì©ì륌 ìŒë €í©ëë€. Firefoxê° ë ìŽì Adobe Acrobat Reader íë¬ê·žìžìŒë¡ ëì§íž ìëª ì íìží ììë ê²œì° ë§ì ì¬ëë€ìŽ Edge ëžëŒì°ì ëë Internet Explorer륌 ì¬ì©í ê²ì ëë€.
ë§ì íì¬ê° ìŽì Windows 10ìŒë¡ ë§ìŽê·žë ìŽì í©ëë€ ...
Edge ë IEë ë§ì°¬ê°ì§ì ëë€.
@rmhrisk IEë Adobe Acrobat Reader ActiveX륌 ì¬ì©í ì ììµëë€.
edit : Edgeë ëì§íž ìëª ì íì í ì ìì§ë§ Adobe Acrobat Readerì²ëŒ ìëª ì ì íšì±ì ìë €ì£Œì§ ììµëë€.
ActiveXë ë ìŽì ì¬ì©ëì§ ììŒë©° ê²°êµ ìëíì§ ììµëë€.
Edge ëì§íž ìëª ì ëìŽ ëŽëŠ¬ì§ ìì ìëª ìíì êŽê³ììŽ ì£Œìì ìŽë¯žì§ë¥Œ íìí©ëë€.
ìë íìžì,ìŽ êž°ë¥ì íì¬ ìíë 묎ìì ëê¹?
íì¬ ìì ì€ìŽ ìëì§ë§ ìµê·Œì ëêµ°ê° IRCìì ìì ìœëì êŽì¬ì 볎ììµëë€. 첫 ë²ì§ž ëšê³ë ì€ì ë¡ https://github.com/mozilla/pdf.js/issues/1076#issuecomment -374244765ì ëë€.
ìë
íìžì, Dic 2018 ëë 2019 ë
곌 ê°ì API ì¶ì ìì ìŒìŽ ììµëê¹?
ê·žë°ë° pdf ë·°ìŽì ê°ì¬ë늜ëë€.
ììì ìžêž í ê°ëší ìì ì¬íì 구ííê³ ì¶ììµëë€. ë€ì ì€ì 죌ì ì²ëŠ¬í©ëë€.
// Hide signatures because we cannot validate them.
if (data.fieldType === 'Sig') {
_this2.setFlags(AnnotationFlag.HIDDEN);
}
ê·žë¬ë ìŽë¡ ìžíŽ ìœìì ì€ë¥ê° ë°ìí©ëë€ (util.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)
ìë
íìžì.
ëë ë
žë ¥íê³ ë¹ì ìŽ ì£Œìì ë¬ë©Ž
if (data.fieldType === 'Sig') {
warn('unimplemented annotation type: Widget signature');
// this.setFlags(AnnotationFlag.HIDDEN);
}
ë¹ë ë pdf.worker.jsìì ìëí©ëë€.
ì ìŽë ìŽê²ì ëí ìµì ì ì ê³µíë©Ž ì¢ì ê²ì ëë€. ì륌 ë€ìŽ, ì°ëŠ¬ë ìŽì ì ìëª ì ì íšì±ì ê²ì¬íêž° ë묞ì ìëª ìŽ ì íšíë€ë ê²ì ìŽë¯ž ìê³ ììµëë€.
@strazovan ê°ì¬íê³ ëìíìµëë€. default_preferences.jsonìì ì€ì í ììë íë귞륌 ë§ë€ììµëë€. êŽì¬ìŽ ììŒìë©Ž ë³ê²œ ì¬íì ê²ì í ì ììµëë€!
@brianholle ìë íìžì, ë¹ì ì ì륌 ë°ë¥Žê² ìµëë€. ìŽ ìœëë¡ ì£ŒììŽ ë¬ëŠ° í¬ë¡¬ì ì ìì ìŒë¡ íìëì§ë§ IE ëžëŒì°ì ì ëì§íž ìëª ë ìŽë¯žì§ë í ì€ížë¥Œê°ëŠœëë€.
@hanxiaodao ì°šëš ìœë륌 죌ì ì²ëŠ¬ í ë ë€ì곌 ê°ìŽ ë§í©ëë€.
if (data.fieldType === 'Sig') {
warn('unimplemented annotation type: Widget signature');
// this.setFlags(AnnotationFlag.HIDDEN);
}
IEìì íìíë ë° ë¬žì ê° ììµëê¹?
@brianholle ëµì¥ì
ìŽê²ìŽ í¬ë¡¬ì 믞ì¹ë ìí¥ì
ëë€.
ìŽê²ìŽ IE11ì 믞ì¹ë ìí¥ì
ëë€.
ìëª íìžì ë žë ¥ì êž°ìžìŒ ê²œì° êŽëŠ¬ìë¡ë¶í° ì¶ì ì¹ë¥Œ ì»ì ì ììµëê¹?
ì§êž ë¹ì¥ì ì°ì ììê° ìëì§ë§, ëêµ°ê°ê° ìŽê²ì êž°ì¬íê³ ì¶ë€ë©Ž (ìì 구í ë°©ë²ì ëí 죌ì ì°žì¡°), ì°ëŠ¬ë ìŽê²ì PDF.jsì íµí©íë ê²ì êž°êºŒìŽ ì¡°ì¬ í ê²ì ëë€.
ì°ëŠ¬ë ëí íìží ììë ëì§íž ìëª
ì 볎ì¬ì£Œë ë° êŽì¬ìŽ ììµëë€. ì²šë¶ ë ì륌 ì°žì¡°íììì€.
Verpf-ErklÀrg-Bundesdatenschutz-Sig.pdf
ëŽê° ìžêž í ë :
if (data.fieldType === 'Sig') {
// this.setFlags (AnnotationFlag.HIDDEN);
}
ì€ë¥:
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 (AnnotationFlag.HIDDEN);
ê·ž ë€ì ë€ì ì€ì ì¶ê°íììì€.
data.fieldValue = null;
ì° ëì€íë ìŽ ì€ìì¹ë¥Œ ì ìŽíë ââutil.js륌 íì±ííêž° ìíŽ pdf ëë pdf_viewer륌 구ì±íë ë°©ë²ì 묎ìì ëê¹? INVISIBLE 0x01 ã HIDDEN 0x02ì ê°ì util.js íìŒìë AnnotationFlag ìµì ìŽ ììµëë€. pdf.worker.jsì AnnotionFlag륌 HIDDENìì PRINTë¡ ìì í©ëë€. ìŽ ë°©ë²ììŽ êµ¬ì± í ì ììµëê¹?
ì죌 ì¢ì êž°ë¥ìŽìŽìŒí©ëë€. 곧 êž°ë¥ìŽ ë ê²ì ëë€!
ë구ë ì§ ìŽê²ì ëí ìì ì ìž íŽê²° ë°©ë²ì ìê³ ììµëê¹? ë¹ë ë íìŒì ížì§íë ê²ì ë¡ì»¬ ëë í ì€íž 목ì ìŒë¡ ë§ ìë í ì ìì§ë§ ê·ž ìŽìì ìëëë€.
pdfjsë 죜ì íë¡ì ížì ëê¹? ì ê·žë€ìŽ ê°ì¥ ìíë êž°ë¥ì ê·žë ê² ì€ë«ëì 구ííì§ ììµëê¹ ??
PDF.js ìŽëê°ì ëì§íž ìëª ìŽ ì íšíì§ ìë€ë ìì ì늌ì íì í ì ìꞰ륌 ìí©ëë€. Chromeììë ìëíì§ë§ ë€ë¥ž ëžëŒì°ì ììë ìëíì§ ììµëë€. ìµìì 겜ì°ìë ê±°ëŠ¬ê° ë©ì§ ë§ 100 % ê²ìŠëì§ ìì 겜ì°ìë ìëª ì íìíê³ ì¶ìµëë€. this.setFlags (AnnotationFlag.HIDDEN); ë¶ë¶ìì pdf.worker.js ìœë륌 ë³ê²œíë €ê³ ìëíìµëë€. ì ììë€. ìëª ìŽ íë ìŽììì ë 컚í ìŽë륌 íìíë "document.getElementbyId"구ì±ì ì¶ê°íìµëë€. ê·žë¬ë 몚ë ëžëŒì°ì (í¬ë¡¬ ì ìž)ë "묞ì"륌 ìžìíì§ ëª»í©ëë€. 묞ì ë±ì ìì±ì ì¶ê°íê³ viewer.jsìì ì¬ì©íë ìµì ìŽ ììµëê¹? getElementbyIdìë ë ë§ì 구ì±ìŽ ììµëë€. ìŽë€ ëììŽëŒë êµì¥ í ê²ì ëë€.
ìµê·Œì ìëª íìžì ì§ìíë ë·°ìŽë¥Œ ì¹ êµ¬ì± ììì iframeìŒë¡ ëííìµëë€. ì¬êž°ìì ì¬ì© ë°©ë²ì ëíŽ ììží ìì볌 ì ììµëë€ : https://verify.ink/
ëëší rmhrisk !!!
@brianholle ëµì¥ì
ìŽê²ìŽ í¬ë¡¬ì 믞ì¹ë ìí¥ì ëë€.
ìŽê²ìŽ IE11ì 믞ì¹ë ìí¥ì ëë€.
IEìì ëìŒí ì§ë¬žìŽ ììµëë€.ìŽ ë¬žì 륌 íŽê²° íìµëê¹?
ì°ëŠ¬ ì¡°ì§ì 2000 ëª
ìŽìì ì¬ëë€ë¡ 구ì±ëìŽ ììµëë€. Firefoxë PDFì ìëª
ì ì¬ë°ë¥Žê² íì í ì ìêž° ë묞ì 몚ë Firefoxê° ìë Chromeì ì¬ì©íê³ ììµëë€.
Mozillaì ì°ì ììê°ëìŽìŒíë€ê³ ìê°í©ëë€.
@wolvz : ë¹ì ížì ì§ì ìŽ ììµëê¹?
+1
+1
ìµê·Œì ìëª íìžì ì§ìíë ë·°ìŽë¥Œ ì¹ êµ¬ì± ììì iframeìŒë¡ ëííìµëë€. ì¬êž°ìì ì¬ì© ë°©ë²ì ëíŽ ììží ìì볌 ì ììµëë€ : https://verify.ink/
í
Ryan,ìŽ ë¹ì£ŒìŒ ëŒìŽì ë²ì ì 컀뮀ëí°ì ê³µê°íë ê²ì ê³ ë €íŽ ë³Žì
šìµëê¹?
ëì§íž ìëª ì íìžíê³ ìì± í ììë PKIjs ë° PDFjs êž°ë°ì ëì§íž ìëª ì룚ì ì 구ííìµëë€. ì¬êž° ìì ë¯žêµ ëì§íž ìëª ë²ì 볎ë ì륌 볌 ì ììµëë€.
ë·°ìŽë íì¬ eIDAS ì 뢰 목ë¡ììë CAì Mozilla ì 뢰 S / MIME ë°êžì륌 ì 뢰í©ëë€.
묞ì ê° ë°ìíë©Ž ìí íìŒìŽìë ê²œì° [email protected] ìŒë¡ ìŽë©ìŒì 볎ëŽì£Œììì€.
í
Ryan,ìŽ ë¹ì£ŒìŒ ëŒìŽì ë²ì ì 컀뮀ëí°ì ê³µê°íë ê²ì ê³ ë €íŽ ë³Žì
šìµëê¹?
@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 -certificates
do ëì§íž ìëª ê³Œ êŽë šë ë€ìí ì€ë ëìì ëëœ ë ì§íì 죌ë ìŽì ë ìëª ì íìíêž°ìí ì ì 조걎ìŒë¡ ìëª ì íìží ì ìë€ë ìžìì ë°ììµëë€.
"ìëª íìž"곌 "ìëª íì"ì ë ê°ì§ ì¬ì© ì¬ë¡ë¥Œ 구ë¶íë ê²ìŽ í©ëŠ¬ì ì ëê¹?
íìžëì§ ìì ìëª (í¹ì íë¡ì íž íìì ì¶ê° í ê²œê³ ê° íìí 겜ì°)ë íìíë ê²ë§ìŒë¡ë 충ë¶íê³ ì¶©ë¶í ì¬ì© ì¬ë¡ê° ë§ìŽ ìë€ê³ ìê°í©ëë€. ìœë륌 ìœê°ë§ ìì íŽë ìŽë¯ž ê°ë¥íë€ë©Ž ìŒê±°ë ë ììë ê³µì êž°ë¥ìŽ ìë ìŽì ë 묎ìì ëê¹?
ìëª ìŽ ì íšíì§ ìì ê²œì° íìíë 묞ì ë ì¬ì©ììê² ì íší ìžìì죌ë ê²ì ëë€.
í©ì± ìµì ìëª ê³Œ ë¬ëŠ¬ ëì§íž ìëª ì ìëª ì ì§ìì±ê³Œ ê·žì êŽë šë ìë륌 몚ë ëíë ëë€.
ì íšì±ì ê²ì¬íì§ ìê³ ìëª ìŽë¯žì§ë¥Œ íìíšìŒë¡ìš ì¬ì©ììê² ìŽë¯žì§ì ì¬ë³ž ìŒ ììì ë ì íìì ì ìíë ê²ì ëë€.
ê·žë¬ë 몚ë ì íší ëì§íž ìëª ìŽ PDFìì ìê°ì ìŒë¡ ííëë ê²ì ìëëë€. PDFë ëí ëŽê° ìë í ìê°ì ííììŽ ìëª í ì ììµëë€.
ëìêŽ ì¬ì©ìë ìì ì ìì© íë¡ê·žëš / ì¬ì© ì¬ë¡ê° ì íš / ì못ë ìëª ì íì í ì ìëì§ ëë ê²œê³ ì ê°ì ì¶ê° ì¡°ì¹ê° íìíì§ ì¬ë¶ë¥Œ ê²°ì íŽìŒíì§ ììµëê¹? ëŽê° ìŒëì ë í ê°ì§ ì¬ì© ì¬ë¡ë ìëª ììë ê³ ë €íë©Žì PDFìì ììì íìíë ê²ì ëë€. ìµì¢ ê²ìŠì ìíŽ ë€ë¥ž ëêµ¬ê° íìíì§ë§ ì¬ì í ì 볎륌 ì ê³µ í ì ììµëë€. ëì€íë ìŽë¥Œ ìµì êž°ë¥ìŒë¡ ì ê³µíë ëšì ìŽ ìë€ê³ ìê°í©ëë€.
ê·žë¬ë 몚ë ì íší ëì§íž ìëª ìŽ PDFìì ìê°ì ìŒë¡ ííëë ê²ì ìëëë€. PDFë ëí ëŽê° ìë í ìê°ì ííììŽ ìëª í ì ììµëë€.
ë ë¬žì¥ ëªšë ì íí©ëë€. 1) 몚ë PDFì ìê°ì ííìŽ í¬íšëìŽ ìì§ë ììµëë€ (ëë¶ë¶ ê·žë ìµëë€). 2) PDFë 묞ì ì 첎 ìëª ì íì©í©ëë€. ê·žë¬ëìŽ ë²ê·žìì ëŽê° 볞 ê²ì 묞ì ì 첎 ìëª ìŽ ìë ëì§íž ìëª ê³Œ êŽë šë ìê°ì ìëª ì íìíë ë° êŽì¬ìŽ ììµëë€.
ìê°ì ííìŽìë 묞ì ì 첎 ìëª ì§ìì ìíŽ ì ì¶í ë ë€ë¥ž ë²ê·žê°ìì ì ìì§ë§ ëì§íž ìëª ì ì¡Žì¬íë PDFjs êŽë š ë²ê·žìì ìŽì ëí ëšìŒ ìì²ì êž°ìµíì§ ììµëë€.
ëìêŽ ì¬ì©ìë ìì ì ìì© íë¡ê·žëš / ì¬ì© ì¬ë¡ê° ì íš / ì못ë ìëª ì íì í ì ìëì§ ëë ê²œê³ ì ê°ì ì¶ê° ì¡°ì¹ê° íìíì§ ì¬ë¶ë¥Œ ê²°ì íŽìŒíì§ ììµëê¹?
ì ë ê°ìžì ìŒë¡ ì í늬ìŒìŽì ê°ë°ìê° ìì ì ì í늬ìŒìŽì ìŒë¡ ìíë ê²ì í ì ììŽìŒíë€ê³ 믿ìµëë€.
ê·žë¬ë PDF.jsì ê°ì ëŒìŽëžë¬ëŠ¬ê° 묎ìì ì ííŽìŒíëì§ì ëí ì§ë¬žë ììµëë€. ì ìê°ìë ìì íì§ ìê³ ì€íŽíêž° ì¬ì° ë©° ëŒìŽëžë¬ëŠ¬ì ìµì¢ ì¬ì©ììê² ëì 볎ì 결곌륌 ìŽëí ìµì ì ë žì¶íë ê²ì ëŒìŽëžë¬ëŠ¬ ì ììê° ìœê² ë§ë€ ììë ê²ìŽ ìëëë€.
ìŽ êž°ë¥ìŽ ìë£ ëìë€ë©Ž COVID-19ì ìíìŽ ê²©ëŠ¬ êž°ê° ëì í° ëììŽëìì ê²ìŽëŒê³ ììíŽë³Žììì€. ê±°ë, ê³ìœ ë±ìŽ ìŒë§ë ë§ìì§ ììíŽë³Žììì€.
ì§ìì ìí í ìë ììì§ë§ìŽ êž°ë¥ìŽ ìë ëì ì 첎ëìŽìë ê²ì 목격íìµëë€. ìŽì ë ëªšë¥Žê² ì§ë§ ë€ë¥ž ë구ì íšê» ì¬ì©íë©Ž ê³µë ìì , í ì€íŒì€, êž°í
ì ì ìŒë¡ ëìí©ëë€. ëì§íž ìëª ì ììŒë¡ ì ì ë í° ê°ì¹ê° ë ê²ì ëë€. ëŽ ì¬ì© ì¬ë¡ë ìë£ êž°êž° ê°ë°ì ì¬ì©ëë ë구ì ëë€. ëì§íž ìëª ìŽ ììŒë©Ž í ì€íŒì€ìì ìŒìì ìŒë¡ ìŒíë ê²ìŽ íšì¬ ë ìŽë €ìž ê²ì ëë€. ìŽê²ìŽ ì ê° ëŒìŽëžë¬ëŠ¬ë¥Œ ì¬ì©íë íë¡ì ížì 맡겚 ìí곌 ê³ ê° ê°ì¹ ì¬ìŽì ê· íì ì°Ÿê±°ë í¹ì ì¬ì© ì¬ë¡ì ì í©í ì¶ê° ì¡°ì¹ë¥Œ ì·šíë ìŽì ì ëë€.
ëí ëì§íž ìëª ìŽ ì€ì ë¡ í° ëëœ ë êž°ë¥ìŽëŒë ë° ì ì ìŒë¡ ëìí©ëë€.
ê·žë¬ë PDF.jsì ê°ì ëŒìŽëžë¬ëŠ¬ê° 묎ìì ì ííŽìŒíëì§ì ëí ì§ë¬žë ììµëë€. ì ìê°ìë ìì íì§ ìê³ ì€íŽíêž° ì¬ì° ë©° ëŒìŽëžë¬ëŠ¬ì ìµì¢ ì¬ì©ììê² ëì 볎ì 결곌륌 ìŽëí ìµì ì ë žì¶íë ê²ì ëŒìŽëžë¬ëŠ¬ ì ììê° ìœê² ë§ë€ ììë ê²ìŽ ìëëë€.
ìŽ ëŒìŽëžë¬ëŠ¬ë 볎ìì ìê³ ììŽìŒ ê°ë°ìì ìíŽ êµ¬íë©ëë€.
ëŽ ë¶ë¶ìì êž°ë¥ìŽ ììŒë©Ž ë¬Œë¡ ìëª
ì íìíê³ ìëª
ìŽ ì íšíì§ ìì ê²œì° ê²œê³ ë¥Œ íì í ì ìëë¡ ìëª
ìë² ìž¡ì íìžíê³ ì íšì±ì ê²ì¬í©ëë€.
í
컀뮀ëí°ì ëí ì€í ìì€ë¥Œ ê³ííê³ ê³ìëê¹? 1 / ìží°ë·ìì 묞ì륌 ì¬ì©í ì ìëë¡ íì© 2 / ì 3ìê° ë¬žìì ì¡ìžì€íëë¡ íì© 3 / ì 3ìê° ì¬ì©ì ëžëŒì°ì ì ìë° ì€í¬ëŠœížë¥Œ ìœì
íëë¡ íì© í ììë 겜ì°ê° íëë ìêž° ë묞ì
ëë€.
ê·žê²ì pdfjsì í° ëììŽ ë ê²ì
ëë€.
í
컀뮀ëí°ì ëí ì€í ìì€ë¥Œ ê³ííê³ ê³ìëê¹? 1 / ìží°ë·ìì 묞ì륌 ì¬ì©í ì ìëë¡ íì© 2 / ì 3ìê° ë¬žìì ì¡ìžì€íëë¡ íì© 3 / ì 3ìê° ì¬ì©ì ëžëŒì°ì ì ìë° ì€í¬ëŠœížë¥Œ ìœì íëë¡ íì© í ììë 겜ì°ê° íëë ìêž° ë묞ì ëë€.
ê·žê²ì pdfjsì í° ëììŽ ë ê²ì ëë€.
ì°ëŠ¬ë ë·°ìŽë¥Œ ë§ëë ë° ì¬ì©í 몚ë ëŒìŽëžë¬ëŠ¬ë¥Œ ì€í ìì€ë¡ ì ê³µí©ëë€. ëŒìŽëžë¬ëŠ¬ê° ë§ê³ ìë¹í ë³µì¡í©ëë€. ì륌 ë€ìŽ ë·°ìŽì ëí ìžìŠì ì íšì± ê²ì¬ë¥Œ ì²ëŠ¬íë PKIjs ë¶ë¶ì ââìŽíŽë³Žììì€. ëí ì§ì곌 íšê» ìì ì© ëŒìŽì ì€ë¥Œ ì ê³µí©ëë€.
ì°ëŠ¬ë ìì²ì륌 ì€í ìì±íì§ ìì ê²ì ëë€.ìŽ ìì ì ìë¹í ìê°ê³Œ í¬ìê° íìíê³ ê·ž ìê°ìë ê°ì¹ê° ììµëë€. ì°ëŠ¬ëìŽë¥Œ ê°ë¥íê²íêž° ìíŽ ì°ëŠ¬ê° ë§ë ì€í ìì€ ëŒìŽëžë¬ëŠ¬ë¥Œ ì¬ì©íì¬ ë€ë¥ž ì¬ëë€ì ì§ìíê²ëìŽ êž°ì©ëë€.
Re : 1; ë·°ìŽë 묞ìê° ìží°ë·ììì íìê° ììµëë€.
Re : 2; ë·°ìŽë íì¬ê° 묞ìì ì¡ìžì€íëë¡ íì© í íìê° ììµëë€.
Re : 3; ì¹ êµ¬ì± ìì륌 ížì€í íì¬ êµ¬ì± ììì ëí ì ë°ìŽížë¥Œ ê²í íê³ ì ìŽ í ì ììµëë€.
ëí ëì§íž ìëª ìŽ ì€ì ë¡ í° ëëœ ë êž°ë¥ìŽëŒë ë° ì ì ìŒë¡ ëìí©ëë€.
ê·žë¬ë PDF.jsì ê°ì ëŒìŽëžë¬ëŠ¬ê° 묎ìì ì ííŽìŒíëì§ì ëí ì§ë¬žë ììµëë€. ì ìê°ìë ìì íì§ ìê³ ì€íŽíêž° ì¬ì° ë©° ëŒìŽëžë¬ëŠ¬ì ìµì¢ ì¬ì©ììê² ëì 볎ì 결곌륌 ìŽëí ìµì ì ë žì¶íë ê²ì ëŒìŽëžë¬ëŠ¬ ì ììê° ìœê² ë§ë€ ììë ê²ìŽ ìëëë€.
ëŒìŽëžë¬ëŠ¬ë 볎ìì _ ìììŒíë _ ê°ë°ìì ìíŽ êµ¬íë©ëë€.
ëŽ ë¶ë¶ìì êž°ë¥ìŽ ììŒë©Ž ë¬Œë¡ ìëª ì íìíê³ ìëª ìŽ ì íšíì§ ìì ê²œì° ê²œê³ ë¥Œ íì í ì ìëë¡ ìëª ìë² ìž¡ì íìžíê³ ì íšì±ì ê²ì¬í©ëë€.
"Should be"ì "are"ë ìë¡ ë€ë¥ž ë ê°ì§ì ëë€. ìëª ìŽ ì íšíì§ ìê±°ë ì 뢰í ì ìì ë ìëª ìŽë¯žì§ë¥Œ íìíë ê²ì 결곌륌 ìì í ìŽíŽíì§ ëª»í ì± ëêµ°ê°ê° ëŽëŠŽ ììë ê²°ì ì ì¢ì ìì ëë€.
ìŽ êž°ë¥ìŽ ìë£ ëìë€ë©Ž COVID-19ì ìíìŽ ê²©ëŠ¬ êž°ê° ëì í° ëììŽëìì ê²ìŽëŒê³ ììíŽë³Žììì€. ê±°ë, ê³ìœ ë±ìŽ ìŒë§ë ë§ìì§ ììíŽë³Žììì€.
ì§ìì ìí í ìë ììì§ë§ìŽ êž°ë¥ìŽ ìë ëì ì 첎ëìŽìë ê²ì 목격íìµëë€. ìŽì ë ëªšë¥Žê² ì§ë§ ë€ë¥ž ë구ì íšê» ì¬ì©íë©Ž ê³µë ìì , í ì€íŒì€, êž°í
ìŽê²ìŽ ì°ëŠ¬ê° ë·°ìŽë¥Œ ê°ë¥íê² í 몚ë ëŒìŽëžë¬ëŠ¬ë¥Œ ë§ë€ê³ ì€í ìì€ í ìŽì ì ëë€. ëí ì¬ëë€ìŽ ë·°ìŽë¥Œ 묎ë£ë¡ ì¬ì©í ì ìëë¡íë ìŽì ìŽêž°ëí©ëë€.
ì°ëŠ¬ê° í ìì ëë¶ì ëêµ°ê° ì°ëŠ¬ê° íšì¬ ì ì ë žë ¥ìŒë¡ í ë·°ìŽ ìì ì ì¬ííê³ êŽë š PRì PDFjsì ì ì¶í ì ìììŒë¯ë¡ íŽë¹ PRì ìœë ê²í íë ê²ë êž°êºŒìŽ í ê²ì ëë€.
ìëª
ì ì íšì±ìŽ êŽë šìŽìë ìí©ìì Angular CLI ì±ì PDF륌 íìíŽìŒíë©°, ì€ìí ë¶ë¶ì ì íí íì륌 ì ì§íë ê²ë¿ì
ëë€.
ëŽ í
ì€íž ìŒìŽì€ë Adobeì ëì§íž ìëª
ìŽìë ìí pdfììµëë€.
ìŽë¯ž ë§ì ëµë³ì ìë íìŒë¯ë¡ ì°êµ¬ 결곌륌 ìëì ììœíê² ìµëë€.
ëŽê° 볞 ê°ì¥ ìŒë°ì ìž ëµë³ì pdf.worker.js (48353 ~ 48355 í)ìì ë€ì íì 죌ìì ë¬ììµëë€.
if (data.fieldType === 'Sig') {
//this.setFlags(AnnotationFlag.HIDDEN);
}
ê·žë¬ë ìŽê²ì ìëíì§ ìììµëë€.
pdfjs-distìì ì§ì annotation.jsì ë€ì íì 죌ì ì²ëŠ¬íŽë ìëíì§ ìììµëë€ (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);
});
ëŽ ì±ìŽ pdf륌 ê·žëë¡ íìíë ê²ìŽ ì€ìí©ëë€. ìµìí ì늬 íìì륌 ëì íìíêž° ìíŽ ìëª
ì ê²œê³ ì¬ê°íì ê°ì žì¬ ì ìꞰ륌 ë°ëëë€.
ì묎ë ë륌 ëìž ì ììµëê¹?
ìëª ì ì íšì±ìŽ êŽë šìŽìë ìí©ìì Angular CLI ì±ì PDF륌 íìíŽìŒíë©°, ì€ìí ë¶ë¶ì ì íí íì륌 ì ì§íë ê²ë¿ì ëë€.
ëŽ í ì€íž ìŒìŽì€ë Adobeì ëì§íž ìëª ìŽìë ìí pdfììµëë€.
ìŽë¯ž ë§ì ëµë³ì ìë íìŒë¯ë¡ ì°êµ¬ 결곌륌 ìëì ììœíê² ìµëë€.
ìë íìžì, 첫 ë²ì§ž ìëë¡ ê±°ì ìë£íë€ê³ ìê°í©ëë€ ...ìŽ https://github.com/mozilla/pdf.js/issues/1076#issuecomment -446959325륌 ì¬ì©íŽ ë³Žì šìµëê¹?
ëë ê·žê²ì ìëíë€ : ì묎ê²ë ë°ëì§ ììë€.
ë€ë¥ž ìê°ì ìëì?
ìŽ ë¬žì ë ꜀ ì€ë«ëì ê³µê°ëììŒë©° íì¬ìŽ 묞ì 륌 íŽê²°íêž°ìí ê³íì 묎ììŽë©° ìŽë»ê² ëì ë늎ê¹ì?
ìëª
ì íì í ììë ê²œì° ìµìí ì늬 íì ì ì¬ê°íì íìíŽìŒí©ëë€.
(ëšìí x, y ì¢íë¿ë§ ìëëŒ ìëª
ì ëë¹ì êžžìŽë¥Œ ìë ê²)
ë¬Œë¡ ìëª ì íìíë ê²ìŽ ì¬ì í ìµì ì ìë늬ì€ì ëë€ (ë€ì í ë², í¹ì ì¬ì© ì¬ë¡ìì íìží íìê° ììµëë€).
íìžëì§ ìì ìëª
ì íìíêž°ìí ë ëë§ ìµì
ì ì¶ê°íë ìµì
ìŒê¹ì?
ìŽë° ììŒë¡ pdf.js ì¬ì©ìë íì ìíì ê°ìí ì§ ì¬ë¶ë¥Œ ê²°ì í ì ììµëë€.
묎íší ë ìíží ìëª
ì íìíë ê²ì ì못 ê²ìŠ ë ìëª
ì íìíë ê²ë§ íŒ ëì©ëë€.
https://www.pdf-insecurity.org/
ë°±ìë ìë¹ì€ë¥Œ íµíŽ ìëª
ìŽ ì¬ë°ë¥Žê² ê²ìŠ ë ê²œì° ìŽë»ê²ë©ëê¹?
ìŽê²ì ìëª
ìŽ ì ììŽì§ë§ ì¬ì í íŽëŒìŽìžíž ì í늬ìŒìŽì
ì íì ë ì ììì ì믞í©ëë€.
ìëª
ì íìíê±°ë íìíì§ ìë ë ëë§ ìµì
ì ì¬ì©íë©Ž pdf.js ì¬ì©ìê° ìŽë»ê² ë ìëª
ì ì íšì±ì ê²ì¬ í ë€ì ìëª
ì íìí ì§ ì¬ë¶ë¥Œ ì€ì€ë¡ ê²°ì í ì ììµëë€.
ëí ìŽê²ì pdf ë ëë§ ëŒìŽëžë¬ëŠ¬ì ìŒë¶ê° ìëìŽìŒíë¯ë¡ ìëª
íìžì ì ê³µíŽìŒíë pdf.js ê°ë°ìì ê°ë°ì ë¶ëŽì ì ê±°í©ëë€.
ìëª
ì ì í íìíì§ ììŒë©Ž pdf.jsì ì¬ì© ì¬ë¡ê° ì íë©ëë€.
ë°±ìë ìë¹ì€ë¥Œ íµíŽ ìëª ìŽ ì¬ë°ë¥Žê² ê²ìŠ ë ê²œì° ìŽë»ê²ë©ëê¹?
ìŽê²ì ìëª ìŽ ì ììŽì§ë§ ì¬ì í íŽëŒìŽìžíž ì í늬ìŒìŽì ì íì ë ì ììì ì믞í©ëë€.ìëª ì íìíê±°ë íìíì§ ìë ë ëë§ ìµì ì ì¬ì©íë©Ž pdf.js ì¬ì©ìê° ìŽë»ê² ë ìëª ì ì íšì±ì ê²ì¬ í ë€ì ìëª ì íìí ì§ ì¬ë¶ë¥Œ ì€ì€ë¡ ê²°ì í ì ììµëë€.
ëí ìŽê²ì pdf ë ëë§ ëŒìŽëžë¬ëŠ¬ì ìŒë¶ê° ìëìŽìŒíë¯ë¡ ìëª íìžì ì ê³µíŽìŒíë pdf.js ê°ë°ìì ê°ë°ì ë¶ëŽì ì ê±°í©ëë€.
ìëª ì ì í íìíì§ ììŒë©Ž pdf.jsì ì¬ì© ì¬ë¡ê° ì íë©ëë€.
ìë²ì íŽëŒìŽìžíž ê°ì ì íšì± ê²ì¬ë êŽì°®ìµëë€. ìëª ì ì íšíê³ ê²ìŠ ë ê²ìŒë¡ íìíë íë귞륌 ë žì¶íë ê²ì í걎ì ëë€.
ìë²ì íŽëŒìŽìžíž ê°ì ì íšì± ê²ì¬ë êŽì°®ìµëë€. ìëª ì ì íšíê³ ê²ìŠ ë ê²ìŒë¡ íìíë íë귞륌 ë žì¶íë ê²ì í걎ì ëë€.
ê²ìŠ ë ìëª
ì ì²ëŠ¬íê³ ìì§ë§ pdf.js륌 ì¬ì©íì¬ íŽëŒìŽìžíž ëžëŒì°ì ì íŽí¹ììŽ íì í ì ììµëë€.
ê·žë ë€ë©Ž íŽëŒìŽìžíž ëžëŒì°ì ìì PDF륌 ë ëë§íë ë€ë¥ž ìµì
ìŽ íìž ë ìëª
ì ìê°ì ííì ë ëë§íëë¡ ì ì íìê² ìµëê¹?
ë°°í¬íêž° ì ì PDFjs륌 íšì¹íì¬ íìí ëìì í ì ììµëê¹?
ìŽê²ìŽ ì ê° "íŽí¹"ì ì믞íë ê²ìŽê³ ìŽê²ìŽ ë°ë¡ ì°ëŠ¬ê° íì¬íŽìŒíë ìŒì ëë€ :-(
ì ì°ëŠ¬ê° ì¬ì í 묞ì ì첎ì ëíŽ ì§ë¬žíê³ ìëì§ ëªšë¥Žê² ìµëë€. "íµ"ìŽ ì ìê² íšê³Œê° ììê³ ì¬ì í íìí©ëë€.
ëŽ ì¬ì© ì¬ë¡ììë ìëª
ì ì íšì±ì ìë¬žìŽ ììµëë€. ê·žë¬ë ëë ê·žê²ë€ì íìíê±°ë ì ìŽë ìºë²ì€ì ë¹ ë¶ë¶ ëì ì "묎ìžê°"ê° ììì ì¬ì©ììê² ìë €ìŒí©ëë€.
APIì íìžëì§ ìì ìëª
ì ëí í° ë¹šê°ì ê²œê³ ëšëœìŽ í¬íšëìŽ ìëì§, ëë íìž ë ì ìë€ê³ í©ë²ì ìŒë¡ ë§íëë¡ ê°ìíë 겜ì°, ëë ëŽ ìíì ì²íŽ ìë€ê³ ê²œê³ íë 겜ì°ìë ìêŽ ììµëë€.
... ìëª
ë§ íìíë©Žë©ëë€.
ìµìí 묞ìììë ìëª ì ìì¹ì í¬êž°ë¥Œ ìê³ ì¶ìµëë€. "ìë íìžì, ì¬ì©ì, ê±°êž°ì ìëª ìŽ ììŽìŒí©ëë€"ëŒê³ ì í íì ìì륌 ê·ž ì늬ì íì í ì ììµëë€. ê·žë€ì.
íì¬ ì¬ì©ìë 묞ìê°ìŽ ì§ì ìì ìëª
ëìëì§ ì ì ììµëë€.
ê·žê²ì ë ëì í
íŒë§ ë°©ë²ìŽ ìëëê¹?
묞ìì 몚ë ëì§íž ìëª ì í¬ëª í íì í í늿 ììë¡ íì í ììë ë¶ìžìŽ ìë€ë©Ž 충ë¶í ë§ì¡± ì€ë¬ìž ê²ìŽê³ ê·ž êž°ë¥ì ì€ëŠ¬ / 볎ì 묞ì 륌 ìŒìŒí€ì§ ìì ê²ì ëë€.
(ì ë ëíìŽ ì€ë ëììë§ 100 ê°ê° ëë ëêžë¡ 2012 ë ìŽíë¡ ë¬žì ê° ë³Žë¥ ì€ìŽëŒê³ ë§íê³ ì¶ìµëë€.ìŽ êž°ë¥ì êž°ë€ëŠ¬ë ì ìŒí ì¬ëìŽ ìëëŒê³ ìê°í©ëë€)
íì ììë ë ëë§ ì€ë¥ì²ëŒ 볎ìŽë©° ì ê³µë ì§ì í«ëŒìžì 곌ë¶íê° ê±žëŠŽ ê°ë¥ì±ìŽ ëìµëë€. :-)
íì¬ë ì ìëíì§ë§ ë§€ì° ì¶í ìì
íŽí¹ìŽ ììµëë€.
못 ì게ì§? ê·žë¬ë ê·žê²ì ìëíê³ ìë² ëë ìëª ì ì ë ëë§í©ëë€.
íì ììë ë ëë§ ì€ë¥ì²ëŒ 볎ìŽë©° ì ê³µë ì§ì í«ëŒìžì 곌ë¶íê° ê±žëŠŽ ê°ë¥ì±ìŽ ëìµëë€. :-)
ì, ì, ì, ì¹ì°¬ í ììë 몚ë í í늿 / ìŽë¯žì§ / ë©ìì§ë¥Œ ì믞íìµëë€. * pdfìë íìží ììë ëì§íž ìëª ìŽ í¬íšëìŽ ììŒë¯ë¡ íìëì§ ìììµëë€. ë©ìì§ê° ì€ëª íë ê²œì° ì¬ì©ìê° ìŽíŽí ììë 몚ë ê².
- ížëì€ íìŒ ë ë²ì ìì 묞ì ì ì€ì íšì¹í©ëë€.
ëë íì¬ ëŽ node_modulesì pdfjs-distê° ì€ì¹ë Angular CLI륌 ì¬ì©íê³ ìì§ë§ ëª ê°ì§ ê²ì묌ì ìì±íë ì룚ì ìŽ ëŽ ìªœìì ìëíì§ ììê³ ìŽê²ë ë§ì°¬ê°ì§ì ëë€.
ìë íìžì, 첫 ë²ì§ž ìëìì ê±°ì ì±ê³µí ê² ê°ìµëë€ # 1076 (ìœë©íž) 륌 ì¬ì©íŽ
ëŽê° ëê°ë¥Œ ë쳀거ë ëŽ ìŒìŽì€ê° íŽë¹ ìì ì ë묎 구첎ì ì ëê¹?
ìŽ ì€ë ëì ì€ëª
ì ë°ëìµëë€.
https://github.com/mozilla/pdf.js/issues/4743#issuecomment -163953288
Ʞ볞ì ìŒë¡ìŽ ë¶ë¶ì ë³ê²œíìµëë€.
// 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');
}
ì 첎 'if'륌 ì ê±° í ì ìë€ë ê²ì ìê³ ìì§ë§ ê°ë¥í ê°ì¥ ìì íšì¹ë¥Œ ìíìµëë€.
Yikes. ê·žê²ì ì€ì ë¡ ëŽ ížìì ìëíì§ ìì ìì ì
ëë€.
ëŽ ì±ì ìŒë¶ë¥Œ íìíë pdfë¡ ëì ê°ë©Ž ë€ì ìëíê² ìµëë€.
ìì§ ëŽ ìì ì íší€ì§ë¥Œ ë§ë€ì§ ììì§ë§ node_modules / pdfjs-distìì ì§ì íìŒì ë³ê²œíŽë ë§ì§ë§ìŒë¡ ìëíì ë ì묎ê²ë ë³ê²œëì§ ìììµëë€.
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'); }
ì 첎 'if'륌 ì ê±° í ì ìë€ë ê²ì ìê³ ìì§ë§ ê°ë¥í ê°ì¥ ìì íšì¹ë¥Œ ìíìµëë€.
ê·žë° ë€ì 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륌 íšì¹íì¬ ì€ëª
ë ì룚ì
ì 구ííìµëë€
ê·žë° ë€ì pdf.worker.js
ë° pdf.worker.min.js
íšì¹ ë ë²ì ì ì¬ì©íì¬ ë¹ê³µê° pdfjs-dist
íší€ì§ë¥Œ ëŽë¶ npm-repositoryë¡ ížìíìµëë€.
ë§ì§ë§ìŒë¡ ì°ëŠ¬ë ê³µì pdfjs-dist
íší€ì§ ëì ìŽ íšì¹ ë²ì ì íë¡ëì
ìœëì ì¬ì©íìµëë€.
ìŽê²ìŽ ì°ëŠ¬ì ì ê·Œ ë°©ììŽ ì¢ ë ëª í íŽì§êž°ë¥Œ ë°ëëë€.
@PSpSynedra ëëší ê°ì¬í©ëë€. ê·žê²ì ëìê²ë íšê³Œì ìŽììµëë€.
ëª ì£Œ ë§ì ì²ììŒë¡ìŽ ìì
ì ìííì§ë§ ì¬ì í ëŽ ížìì ìëíì§ ììµëë€.
ëë ë¹ë¶ê° ê°ìž íší€ì§ë¥Œ ë§ë€ì§ ìììµëë€. ë€ì ë¹ëíì§ ìë í node_modulespdfjs-distì íìŒì ì§ì ìì íë©Ž ìë íìŽìŒí©ëë€ (ë¡ì»¬ìì ìì ë pdf.js륌 ì€ì ë¡ ê°ì žììŒí©ëë€. ìì° ëë íší€ì§).
íŽëìì "Sig"륌 ê²ìíë©Ž 4 ê°ì§ íìŒ ê²°ê³Œê° ì ê³µë©ëë€.
ììì ìžêžíë¯ìŽ ìëª
íë륌 ì§ì°ê³ ìŽë¥Œ ìšêž°ëë¡ íë귞륌 ì€ì í "if"ì ëŽì©ì ì ê±°íêž° ìíŽìŽ 4 ê°ì§ í목ì 몚ë ížì§íìµëë€.
ë€ë¥ž ìŒìŽ ë°ìíì§ ìììµëë€. getAnnotations ()ë ë¹ ë°°ìŽì ë°ííê³ êž°ì¡Ž ìëª
ì ì¬ì í ââíìëì§ ììµëë€.
ëí ìœìììë ì€ë¥ë ê²œê³ ê° ìëìŽ ë©ìì§ê° íìë©ëë€ (pdf.worker.js : 2965 : 14).
ê²œê³ : 구íëì§ ìì ìì ¯ íë ì í "Sig", Ʞ볞 íë ì íìŒë¡ ë첎ë©ëë€.
ìœë륌 볎멎 annotation.jsê° "base"WidgetAnnotationìŒë¡ ëííë€ë ì믞ì ëë€. ìŠ, ë©ìì§ê° 묞ì ê°ëì§ ìê³ ëŽê° ì ê±°í íëê·ž ë§ ììì ì믞í©ëë€.
ëŽê° ëê°ë¥Œ ëì¹ê³ ììµëê¹? min.js íìŒê³Œ ë¹ë íŽëììë js íìŒì ížì§ íìŒë¯ë¡ 몚ë ê²ìŽ ìë íìŽìŒí©ëë€.
@ ll-privaì @PSpSynedra ë ì íí 묎ìì
@Epsiom ìŽê²ìŽ ì ê° ë°©êž í ìŒìŽë©° ìœ 5 ë¶ ë§ì ì ìê² íšê³Œì ìŽììµëë€ : https://github.com/mozilla/pdf.js/issues/1076#issuecomment -446959325
this.setFlags(AnnotationFlag.HIDDEN);
륌 죌ì ì²ëŠ¬íê³ data.fieldValue=null
륌 ì¶ê°íŽìŒí©ëë€. ëŽê° ìì í ì ìŒí íìŒì pdf.worker.js
ìŽë©°,ìŽ ê²œì°ìë pdfjs-dist ëŒìŽëžë¬ëŠ¬ìì ê°ì ž ììŒë¯ë¡ ìŽë¯ž ì¶ìëììµëë€.
@Epsiom ë° ì¬êž°ì ëë ììë êž°í.
ëë ê°ì 묞ì ê° ììê³ pdf ìì
ì íìŒì ê²°ê³Œê° ìììµëë€.
ì 겜ì°ìë https://github.com/VadimDez/ng2-pdf-viewer 륌 ì¬ì©íì¬ ê°ë ì±ì pdf륌 íìí©ëë€. ìŽ ëªšëì ë¡ì»¬ íìŒìŽ ìë cloudflareìì pdf ìì ì륌 ì§ì ë¡ëíìµëë€. ë°ëŒì ì¹ ì±ìŽ ì€ì ë¡ ìì ë pdf.worker.js íìŒì ì¬ì©íê³ ìëì§ íìžíììì€. ìœììì 구íëì§ ìì ìì ¯ íë ì í "Sig"ê²œê³ ë¥Œ íŽëŠíì¬ íìžíê³ ë§ì°ì€ë¥Œ íìŒ ìŽëŠìŒë¡ ìŽëí ì ììµëë€.
@konum ê²œê³ ë " http : // localhost : 4200 / assets / vendor / pdf.worker.js"ìì ìì§ë§ ìŽì ì ë§íëë¡ìŽ íìŒì ë ì€ì ìŽë¯ž 죌ì ì²ëŠ¬íìµëë€.
if (data.fieldType === 'Sig') {
//this.setFlags(AnnotationFlag.HIDDEN);
//data.fieldValue = null;
}
ì¬ì í ëì§íž ìëª ìŽ ë³ŽìŽì§ ììµëë€ ...
@Epsiomë ë륌 ìíŽ ìŒíì§ ìììµëë€. ìì§ ì¡°ì¬ ì€ì ëë€.
@Epsiom êŽëŠ¬íì¬ ë³Œ ìëª
ì ê°ì žìµëë€. pdf.worker.jsìì 18480 íì ì¶ê°íììì€.
case "Sig":
return new SquareAnnotation (parameters);
ìŽ ì ë°ë¡ ìììë ì€ìì¹ì
ëë€.
(0, _util.warn) ( 'Unimplemented widget field type "'+ fieldType + '",'+ "falling back to base field type.");
@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 ìµì ë²ì ì pdf.js륌 ì¬ì©íê³ ììµëê¹? pdf.worker.jsìë SquareAnnotation íŽëì€ê° ì ìëìŽ ììŽìŒí©ëë€.
@Epsiom ì ëª
íííêž° ìíŽ this.setFlags(AnnotationFlag.HIDDEN);
ë§ ì£Œì ì²ëŠ¬íŽìŒí©ëë€. data.fieldValue = null;
ìŽ ììŒë©Ž ì¶ê°íŽìŒíì§ë§ 죌ìì ë¬ë©Ž ìë©ëë€.
ëí pdfjs-dist íší€ì§ë¥Œ ì¬ì©íê³ ììŒë¯ë¡ ìŽì ì견ì ë°ëŒ ì§ì ìì íìµëë€. ìì ì€ìž ìœëê° ì€ì ë¡ ì€íëê³ ìë€ê³ íì í©ëê¹? node_modulesììë ê²œì° ë¹ëì ë°ëŒ ìŽë¬í ìì° ì€ ìŒë¶ê° ìºì ë ì ììŒë©° ì€ì ë¡ ìì ë ìœë륌 ì¬ì©íì§ ìì ì ììµëë€.
@kjhangiani ì¶ê° ë console.logê° ìœìì íìëë ê²ì ë¶ëª
í êž°ìµíë¯ë¡ ëª
ííê² ì€íë©ëë€.
ìŽ ìì
ìŒë¡ ëìì¬ ë 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.
ë©ìì§.
ë€ë¥ž ìê°ì ìëì?
@Epsiom êŽëŠ¬íì¬ ë³Œ ìëª ì ê°ì žìµëë€. pdf.worker.jsìì 18480 íì ì¶ê°íììì€.
case "Sig":
return new SquareAnnotation (parameters);ìŽ ì ë°ë¡ ìììë ì€ìì¹ì ëë€.
(0, _util.warn) ( 'Unimplemented widget field type "'+ fieldType + '",'+ "falling back to base field type.");
ê·žê²ì ë륌 ìíŽ ìŒíê³ , ë¹ì ì ëì í룚륌 구íìµëë€. ê°ì¬í©ëë€.
@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.gitì íìŒì ìêŽëì§ ììµëë€.
ë구ë ì§ Angular 9 íë¡ì ížìì pdf.js륌 ìµì íìŒë¡ ì¬ë°ë¥Žê² ê°ì ž ì€ë ë°©ë²ì ìê³ ììµëê¹?
@Epsiom For Angular 8 ì±) ê°ë 9ìì ìëíŽìŒíë€ê³ ìê°í©ëë€) https://github.com/VadimDez/ng2-pdf-viewer륌 ì¬ì©íê³
ng2-pdf-viewer 묞ììì :
Ʞ볞ì ìŒë¡ ìì
ìë cdnjs.cloudflare.comììë¡ëë©ëë€.
ìœëìì ìì
ìì ëí ì
ë°ìŽíž ê²œë¡ (ì : /pdf.worker.js)
(몚ë ì°œ) .pdfWorkerSrc = '/pdf.worker.js';
ìŽê²ì pdf-viewer 컎í¬ëížê° ë ëë§ëêž° ì ì ì€ì ëìŽìŒí©ëë€.
ìŽ íë¡ì ížë¥Œ ì¬ì©íë©Ž íë¡ì ížì pdfjs-dist ì¢ ìì±ìŽ ì¶ê°ë©ëë€. squareAnnotation íìŒë¡ node_modules / pdfjs-dist / build / pdf.worker.js륌 ížì§íììì€.
@konum ì ë ì¬êž°ìì ìê°ì ì»ìŽ ì¬ë¬ ê°ì§ ìŽì ë¡ ng2-pdf-viewerê° ìë pdf.js륌 ì§ì ì¬ì©íê³ ììµëë€ : 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ë Angularìì ê±°ì ì¬ì©ëì§ ììµëë€. , ê·žë ê²íë 곌ì ì ìžë»ë³Žêž°ìë ë¶ëª íì§ ììµëë€.
ìë íìžì,
this.setFlags (AnnotationFlag.HIDDEN); 죌ì ë¬êž° v2.6.347ì pdf.worker.jsìì ìëª ìŽë¯žì§ê° íìëì§ ììµëë€.
ë³íê° ììëì?
@lainosantos ì, ë³ê²œ ì¬íìŽ ììµëë€. ìì ë ëë§ì ë¹íì±ííë©Ž ìëª ìŽ ë€ì íìë©ëë€.
@stephanrauh ê°ì¬í©ëë€.
PDFViewerApplicationOptions.set('renderInteractiveForms', false);
ììì íì±ííê³ ìëª ì íìíë ë°©ë²ìŽ ììµëê¹?
@lainosantos ìëì,íì§ë§ ìì ë§ì ììì ë§ëë ë°©ë²ì ëí ë©ì§ renderInteractiveForms
ê° íëœëìë€ê³ ê°ì í©ëë€. Angular륌 ì¬ì©íì§ë§ ë€ë¥ž íë ì ìí¬ë¥Œ ì¬ì©íëëŒë ììŽëìŽë¥Œ ì¶ì¶ í ì ìë€ê³ ìê°í©ëë€. https://medium.com/factory-mind/angular-pdf-forms-fa72b15c3fbd
íì¬ ë ꞎêží 묞ì ê°ììŽ ìì ì ìê°ì í ì í ìë ìì§ë§ Angular 9ìì ìµì pdf.js ë²ì ì ê°ì ž ì€ë ì¬ëìŽ ìë€ë©Ž ê¹ìŽ ê°ì¬ í ê²ì ëë€.
@Epsiom ì¬êž° ììµëë€ : https://www.npmjs.com/package/ngx-extended-pdf-viewer :)
@stephanrauh ... ì, IE11곌 ížíëìŽìŒíê³ ìºë²ì€ë¥Œ ì§ì ì¬ì©íì¬ ë§ì¶€í pdf ë·°ìŽë¥Œ ì¬ì©íŽìŒíë€ë ì ì ì ìžíë©Ž ì¬íê²ë ì¬ì©í ì ììµëë€.
ëë ng2-pdf-viewer륌 ì¬ì©í ì ìê±°ë ìŽë€ ì¢
ë¥ì ê²ë ì¬ì©í ì ììµëë€. pdf.js ì첎ì ëíŽ ì ë§ë¡ 묻ìµëë€. ìŽê²ì ì ë§ íì ìì¥ì
ëë€.
ê°ì¥ ì ì©í ëêž
ìì 몚ë ì¬ëë€ìê² ì¬êž°ì ëêžì ì¶ê°íë ëì GitHubì ìë¡ìŽ +1 ë°ì ë²íŒì ì¬ì©íìêž° ë°ëëë€.