Pdf.js: pdf.js๋ฅผ ์ž‘๋™์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•?

์— ๋งŒ๋“  2013๋…„ 07์›” 24์ผ  ยท  29์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: mozilla/pdf.js

์นœ์• ํ•˜๋Š” ์—ฌ๋Ÿฌ๋ถ„,

๋‚˜๋Š” ์˜ค๋Š˜ ์•„์นจ์— pdf.js์— ๋Œ€ํ•ด ์•Œ๊ณ  ์žˆ์—ˆ๊ณ  ๋ฏฟ์„ ์ˆ˜ ์—†์„ ์ •๋„๋กœ ํ›Œ๋ฅญํ–ˆ์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ Pdf์˜ ๋ฏธ๋ž˜ ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฐ๋ชจ๋ฅผ ๋ณต์ œํ•˜๊ณ  ์‹ถ์—ˆ ๊ธฐ ๋•Œ๋ฌธ์— viewer.js์—์„œ ์†Œ์Šค ํŽ˜์ด์ง€ ๋งŒ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค.

๋จผ์ € ์ด๋ฏธ์ง€์™€ ์š”์†Œ๋ฅผ ์ˆ˜๋™์œผ๋กœ ๋‹ค์šด๋กœ๋“œํ–ˆ์ง€๋งŒ ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ zip์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์›น ๋ฐ src ํด๋”๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ–ˆ์ง€๋งŒ ์—…๋กœ๋“œ ํ•  ๋•Œ๋งˆ๋‹ค ๋‹ค๋ฅธ ์ข…๋ฅ˜์˜ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์–ด๋””์—๋„ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

์ตœ์ข… ์†”๋ฃจ์…˜์€ WinHTTrack์„ ์‚ฌ์šฉํ•˜์—ฌ locale.properties๋ฅผ ํฌํ•จํ•˜์—ฌ ๋ฐ๋ชจ ํŽ˜์ด์ง€์™€ ๊ด€๋ จ๋œ ๋ชจ๋“  ํ•ญ๋ชฉ์„ ๋‹ค์šด๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ด ์—ˆ๋Š”๋ฐ, ์ด์ œ "InvalidPDFException"์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๊ฐ„๋‹จํ•œ ๋ฐ๋ชจ๋ฅผ ๊ฐœ๋ฐœ ํ•œ ํ•œ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์„œ๋ฒ„์— ์—…๋กœ๋“œํ–ˆ๋Š”๋ฐ ๋งค๋ ฅ์ฒ˜๋Ÿผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์œ ์ผํ•œ ๋ฌธ์ œ๋Š” ํ”„๋ฆฌ ๋กœ๋”๊ฐ€์—†๋Š” ์ด์ „ ๋ฒ„์ „์ด๊ณ  ์ƒˆ ๋ฒ„์ „๊ณผ ๊ฐ™์€ ๋””์ž์ธ์ด ์ „ํ˜€ ์—†๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค!

http://www.worldwidewhat.net/2011/08/render-pdf-files-with-html5/

์–ด๋–ค ๋„์›€์ด๋ผ๋„ ์ •๋ง ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  29 ๋Œ“๊ธ€

๋ฒ„๊ทธ๋ฅผ ์‹ ๊ณ ํ•˜๋Š” ๊ณณ์ž…๋‹ˆ๋‹ค. ์ง€์› ํฌ๋Ÿผ์ด ์•„๋‹™๋‹ˆ๋‹ค.
์ฒซ ํŽ˜์ด์ง€์˜ README๋ฅผ ์ฝ๊ณ  ๋ทฐ์–ด์™€ ์˜ˆ์ œ๋ฅผ๋ณด์‹ญ์‹œ์˜ค.
http://mozilla.github.io/pdf.js/web/viewer.html
http://jsbin.com/pdfjs-helloworld-v2/edit#html , ๋ผ์ด๋ธŒ
http://jsbin.com/pdfjs-prevnext-v2/edit#html , ๋ผ์ด๋ธŒ

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค benbro,
๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ๋ชฐ๋ž๋‹ค. ๋‚˜๋Š” ๋ชจ๋“  ์ง€์› ๋ฌธ์„œ๋ฅผ ์•„๋ฌด ์†Œ์šฉ์ด์—†๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์•˜๋‹ค.

๊ทธ๋Ÿฌํ•œ ์ง€์›์„ ์ œ๊ณต ํ•  ์ˆ˜์žˆ๋Š” ์›น ์‚ฌ์ดํŠธ๋ฅผ ์ œ์•ˆ ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?
๋ฏธ๋ฆฌ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

๊ท€ํ•˜๊ฐ€ ์ฐพ๊ณ ์žˆ๋Š” ๋ชจ๋“  ์ •๋ณด๋Š” ์ฒซ ํŽ˜์ด์ง€์˜ README์— ์žˆ์Šต๋‹ˆ๋‹ค.
https://github.com/mozilla/pdf.js/blob/master/README.md
์งˆ๋ฌธ ์„น์…˜ ์•„๋ž˜๋ฅผ๋ณด์‹ญ์‹œ์˜ค.

@AliND @benbro ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์˜ˆ์ œ๋Š” ํŠธ๋ฆญ์„ ์ˆ˜ํ–‰ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ „์ฒด zip์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ฑฐ๋‚˜ ์ €์žฅ์†Œ๋ฅผ ๋ณต์ œํ•˜๋Š” ๊ฒƒ์ด ์‹ค์ œ๋กœ ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค. ์ €์žฅ์†Œ๋ฅผ ๋ณต์ œํ•˜๊ณ  ๋กœ์ปฌ XAMPP ์ธ์Šคํ„ด์Šค์—์„œ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์‹ค์ œ ๋ทฐ์–ด๋Š” web/viewer.html ํŒŒ์ผ์— ์žˆ์œผ๋ฏ€๋กœ ๋ฃจํŠธ ํด๋”๋ฅผ ๋ฐฉ๋ฌธํ•˜๋ฉด ํด๋” ๋ชฉ๋ก ๋งŒ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์›น ์„œ๋ฒ„ ๋˜๋Š” ๋กœ์ปฌ XAMPP / WAMP ์ธ์Šคํ„ด์Šค์—์„œ ์ž‘๋™ ์‹œํ‚ค๋ ค๊ณ ํ•ฉ๋‹ˆ๊นŒ? ์˜ค๋ฅ˜๊ฐ€ ๊ณ„์† ๋ฐœ์ƒํ•˜๋ฉด ์ถ”๊ฐ€ ์ •๋ณด (์ฝ˜์†” ๋ฐ OS / ๋ธŒ๋ผ์šฐ์ €์˜ ์ •ํ™•ํ•œ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€ / ๊ฒฝ๊ณ )๋ฅผ ๊ฒŒ์‹œํ•˜์‹ญ์‹œ์˜ค. ์›น ์„œ๋ฒ„์— ์—…๋กœ๋“œํ•˜๋Š” ๊ฒฝ์šฐ ๋ทฐ์–ด์— ๋Œ€ํ•œ ๋งํฌ๋ฅผ ํ†ตํ•ด ๋ฌธ์ œ๋ฅผ ์ถ”์  ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ •๋ง๋กœ ์Šค์Šค๋กœ ์•Œ์•„๋‚ผ ์ˆ˜์—†๋Š” ๊ฒƒ ๊ฐ™์œผ๋ฉด ๊ธฐ๊บผ์ด ๋„์™€ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. :)

@timvandermeij ๋จผ์ € ๋‹น์‹ ์˜ ์นœ์ ˆํ•œ ๋‹ต๋ณ€์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋˜ํ•œ @benbro์—๊ฒŒ ๋งค์šฐ ๊ฐ์‚ฌํ•˜์ง€๋งŒ ๋งํฌ๊ฐ€ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์ด๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ๊ฐ™์€ ๋ฌธ์ œ๋ฅผ ๊ฒช๊ณ  ์žˆ์Œ์„ ์•Œ์•˜์Šต๋‹ˆ๋‹ค. ์ผ๋ถ€๋Š” ํ•ด๊ฒฐ๋˜์ง€ ์•Š์•˜๊ณ , ํ•ด๊ฒฐ ๋œ ์‚ฌ๋žŒ๋“ค์€ ๋‹จ๊ณ„๋ฅผ ๋ณด์—ฌ์ฃผ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค! ์ดˆ๋ณด์ž๋ฅผ์œ„ํ•œ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์•„์ฃผ ์ž‘์€ ๊ฐ€์ด๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ๋งค์šฐ ์œ ์šฉ ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

@timvandermeij , ์–ด๋–ค ์ด์œ ๋กœ XAMPP ๋˜๋Š” ๋‹ค๋ฅธ ์„œ๋ฒ„ ์—์ด์ „ํŠธ๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ftp ์‚ฌ์šฉ์ž ์„ธ๋ถ€ ์ •๋ณด๋กœ ์•ก์„ธ์Šค ํ•  ์ˆ˜์žˆ๋Š” ๋ฌด๋ฃŒ ๊ณ„์ •์„ ๋ฐฉ๊ธˆ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.
ํ˜ธ์ŠคํŠธ ์ด๋ฆ„ : pdfjs.eu.pn
FTP ์‚ฌ์šฉ์ž ์ด๋ฆ„ : 1468147_admin
FTP ๋น„๋ฐ€๋ฒˆํ˜ธ : hello123?

๋‚˜๋Š” ์„ธ ๊ฐ€์ง€ ๋‹ค๋ฅธ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์‹œ๋„ํ–ˆ๊ณ  ์„ธ ๊ฐ€์ง€ ๋‹ค๋ฅธ pdf ๊ฒฝ๊ณ ๋ฅผ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.

1- WinHTTrack์œผ๋กœ ๋ชจ๋“  ๊ฒƒ์„ ๋‹ค์šด๋กœ๋“œ ํ•œ ๋‹ค์Œ ์—…๋กœ๋“œํ–ˆ๋Š”๋ฐ์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
http://pdfjs.eu.pn/pdf.js/web/viewer.html
๋˜๋Š” "InvalidPDFException". ๊ทธ๋Ÿฌ๋‚˜ ์™„์ „ํžˆ ์ •ํ™•ํ•˜์ง€๋Š” ์•Š์ง€๋งŒ Safari๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋ฒ„๋ฅผ ์„ค์น˜ํ•˜์ง€ ์•Š๊ณ  ์˜คํ”„๋ผ์ธ์œผ๋กœ ์—ด ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด ์ด์ƒํ•ฉ๋‹ˆ๋‹ค.

2-์ด ์˜ค๋ฅ˜ (๊ฒฝ๊ณ  ๋ฉ”์‹œ์ง€ ์—†์Œ)๊ฐ€ ํ‘œ์‹œ๋˜์ง€๋งŒ ํŽ˜์ด์ง€๊ฐ€ ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
http://pdfjs.eu.pn/pdf2.js/web/viewer.html

3- ์ „์ฒด ์••์ถ• ํด๋” (๋ชจ๋“  ํŒŒ์ผ)๋ฅผ ์—…๋กœ๋“œํ•˜๋ฉด ๋‹ค์Œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
[์ด ์ง€์‹œ๋ฌธ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋™์•ˆ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.]
๊ทธ๋Ÿฐ ๋‹ค์Œ ๋””์ž์ธ์ด ์†์‹ค๋˜๊ณ  ์ผ๋ถ€ ๋ฒ„ํŠผ๊ณผ ํ•„๋“œ ๋งŒ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

๋„์™€ ์ฃผ์…”์„œ ์ •๋ง ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
๊ท€ํ•˜์˜ ์ œ์•ˆ์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค-๋งŽ์€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค
AliND

http://pdfjs.eu.pn/pdf.js/build/pdf.js๋ฅผ ๋ณด๋ฉด ์„œ๋ฒ„์— "GET"์ด "GET.html"๋กœ ๋Œ€์ฒด๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค (์•„๋งˆ ๋ฏธ๋Ÿฌ๋ง ํ”„๋กœ๊ทธ๋žจ). ์˜ˆ :

      };

      xhr.open('GET.html', this.url);
      for (var property in this.httpHeaders) {
        var value = this.httpHeaders[property];

A http://mozilla.github.io/pdf.js/build/pdf.js ์—๋Š” ".html"์ด ์—†์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋ฅผ ์œ ํšจํ•˜์ง€ ์•Š์€ ๊ฒƒ์œผ๋กœ ์ข…๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

git์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ๋•์…˜ ์ฝ”๋“œ๋กœ gh-pages brach๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค : git clone -b gh-pages https://github.com/mozilla/pdf.js.git pdfjs-gh-pages

@yurydelendik์— ๋งŽ์€ ๊ฐ์‚ฌ๋ฅผ

๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” php์™€ javascript์˜ ์ดˆ๋ณด์ž์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋‹น์‹ ์˜ ์กฐ์–ธ (GET)์„ ์‹œ๋„ํ–ˆ์œผ๋ฉฐ ์‹ค์ œ๋กœ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ ๋กœ๋”๋Š” ํ‘œ์‹œ๋˜์ง€๋งŒ ๋ฌธ์„œ๋Š” ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ์›น ๋ฐ src ํด๋”๋ฅผ ์ฒ˜์Œ ์—…๋กœ๋“œํ–ˆ์„ ๋•Œ ๋‹ค์Œ ์Šค๋ ˆ๋“œ์˜ ํžŒํŠธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์—…๋กœ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค.
https://github.com/mozilla/pdf.js/issues/2371 (์ด ๊ฒฝ์šฐ ๋‚ด๊ฐ€๋ฐ›์€ ์˜ค๋ฅ˜๋Š” [์ด ์ง€์‹œ๋ฌธ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋™์•ˆ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.])

์œ ๋ฆฌ๋Š” ๋ชจ๋ฅด์ง€๋งŒ ์ดˆ์‹ฌ์ž๋“ค๋„ ๊ฐ™์€ ๋ฌธ์ œ์— ์ง๋ฉด ํ•ด์žˆ๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ๋‚ด ๋ง์€, ๋‹ค์Œ ์˜ˆ์ œ (์•ž์—์„œ ์–ธ๊ธ‰ ํ•œ)์™€ ๊ฐ™์€ ์‰ฌ์šด ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค๊ณ  ๊ตณ๊ฒŒ ๋ฏฟ์Šต๋‹ˆ๋‹ค. ํด๋”๋ฅผ ์—…๋กœ๋“œํ•˜๊ธฐ ๋งŒํ•˜๋ฉด ์ž‘์—…์„ ์ˆ˜ํ–‰ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์ €๋ฅผ ๋น„๋กฏํ•œ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๋งค์šฐ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
http://www.worldwidewhat.net/2011/08/render-pdf-files-with-html5/

๋‚˜๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์˜ ์‚ฌ์—…์— ๋‚ด ์†Œ์Œ์„ ํผ๋œจ๋ฆฌ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๊ณ  ์‹ถ์ง€ ์•Š์ง€๋งŒ, ๊ธฐ๋ณธ Pdf.js ํŽ˜์ด์ง€์—์„œ ์ดˆ๋ณด์ž๋ฅผ์œ„ํ•œ ์•„์ฃผ ์งง์€ ํŠœํ† ๋ฆฌ์–ผ์„ ์ œ๊ณตํ•˜๋ฉด ๋งค์šฐ ์œ ์šฉ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ œ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ ๋˜๋“  ์•ˆ๋˜๋“  ๋‹น์‹ ์˜ ์นœ์ ˆํ•œ ๋„์›€์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
๋ชจ๋‘ ์ตœ๊ณ  //
AliND

์ดˆ๋ณด์ž์—๊ฒŒ๋Š” ๋งŽ์€ ์ผ์ด ์ž˜๋ชป ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๋ณด์ž์—๊ฒŒ ๊ฐ€์žฅ ๋จผ์ € ์ถ”์ฒœํ•˜๋Š” ๊ฒƒ์€ README ํŒŒ์ผ, FAQ ๋ฐ ๋ฌธ์ œ์— ์ œ๊ณต๋œ ์กฐ์–ธ์„ ๋”ฐ๋ฅด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. node.js๋ฅผ ์„ค์ •ํ•˜๊ณ  git์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ณต์ œํ•˜๊ณ  ๋นŒ๋“œ ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๊นŒ? ์œ„์˜ git ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋‚ด ์กฐ์–ธ์„ ๋”ฐ๋ฅด๋ ค๊ณ  ํ–ˆ์Šต๋‹ˆ๊นŒ?

์‚ฌ์šฉ์ž ์ง€์ • ํ”Œ๋žซํผ์— pdf.js๋ฅผ ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์€์ด ํ”„๋กœ์ ํŠธ์˜ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜์ง€ ๋งŒ ํŠน์ • ํ”Œ๋žซํผ์— ๋Œ€ํ•œ ๊ธฐ์—ฌ์ž / ์ „๋ฌธ๊ฐ€์˜ ์ž์„ธํ•œ ๋‹จ๊ณ„๋ณ„ ์ง€์นจ (์œ„ํ‚ค ํŽ˜์ด์ง€ ํ˜•์‹)์„ ๊ธฐ๊บผ์ด ๋ฐ›์•„ ๋“ค์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ๋ญ”๊ฐ€ ๋น ์กŒ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ณ  ์ผ๋ฐ˜์ ์ธ ๊ฒฝ์šฐ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๊ณ  ์žˆ๋‹ค๋ฉด ์œ„ํ‚ค ํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“œ์‹ญ์‹œ์˜ค.

@AliND ์ผ๋ถ€ ํŒŒ์ผ์ด ๋ˆ„๋ฝ ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. http://pdfjs.eu.pn/pdf.js/web/viewer.html ์˜ ๋ทฐ์–ด๋Š” ๋‚˜์—๊ฒŒ ๊ดœ์ฐฎ์•„ ๋ณด์ด์ง€๋งŒ ์ฝ˜์†”์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ฃผ์žฅํ•ฉ๋‹ˆ๋‹ค.

 "๋„คํŠธ์›Œํฌ ์˜ค๋ฅ˜ : 404 ์ฐพ์„ ์ˆ˜ ์—†์Œ-http://pdfjs.eu.pn/pdf.js/build/compressed.tracemonkey-pldi-09.pdf"

์ฆ‰, ํ•ด๋‹น ์œ„์น˜์— PDF ํŒŒ์ผ์ด ์—†์Šต๋‹ˆ๋‹ค. ๊ฑฐ๊ธฐ์—๋‘๋ฉด ๊ดœ์ฐฎ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‹ค์Œ ํŒŒ์ผ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋‘ ๋ฒˆ์งธ ๋งํฌ๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

 "๋„คํŠธ์›Œํฌ ์˜ค๋ฅ˜ : 404 ์ฐพ์„ ์ˆ˜ ์—†์Œ-http://pdfjs.eu.pn/pdf2.js/external/webL10n/l10n.js"
 l10n.js
 "๋„คํŠธ์›Œํฌ ์˜ค๋ฅ˜ : 404 ์ฐพ์„ ์ˆ˜ ์—†์Œ-http://pdfjs.eu.pn/pdf2.js/external/jpgjs/jpg.js"
 jpg.js
 "๋„คํŠธ์›Œํฌ ์˜ค๋ฅ˜ : 404 ์ฐพ์„ ์ˆ˜ ์—†์Œ-http://pdfjs.eu.pn/pdf2.js/external/webL10n/l10n.js"
 l10n.js
 "๋„คํŠธ์›Œํฌ ์˜ค๋ฅ˜ : 404 ์ฐพ์„ ์ˆ˜ ์—†์Œ-http://pdfjs.eu.pn/pdf2.js/external/jpgjs/jpg.js"

์–ธ๊ธ‰ ๋œ ํŒŒ์ผ์ด ํ•ด๋‹น ๊ฒฝ๋กœ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ๋‚ด๊ฐ€ ๋งํ•  ์ˆ˜์žˆ๋Š” ๊ฒƒ์€ ๊ทธ๋ ‡๊ฒŒํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ํŒ : ์œ„์—์„œ ์–ธ๊ธ‰ ํ•œ ์˜ค๋ฅ˜๋ฅผ ๋ณด๋ ค๋ฉด Firefox ์ฝ˜์†” ( CTRL + Shift + K )์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. ๋ฌธ์ œ๋ฅผ ์ถ”์ ํ•˜๋Š” ๋ฐ ๋„์›€์ด๋ฉ๋‹ˆ๋‹ค.

@AliND http://pdfjs.eu.pn/pdf.js/web/viewer.html ์€ PDF ํŒŒ์ผ์„ ๋นŒ๋“œ ๋””๋ ‰ํ† ๋ฆฌ์— ์ถ”๊ฐ€ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ถ€๋ถ„์ ์œผ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ํ•„์š”ํ•˜๋‹ค๋Š” ์‚ฌ์‹ค์€ ๋นŒ๋“œ ํ”„๋กœ์„ธ์Šค ์ค‘์— ์ด์ƒํ•œ ์ผ์ด ๋ฐœ์ƒํ–ˆ์Œ์„ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ข€ ๋” ์ž์„ธํžˆ ์‚ดํŽด๋ณด๊ณ  ๋” ๋‚˜์€ ํ”ผ๋“œ๋ฐฑ์„ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

@AliND ์—ฌ๊ธฐ ์žˆ์Šต๋‹ˆ๋‹ค : http://pdfjs.eu.pn/pdf3.js/web/viewer.html

๋‚ด๊ฐ€ ํ•œ ๊ฒƒ:

  1. https://github.com/mozilla/pdf.js/archive/master.zip์„ ๋‹ค์šด๋กœ๋“œ
  2. ๊ทธ๊ฒƒ์„ ์ถ”์ถœํ•˜์‹ญ์‹œ์˜ค.
  3. ์ „์ฒด ํด๋”๋ฅผ FTP ๊ณ„์ •์˜ pdf3.js ํด๋”์— ์—…๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค (2 ๊ฐœ์˜ ํฐ ํ…Œ์ŠคํŠธ PDF ํŒŒ์ผ์€ ํ•„์š”ํ•˜์ง€ ์•Š๊ณ  ๋ฌด๋ฃŒ FTP ์„œ๋ฒ„์—์„œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ƒ๋žตํ–ˆ์Šต๋‹ˆ๋‹ค).

ํŠน๋ณ„ํ•˜๊ณ  ์ด์ƒํ•ด์„œ ์ €์—๊ฒŒ ํšจ๊ณผ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ๋งํฌ์—๋Š” ํ™•์‹คํžˆ ์ผ๋ถ€ ํด๋”๊ฐ€ ๋ˆ„๋ฝ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ๋งํฌ๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ์ด์œ ์— ๋Œ€ํ•œ ๋‹จ์„œ๊ฐ€ ์—†์ง€๋งŒ PDF.js ๋นŒ๋“œ๊ฐ€ ์™„์ „ํžˆ ์„ฑ๊ณต์ ์ด์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์ž˜ ์ž‘๋™ํ•˜์ง€๋งŒ ์••์ถ•์„ ํ‘ธ๋Š” ๊ฒƒ๋ณด๋‹ค ๋นŒ๋“œํ•˜๋Š” ๊ฒƒ์ด ๋” ๋‚ซ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ์ง€๊ธˆ์€์ด ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทธ๋™์•ˆ ์ €๋Š” PDF.js๋ฅผ ์ง์ ‘ ๋นŒ๋“œํ•˜๊ณ  ์„œ๋ฒ„์—์„œ ํ…Œ์ŠคํŠธ ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๊ทธ ์ผ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๋‹จ๊ณ„๋„ ๊ฒŒ์‹œํ•˜๊ณ  ๋ชจ๋“  ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค :-)

@AliND ๋นŒ๋“œ ๋œ ๋ฒ„์ „๋„ ์ €์—๊ฒŒ https://github.com/mozilla/pdf.js/wiki/Setup-PDF.js-in-a-website-%28Debian-Ubuntu%29#wiki๋กœ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. -Setup_testing_environnement,ํ•˜์ง€๋งŒ ์ข‹์€ ๊ฒฐ๊ณผ๋ฅผ ์–ป์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ์„œ๋ฒ„์—์„œ ์ž‘๋™ํ•˜๋„๋กํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค (๋งํฌ : http://pdfjs.eu.pn/pdf.js-build/web/viewer.html).

  1. ๋‚˜์™€ ๊ฐ™์€ Windows๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์˜ฌ๋ฐ”๋ฅธ ์ค„ ๋์„ ์„ค์ •ํ•˜์‹ญ์‹œ์˜ค : git config --global core.autocrlf input (๋‹ค์Œ ๋‹จ๊ณ„ ์ด์ „์— ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 3 ๋‹จ๊ณ„๊ฐ€ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค!).
  2. git clone https://github.com/timvandermeij/pdf.js.git ์‚ฌ์šฉํ•˜์—ฌ ๋‚ด ํฌํฌ์—์„œ ์ €์žฅ์†Œ๋ฅผ ๋ณต์ œํ•ฉ๋‹ˆ๋‹ค (ํ•˜์ง€๋งŒ ํ•ญ์ƒ ์ตœ์‹  https://github.com/mozilla/pdf.js ์ €์žฅ์†Œ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•จ).
  3. make ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค : node make generic .
  4. ๊ทธ ํ›„ https://github.com/mozilla/pdf.js/wiki/Setup-PDF.js-in-a-website-%28Debian-Ubuntu%29#wiki -Setup_testing_environnement์˜ ๋‚˜๋จธ์ง€ ๋ถ€๋ถ„์„ ๋ฌด์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋‚˜๋ฅผ ์œ„ํ•ด ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์˜ฌ๋ฐ”๋ฅธ ํŒŒ์ผ์„ ๋ณต์‚ฌํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ œ๊ฐ€ ํ•œ ์ผ์€ build/generic ๋‹จ๊ณ„์—์„œ ๋งŒ๋“  build ๋ฐ web ํด๋”๋ฅผ ์›น ์„œ๋ฒ„์— ์—…๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒŒ๋๋‹ค.

์—ฌ๊ธฐ์™€ ์ด์ „ ์˜๊ฒฌ์—์„œ ์ œ๊ณต ํ•œ ๋‹จ๊ณ„์— ๋”ฐ๋ผ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ํ–‰์šด์„ ๋น•๋‹ˆ๋‹ค (ํ…์ŠคํŠธ ๋ฒฝ์— ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค!). :-)

@yurydelendik https://github.com/mozilla/pdf.js/wiki/Setup-PDF.js-in-a-website-%28Debian-Ubuntu%29#wiki -Setup_testing_environnement์—์„œ ์•ฝ๊ฐ„ ํ˜ผ๋ž€์Šค๋Ÿฌ์šด ์„ค๋ช…์„œ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด From build to production ์„น์…˜์—์„œ ๋ช‡ ๊ฐœ์˜ ํŒŒ์ผ์„ ํ”„๋กœ๋•์…˜ ๋””๋ ‰ํ† ๋ฆฌ์— ๋ณต์‚ฌํ•˜์ง€๋งŒ pdf.js ์ž์ฒด๋Š” ๋ณต์‚ฌ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ฝ”์–ด ํŒŒ์ผ์ด ์•„๋‹Œ ๋ทฐ์–ด ํŒŒ์ผ ๋งŒ์žˆ๋Š” ํ”„๋กœ๋•์…˜ ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฑฐ๊ธฐ์— ๋‹จ๊ณ„๊ฐ€ ๋ˆ„๋ฝ ๋œ ๋Š๋‚Œ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ™•์ธํ•ด ์ฃผ ์‹œ๊ฒ ์–ด์š”? ์›ํ•˜๋Š” ๊ฒฝ์šฐ ์œ„์˜ ๋‹จ๊ณ„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์œ„ํ‚ค ํŽ˜์ด์ง€๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹œ์ž‘ํ•˜๋Š” ์‚ฌ๋žŒ์—๊ฒŒ๋Š” ๋” ๋ช…ํ™• ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค (๋˜๋Š” ํ•ต์‹ฌ ํŒŒ์ผ์„ ํฌํ•จํ•˜๊ธฐ ์œ„ํ•ด ๋” ๋งŽ์€ ๋‹จ๊ณ„๋กœ ํ˜„์žฌ ์œ„ํ‚ค ํŽ˜์ด์ง€๋ฅผ ํ™•์žฅํ•ด์•ผ ํ•จ).

@timvandermeij , ๊ทธ๋ž˜์„œ ์šฐ๋ถ„ํˆฌ์— ๋Œ€ํ•œ ์ง€์นจ์„ ๋”ฐ๋ผ Windows์— ์„ค์ • ํ–ˆ์Šต๋‹ˆ๊นŒ? ์˜ˆ, ๊ทธ๋ ‡๊ฒŒํ•˜๋ ค๋ฉด Windows ์šฉ ํŠน์ˆ˜ ํ™˜๊ฒฝ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค (์ดˆ๋ณด์ž๋ฅผ์œ„ํ•œ ์„ค์ •์ด ์‰ฝ์ง€ ์•Š์Œ ์˜ˆ : https://github.com/mozilla/pdf.js/wiki/Setting-up-pdf.js-Development-Environment-for -Windows). ๋„ค, ์œ„ํ‚ค๋Š” ํ˜ผ๋ž€ ์Šค๋Ÿฝ์ง€๋งŒ "ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ"์— ๋Œ€ํ•œ ๊ด€์‹ฌ์€ ์ด๋ฏธ ์ดˆ๋ณด์ž๊ฐ€ ์•„๋‹ˆ๋ผ๋Š” ๊ฒƒ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋„ค, ํ˜ผ๋ž€์Šค๋Ÿฝ๊ณ  ์˜ฌ๋ฐ”๋ฅธ ๋ฐฉ๋ฒ•์„ ์ฐพ์•˜๋‹ค๋ฉด ๋ณ€๊ฒฝํ•˜์‹ญ์‹œ์˜ค (๊ทธ๋Ÿฌ๋‚˜ ์œˆ๋„์šฐ์˜ ๊ฒฝ์šฐ ๋‹ค๋ฅธ ์œ„ํ‚ค ํŽ˜์ด์ง€๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค)

FAQ์— ํ•ญ๋ชฉ ์ถ”๊ฐ€ : https://github.com/mozilla/pdf.js/wiki/Frequently-Asked-Questions#wiki -gh-pages

@yurydelendik ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Arch Linux์—์„œํ–ˆ๋˜ ๊ฒƒ์ฒ˜๋Ÿผ Windows์—์„œ๋„ ๊ฑฐ์˜ ๋˜‘๊ฐ™์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ–ˆ์ง€๋งŒ ์œ„ํ‚ค๋ฅผ ํ™•์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ดํŽด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. :)

@yurydelendik https://github.com/mozilla/pdf.js/wiki/Setup-PDF.js-in-a-website-%28Linux%29 ์˜ Linux ์ง€์นจ ํŽ˜์ด์ง€๋ฅผ ํ™•์žฅํ•˜์—ฌ ๋‚ด๊ฐ€ ๊ฒช์€ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ผ๋ถ€ ํ…์ŠคํŠธ ์˜ค๋ฅ˜๋ฅผ โ€‹โ€‹์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ํŽ˜์ด์ง€๋Š” ์ด์ œ ๋‚˜์—๊ฒŒ ๊ดœ์ฐฎ์•„ ๋ณด์ธ๋‹ค. ์ด๋‚  ํ›„๋ฐ˜์— ๋™์ผํ•œ ์œ ํ˜•์˜ ํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“ค๊ณ  Windows (ํ˜„์žฌ ํ•  ์ผ ํ•ญ๋ชฉ)์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ์ง€์นจ์„ ์ถ”๊ฐ€ํ•˜๋ฉด ์‚ฌ์šฉ์ž ๊ฐ„์˜ ํ˜ผ๋ž€์ด ์ค„์–ด๋“ค๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. :)

ํŽธ์ง‘ : ์—ฌ๊ธฐ์— Windows ๋ฒ„์ „์ด ์žˆ์Šต๋‹ˆ๋‹ค : https://github.com/mozilla/pdf.js/wiki/Setup-PDF.js-in-a-website-%28Windows%29

์œ„ํ‚ค์˜ Linux ๋ฐ Windows ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋งŒ์กฑ ํ•˜์‹œ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์ด์ œ ์ดํ•ดํ•˜๊ธฐ๊ฐ€ ๋” ์‰ฝ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉฐ ์ด์ œ Windows์— ๋Œ€ํ•œ ๋ฌธ์„œ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. :)

@timvandermeij ๊ทธ๋ ‡๊ฒŒ ํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

@timvandermeij : ๋‹น์‹ ์ด ํ•œ ์ผ์€ ํ›Œ๋ฅญํ•ฉ๋‹ˆ๋‹ค. ๋‹น์‹ ์ด ๊ฑฐ๊ธฐ์—์„œ ๋ณด๋‚ธ ๋งค ์ดˆ๋งˆ๋‹ค ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๊ฒƒ์ด ๋‹ค๋ฅธ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ๋„ ์œ ์šฉ ํ•  ๊ฒƒ์ด๋ผ๊ณ  100 % ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค. ํ™•์ธ์ด ์ง„ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค. ๊ณง ๊ฒฐ๊ณผ๋ฅผ ์•Œ๋ ค ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

@yurydelendik :

๋‹ค์‹œ ํ•œ ๋ฒˆ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
AliND

@AliND , @yurydelendik ๋„์™€ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค! ๊ฒฐ๊ณผ๋ฅผ ๋“ฃ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. :-)

์•ˆ๋…•ํ•˜์„ธ์š”.
๋†€๋ž๊ฒŒ๋„ pdf ํŒŒ์ผ์„ ๋นŒ๋“œ ํด๋”์— ์‚ฝ์ž…ํ•˜๊ธฐ ๋งŒํ•˜๋ฉด๋ฉ๋‹ˆ๋‹ค!

ํ•„์š”ํ•œ ์œ ์ผํ•œ ํด๋”๋Š” ์›น์ž…๋‹ˆ๋‹ค! ๋ฐ ๋นŒ๋“œ (๋นŒ๋“œ ํ•  pdf.js ๋ฐ pdf ํŒŒ์ผ ๋งŒ ํฌํ•จ). ๋˜ํ•œ locale ํด๋” (github์—์„œ ๋กœ์ปฌ ์„œ๋ฒ„๋กœ ํŒŒ์ผ์„ ๋ณต์‚ฌํ•˜๋Š” ๊ฒฝ์šฐ locale.properties ํฌํ•จ)๊ฐ€ ์›น ํด๋”์— ํฌํ•จ๋˜์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

์ด ์•„์ฃผ ์‰ฝ๊ฒŒ, ๋˜‘๋ฐ”๋กœ ์ „๋‹ฌ ๋ฐฉ๋ฒ•์˜ ๊ฒฝ์šฐ, ์‹ ์šฉ์€ (๋นŒ๋“œ ํด๋” ์•ˆ์—) pdf ํŒŒ์ผ์„ ๋„ฃ์„ ์œ„์น˜์— ๋Œ€ํ•œ ์•ˆ๋‚ด๋ฅผ @timvandermeijํ•˜๊ณ  GET.html ๋ฌธ์ œ๋ฅผ ํŒŒ์•…ํ•˜๊ธฐ์œ„ํ•œ @yurydelendikํ•˜๊ธฐ์— ๊ฐ„๋‹ค.

http://pdfjs.eu.pn/pdffinal/web/viewer.html

๊ทธ๋Ÿฌ๋‚˜ ์—ฌ์ „ํžˆ ํ•œ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. Firefox, Chrome ๋ฐ Opera์—์„œ ์™„๋ฒฝํ•˜๊ฒŒ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ Explorer ๋ฐ Opera์˜ ๊ฒฝ์šฐ ๋‘ ๊ฐ€์ง€ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
Safari : PDF "sample.pdf"๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์—ฌ์ „ํžˆ ๋กœ๋”๋Š” ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค!
Explorer : ์Šคํƒ€์ผ ๋งŒ ์žˆ์œผ๋ฉด ์•„๋ฌด๊ฒƒ๋„๋กœ๋“œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค!

๋‚ด ๋ง์€, compatibility.js๊ฐ€ ๊ฑฐ๊ธฐ์— ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด์ƒํ•˜๊ฒŒ ๋Š๊ปด์ง€๊ณ  ์ด๋Ÿฌํ•œ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ด๋Ÿฌํ•œ ๋™์ž‘์„ ์œ ๋ฐœํ•  ์ˆ˜์žˆ๋Š” ์›์ธ์ด ๋ฌด์—‡์ธ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ์–ด์จŒ๋“  ๋‹ค๋ฅธ ๋ชจ๋“  ํŒŒ์ผ๊ณผ ํด๋”๋„ ์—…๋กœ๋“œํ–ˆ์ง€๋งŒ ์šด์ด ์—†์—ˆ์Šต๋‹ˆ๋‹ค!.

@timvandermeij : ๊ท€ํ•˜์˜ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๊ณ  ์ด์ „๊ณผ ๊ฐ™์ด ์ „์ฒด ํด๋”๋ฅผ ์—…๋กœ๋“œํ•˜๋ฉด ๋‹ค์Œ ๋งํฌ์—์„œ ๋‹ค์Œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์ถ”์ถœ ๋ฐ ์—…๋กœ๋“œ ๋˜๋Š” ์—…๋กœ๋“œ ๋ฐ ์ถ”์ถœ-> ๋™์ผํ•œ ๋ฌธ์ œ์— ๊ด€๊ณ„์—†์ด ์นœ์ ˆํ•˜๊ฒŒ ์œ ์˜ํ•˜์‹ญ์‹œ์˜ค. ๊ฒŒ๋‹ค๊ฐ€ pdf.js-master.zip๊ณผ mozilla-pdf.js-v0.5.5-1283-gc682c25.zip์€ ๊ฐ™์€ ํŒŒ์ผ์ด๊ธฐ ๋•Œ๋ฌธ์— ์™œ ํ•œ ๋ฒˆ์— ๋‘ ๊ฐœ์ธ ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

์™œ ๊ทธ๋Ÿฐ์ง€ ์ดํ•ด๊ฐ€ ์•ˆ ๋ผ์š”! ์—…๋กœ๋“œ ํ•œ pdf3.js ํด๋”๋„ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ๋‹ค์‹œ ์—…๋กœ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค! ๊ทธ๋ž˜๋„ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค!

๋‚ด ๋ง์€, ๋‚ด๊ฐ€ ์ •๋ง๋กœ ๊ฑฑ์ •ํ•˜๋Š” ๊ฒƒ์€ ๋‹ค๋ฅธ ๋‘ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ์ด์œ ์ž…๋‹ˆ๋‹ค!

์–ด๋–ค ์•„์ด๋””์–ด?

@timvandermeij GIT๋ฅผ ์„ค์น˜ํ•˜๊ณ  ๋‹ค๋ฅธ ์ข…๋ฅ˜์˜ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‚˜๋Š” ์ฐจ๋ผ๋ฆฌ ์ฒซ ๋ฒˆ์งธ ํ•ด๊ฒฐ์ฑ…์— ์ดˆ์ ์„ ๋งž์ถ”๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ๋‘ ๊ฐ€์ง€ ์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต์„ ์ œ๊ณตํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?
1- ์ด์ „ ๊ฒŒ์‹œ๋ฌผ์— ๊ฒŒ์‹œ ํ•œ ๋งํฌ๊ฐ€ IE ๋ฐ Safari์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?
2- ๋งˆ์Šคํ„ฐ ํด๋”๋ฅผ ์—…๋กœ๋“œ ํ•  ๋•Œ ๋‚˜์ค‘์— ์ˆ˜์ • ํ–ˆ์Šต๋‹ˆ๊นŒ?

๋‹ค์‹œ ํ•œ ๋ฒˆ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ท€ํ•˜์˜ ๋„์›€๊ณผ @yurydelendik ์˜ ๋„์›€์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

๋ชจ๋‘ ์ตœ๊ณ ,
AliND

ํŠธ์œ— ๋‹ด์•„ ๊ฐ€๊ธฐ

๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์ž‘๋™์‹œ์ผฐ๋‹ค, Thanks Tim-์ด๋ฒˆ์—๋Š” Safari element inspector๋ฅผ ์‚ฌ์šฉํ–ˆ๊ณ  ์–ด๋–ค ์ด์œ ๋กœ build / sample.pdf ๋Œ€์‹  web / sample.pdf๋กœ ํ–ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Internet Explorer๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค! pdf ํŒŒ์ผ์˜ ๋‚ด๋ถ€ ๋งํฌ๋Š” IE์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์ง€๋งŒ ๋ฌธ์ œ๋Š” ์•„๋‹™๋‹ˆ๋‹ค.

์˜์‹ฌ ํ•  ์—ฌ์ง€์—†์ด ๊ฐ pdf ํŒŒ์ผ์— ๋Œ€ํ•ด ๋ณ„๋„์˜ viewer.js๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์ง€๋งŒ ๋นŒ๋“œ ๋ฐฉ๋ฒ•์ด ์˜ฌ๋ฐ”๋ฅธ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

์ด์ œ http://pdfjs.eu.pn/pdffinal/web/viewer.html ๋กœ ์ด๋™ํ•˜๋ฉด 5 ๊ฐœ์˜ ์–ธ๊ธ‰ ๋œ ๋ชจ๋“  ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. (์ฐธ๊ณ  : ๋•Œ๋กœ๋Š” ๋ธŒ๋ผ์šฐ์ €๊ฐ€์ด ๋ฌด๋ฃŒ ์„œ๋ฒ„์—์„œ ์ผ๋ถ€ ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์—†์ง€๋งŒ ์œ ๋ฃŒ ์„œ๋ฒ„์—์„œ๋Š” ๋ฌธ์ œ์—†์ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค).

๋ฏธ๋ž˜ ์‚ฌ์šฉ์ž๋ฅผ์œ„ํ•œ ์‰ฌ์šด ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
1- http://mozilla.github.io/pdf.js/web/viewer.html์„ ๋ณต์ œํ•ฉ๋‹ˆ๋‹ค (HTTrack์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค).
2- ๋‘ ๊ฐœ์˜ ํด๋”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค : ์›น ๋ฐ ๋นŒ๋“œ (๋‚˜์ค‘์—๋Š” ๊ฐ€์žฅ ์ค‘์š”ํ•œ pdf.js๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค-์ด ๊ฒฝ์šฐ HTTrack,์ด ํŒŒ์ผ์— ๋ชจ๋“  ๋นŒ๋“œ ์ž‘์—… ๊ฒฐํ•ฉ)
2- pdf.js (๋นŒ๋“œ ํด๋”)๋ฅผ ์—ด๊ณ  GET.html์„ GET์œผ๋กœ ๋ณ€๊ฒฝํ•˜์‹ญ์‹œ์˜ค.
3- viewer.js (์›น ํด๋”)๋ฅผ ์—ด๊ณ  pdf ํŒŒ์ผ์˜ ์ด๋ฆ„์„ ์ž์‹ ์˜ ์ด๋ฆ„์œผ๋กœ ๋ณ€๊ฒฝํ•˜์‹ญ์‹œ์˜ค.
4- pdf ํŒŒ์ผ์„ ์›น (Safari ๋ฐ IE) ๋ฐ ๋นŒ๋“œ ํด๋” (๋‹ค๋ฅธ ๋ธŒ๋ผ์šฐ์ €) ๋ชจ๋‘์— ๋„ฃ์Šต๋‹ˆ๋‹ค (์•ฝ๊ฐ„ ๋ณ€๊ฒฝํ•˜๊ณ  ์›น ํด๋”์— pdf.js๋ฅผ ๋„ฃ์€ ๋‹ค์Œ ๋™์ผํ•œ ํŒŒ์ผ์„ ํฌํ•จ ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค). pdf๊ฐ€ ๋‘ ๋ฒˆ์ด์ง€๋งŒ ์ž‘์—…์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!)
5- ์—…๋กœ๋“œ
6- ์ด์ œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค! ์ด ๋ฐฉ๋ฒ•์—๋Š” ๋‚ด๊ฐ€ ์•Œ์ง€ ๋ชปํ•˜๋Š” ๊ฒฐํ•จ์ด์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@timvandermeij ๋งˆ์Šคํ„ฐ ํด๋”๋ฅผ ์—…๋กœ๋“œ ํ•  ๋•Œ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋ฅผ ์ดํ•ดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค!, ๊ท€ํ•˜์˜ ๊ฒฝ์šฐ์—๋Š” ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค!

์–ด์จŒ๋“ , ์—ฌ๋Ÿฌ๋ถ„์˜ ์นœ์ ˆํ•œ ๋„์›€๊ณผ ์ง€์›์— ๊ฐ์‚ฌ ๋“œ๋ฆฌ๋ฉฐ, @yurydelendik & @timvandermeij ์ง€์นจ์— ๋”ฐ๋ผ "์˜ฌ๋ฐ”๋ฅธ ๋ฐฉ๋ฒ•"์ด ๋นŒ๋“œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ €๋Š” ์žฌ๋ฌด ์—ฐ๊ตฌ์›์ด๊ธฐ ๋•Œ๋ฌธ์— ์‹œ๊ฐ„ ๋ฌธ์ œ์— ๋Œ€ํ•ด ๊นŠ์ด ํŒŒ๊ณ ๋“ค ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋‹ค์‹œ ํ•œ๋ฒˆ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
์•Œ๋ฆฌ

@AliND ์ž˜ํ•˜์…จ์Šต๋‹ˆ๋‹ค ! ์‹ค์ œ๋กœ ๋นŒ๋“œ ๋ฐฉ๋ฒ•์ด ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์ด์ง€๋งŒ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•๋„ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ZIP ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์„œ๋ฒ„์—์„œ ์ถ”์ถœํ•˜๋Š” ๊ฒƒ ์™ธ์—๋Š” ์•„๋ฌด๊ฒƒ๋„ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์ˆ˜์ • ์‚ฌํ•ญ์€ ์—†์Šต๋‹ˆ๋‹ค. ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ ํ–ˆ์œผ๋ฏ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์€ ๊ฒƒ์ด ์ด์ƒํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์€ ๋ชฉ์ ์— ๋งž๊ฒŒ ๋ชจ๋“  ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž‘๋™ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์— ๋‹จ๊ณ„๋ฅผ ๋ฐฐ์น˜ ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ ๋œ ์œ„ํ‚ค ํŽ˜์ด์ง€์— ์—ฌ์ „ํžˆ ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ๋ฏธ๋ž˜ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์œ„ํ‚ค ํŽ˜์ด์ง€์— ์„ค๋ช… ๋œ ๋ฐฉ๋ฒ•์€ ํ™•์‹คํžˆ๊ฐ€๋Š” ๋ฐฉ๋ฒ•์ด๋ฉฐ ์ž‘๋™ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด์ง€๋งŒ ์–ด๋–ค ์ด์œ ๋กœ ๋ˆ„๊ตฐ๊ฐ€์—๊ฒŒ ์ž‘๋™ํ•˜์ง€ ์•Š์œผ๋ฉด ๋‹จ๊ณ„๊ฐ€ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

PDF ํŒŒ์ผ์— ๋Œ€ํ•œ ์ž˜๋ชป๋œ ๋งํฌ๊ฐ€ ๋‹ค๋ฅธ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์•„๋‹Œ Safari์™€ IE ๋งŒ ๊นจ๋œจ๋ฆด ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ฌด๋ฃŒ ๊ณ„์ •์— ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋‹น์‹ ์ด ๊ทธ๊ฒƒ์„ ์ž‘๋™ํ•˜๊ณ  ์‹ค์ œ๋กœ ์ตœ์„ ์„ ๋‹คํ•ด ๋‹คํ–‰์ž…๋‹ˆ๋‹ค! :-)

@AliND ๋˜ํ•œ viewer.js ๋ฅผ ์ ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ตœ์„ ์˜ ๋ฐฉ๋ฒ•์ด ์•„๋‹™๋‹ˆ๋‹ค. https://github.com/mozilla/pdf.js/wiki/Setup-PDF.js-in-a-website-%์— ์„ค๋ช… ๋œ๋Œ€๋กœ URL์—์„œ file ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ํŒŒ์ผ์„๋กœ๋“œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 28Linux % 29 # opening -pdf-files-from-your-website. ์ด๋ ‡๊ฒŒํ•˜๋ฉด ํ•˜๋‚˜์˜ viewer.js ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋ฉด์„œ ์›ํ•˜๋Š” ๋ชจ๋“  PDF ํŒŒ์ผ์„ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@timvandermeij ๋‹ค์‹œ ํ•œ๋ฒˆ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค :)

์‚ฌ์‹ค, ๋‹น์‹ ์˜ ๋ฐฉ๋ฒ•์€ ๋ฌด๋ฃŒ ์„œ๋ฒ„์—์„œ ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋ฐฉ๊ธˆ ์‹œ๋„ํ–ˆ์ง€๋งŒ ์ด๋ฒˆ์—๋Š” ์œ ๋ฃŒ ์„œ๋ฒ„์— ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค! ๋ฌธ์ œ๋ฅผ ์กฐ์‚ฌ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์› ํ‹ฐ์ผ“์„ ๋ฐฉ๊ธˆ ์—ด์—ˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ํ–ฅํ›„ ์‚ฌ์šฉ์ž์—๊ฒŒ๋„ ๋นŒ๋“œ ๋ฐฉ๋ฒ•์„ ์ œ์™ธํ•˜๊ณ  @timvandermeij ๊ฐ€ ์ˆ˜ํ–‰ ํ•œ ์ž‘์—…์ด ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋ฉฐ ์ด์ „์— ์–ธ๊ธ‰ ํ•œ ๋ฐฉ๋ฒ•๋ณด๋‹ค ํ›จ์”ฌ ์‰ฝ์Šต๋‹ˆ๋‹ค. ์ฐธ๊ณ ๋กœ :
1- ๋งˆ์Šคํ„ฐ zip ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์••์ถ•์„ ํ’€๊ณ  ์—…๋กœ๋“œํ•˜๊ฑฐ๋‚˜ ์ œ์–ดํŒ์—์„œ ํ—ˆ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์—…๋กœ๋“œ ๋ฐ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค (๋‘ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์ด ํ›จ์”ฌ ๋น ๋ฆ„). ๋ฌผ๋ก  ํ•„์š”ํ•˜์ง€ ์•Š์€ ํŒŒ์ผ ๋ฐ / ๋˜๋Š” ํด๋”๊ฐ€ ์žˆ์ง€๋งŒ ๋ชจ๋“  ๊ฒƒ์„ ์—…๋กœ๋“œํ•˜์‹ญ์‹œ์˜ค. : D.
2- viewer.js (์›น ํด๋”์— ์žˆ์Œ)๋ฅผ ์—ด๊ณ  pdf ํŒŒ์ผ์˜ ์ด๋ฆ„์„ ์ž์‹ ์˜ ์ด๋ฆ„์œผ๋กœ ๋ณ€๊ฒฝํ•˜์‹ญ์‹œ์˜ค. ์ด viewer.js ์—…๋กœ๋“œ (๋‹ค์‹œ ์—…๋กœ๋“œ)
3- pdf ํŒŒ์ผ (2 ๋‹จ๊ณ„์—์„œ ์ง€์ •ํ•œ ์ด๋ฆ„)์„ ์›น ํด๋”์— ์—…๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.
4- ์™„๋ฃŒ (์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ํ˜ธ์ŠคํŠธ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŠธ๋ฅผ ์‹œ๋„ํ•˜๊ณ  ์ง์ ‘ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค).

๋‹ค์‹œ ํ•œ ๋ฒˆ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค Tim :)
๋ชจ๋‘ ์ตœ๊ณ  //
์•Œ๋ฆฌ

์™€, ํŒŒ์ผ ๋ฐฉ๋ฒ•์ด ์ •๋ง ๋„์›€์ด๋ฉ๋‹ˆ๋‹ค! :)

@timvandermeij ๋‹น์‹ ์€ ์› ์Šคํ†ฑ ์™„์ „ํ•œ ์†”๋ฃจ์…˜์„ ์ œ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค :)

๋‹ค์‹œ ํ•œ ๋ฒˆ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
AliND

์•ˆ๋…•ํ•˜์„ธ์š”
๋‚ด ํ”„๋กœ์ ํŠธ์—์„œ pdf ํŽ˜์ด์ง€๋ฅผ iframe์—๋กœ๋“œํ•ด์•ผํ•˜๋ฏ€๋กœ file_get_contents php ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ viewer.html์˜ ๋‚ด์šฉ์„ ๊ฐ€์ ธ ์™”์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ pdf๋ฅผ๋กœ๋“œ ํ•  ๋•Œ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
PDF.js v? (์ง“๋‹ค: ?)
๋ฉ”์‹œ์ง€ : InvalidPDFException
์ฝ˜์†”์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
์˜ค๋ฅ˜ : ์ž˜๋ชป๋œ ์™ธ๋ถ€ ์ฐธ์กฐ ์ŠคํŠธ๋ฆผ ํ—ค๋” util.js : 186
์˜ค๋ฅ˜ ๋ฐœ์ƒ (http://bacchus.weibo.com:8080/js/pdfjs/src/shared/util.js:188:15)
Object.XRef_readXRef์—์„œ readXRef ๋กœ
Object.XRef_parse ์—์„œ ๊ตฌ๋ฌธ ๋ถ„์„์œผ๋กœ
Object.PDFDocument_setup ์—์„œ ์„ค์ •์œผ๋กœ
Object.PDFDocument_parse ์—์„œ ๊ตฌ๋ฌธ ๋ถ„์„
http://bacchus.weibo.com:8080/js/pdfjs/src/core/pdf_manager.js:106:26
LocalPdfManager_ensure ์—์„œ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
LocalPdfManager.BasePdfManager_ensureDoc์—์„œ ensureDoc ์œผ๋กœ
http://bacchus.weibo.com:8080/js/pdfjs/src/core/worker.js:54:22
๋‚ด๊ฐ€ ์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ์—์„œ ์‹ ์„ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์™œ ์ด๋Ÿฐ ์ผ์ด ๋ฐœ์ƒํ–ˆ๋Š”์ง€ ์ดํ•ดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฌ๋‚˜ ๋„์™€ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@xiaotun PDF ํŒŒ์ผ์ด ์†์ƒ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ƒˆ ๋ฌธ์ œ๋ฅผ ์—ด๊ณ  OS ์ด๋ฆ„ / ๋ฒ„์ „, PDF.js ๋ฒ„์ „ ๋ฐ ๋ธŒ๋ผ์šฐ์ € ์ด๋ฆ„ / ๋ฒ„์ „๊ณผ ๊ฐ™์€ ์ž์„ธํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜์‹ญ์‹œ์˜ค.

์ฝ˜์†”์— ๊ฒฝ๊ณ  : TT โ€‹โ€‹: ์ •์˜๋˜์ง€ ์•Š์€ ๊ธฐ๋Šฅ : 32๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์†Œ์Šค 'VM_Unknown'์„๋กœ๋“œ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ฝ˜ํ…์ธ ๋ฅผ ๊ฒ€์ƒ‰ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค .. VM_ Unknown : 1
@ types / pdfjs-dist๊ฐ€ ๋ฌธ์ œ๊ฐ€ ๋  ์ˆ˜ ์žˆ์ง€๋งŒ ๋‚ด ๊ฐ๋„ ์•ฑ์— URL์˜ tgz ํŒŒ์ผ๋กœ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค !!!

pdf๋Š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ •์ƒ์ ์œผ๋กœ ๋ Œ๋”๋ง๋˜์ง€๋งŒ ์–‘์‹ ์ž…๋ ฅ์ด ์—†์Šต๋‹ˆ๋‹ค!

์ด ํŠœํ† ๋ฆฌ์–ผ์„ ๋”ฐ๋ฅด๋ ค๊ณ  ๋…ธ๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค.
https://medium.com/factory-mind/angular-pdf-forms-fa72b15c3fbd

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰