Pdf.js: рдпрд╛рджреГрдЪреНрдЫрд┐рдХ / рд╕реНрдкрд╖реНрдЯ "рдмрд▓реНрдбрд┐рдВрдЧ" / рднреНрд░рд╖реНрдЯрд╛рдЪрд╛рд░

рдХреЛ рдирд┐рд░реНрдорд┐рдд 31 рдорд╛рд░реНрдЪ 2016  ┬╖  46рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: mozilla/pdf.js

рдкреАрдбреАрдПрдл рдлрд╛рдЗрд▓ рд╕реЗ рд▓рд┐рдВрдХ рдХрд░реЗрдВ:
default.pdf

рд╡рд┐рдиреНрдпрд╛рд╕:

  • рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдФрд░ рдЗрд╕рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг: рд╕рдВрд╕реНрдХрд░рдг 49.0.2623.87 (64-рдмрд┐рдЯ) [рд╕рдорд╕реНрдпрд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ]
  • рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рдЗрд╕рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг: рд▓рд┐рдирдХреНрд╕ рдЙрдмрдВрдЯреВ 15.10 [рдУрдПрд╕ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд╣реАрдВ]
  • PDF.js рд╕рдВрд╕реНрдХрд░рдг: [рд╕рднреА / 1.3.91]
  • рдПрдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╣реИ: pdf.js рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рдПрдореНрдмреЗрдбреЗрдб рд╣реИ

рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо:

  1. рдмрд╛рд░-рдмрд╛рд░ рджрд░реНрд╢рдХ рдЦреЛрд▓рддреЗ рд╣реИрдВ
  2. рдХрднреА-рдХрднреА рдкреНрд░рджрд░реНрд╢рди рдареАрдХ рд╣реЛрддрд╛ рд╣реИ, рдХрднреА-рдХрднреА рдпрд╛рджреГрдЪреНрдЫрд┐рдХ "рдмреЙрд▓реНрдбрд┐рдВрдЧ" рд╣реЛрддрд╛ рд╣реИ
  3. рдЖрд╡реГрддреНрддрд┐ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИ
  4. рдпрд╣ "PDFJS.disableWorker = true;" рд╕реЗрдЯ рдХрд░рдХреЗ CAUSED рд╣реИ (рдЗрд╕ рд╕реБрдзрд╛рд░ рдореБрджреНрджреЗ рдХреЛ рд╣рдЯрд╛рдиреЗ)
  5. рдореИрдВ рд╡рд░реНрдХрд░ рдХреЛ рдЕрдХреНрд╖рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХреЗ рдХрд╛рд░рдг _every_ рдХреЛ рджреЗрдЦрддрд╛ рд╣реИ
  6. рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЗрди-рдореЗрдореЛрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
  7. рдореИрдВрдиреЗ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рд╛рдордЧреНрд░реА рдареАрдХ рд╣реИ рдФрд░ рднреНрд░рд╖реНрдЯ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рдмреАрдЪ рд╕рдВрдЧрдд рд╣реИ
  8. рдмрд╣реБ-рдкреГрд╖реНрда рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдкрд░, рдкреГрд╖реНрда рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдирд╛ рдФрд░ рдлрд┐рд░ рд╣рдореЗрд╢рд╛ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдирд╛

рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреНрдпрд╛ рд╣реИ? (рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдЬреЛрдбрд╝реЗрдВ)
ok

рдХреНрдпрд╛ рдЧрд▓рдд рд╣реБрдЖ? (рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдЬреЛрдбрд╝реЗрдВ)
corrupt

1-other 4-chrome-specific

рд╕рднреА 46 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рджреГрд╢реНрдп рдкрд░ рдЗрд╕ рдХрд╛рд░рдг рдХреЗ рднрд╛рд░реА рдбрд╛рдЙрдирд▓реЛрдб рдХреЗ рдХрд╛рд░рдг рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдХреЛ "рдЕрдХреНрд╖рдо" рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛

рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рднрд╛рдЧ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдпрджрд┐ рдЖрдк рдХрдИ рдмрд╛рд░ getDocument рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдПрдХрд▓ PDFWorker рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрд╣ рдмрддрд╛рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдХрд┐ рдлреЛрдВрдЯ рдХреЗ рднреНрд░рд╖реНрдЯ рд╣реЛрдиреЗ рдХрд╛ рдХреНрдпрд╛ рдХрд╛рд░рдг рд╣реИ, рд▓реЗрдХрд┐рди рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рд╣реЛрдиреЗ рд╕реЗ рдХреБрдЫ рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЙрджрд╛рд╣рд░рдг рдмрдирд╛ / рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ?

рдареАрдХ рд╣реИ, рдореИрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рд▓рд┐рдВрдХ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдпрджрд┐ рдореИрдВ рд╕рдХреНрд╖рдо рд╢реНрд░рдорд┐рдХреЛрдВ рдХреЗ рд╕рд╛рде рдЪрд▓рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ 100% рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдореИрдВрдиреЗ рдЕрдХреНрд╖рдо рдзреНрд╡рдЬ рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЖрдк рдКрдкрд░ рджрд┐рдЦрд╛рдП рдЧрдП рд╕рдорд╕реНрдпрд╛ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рдЕрдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ, рд╢рд╛рдпрдж 4 рдХрд╛ 1 рдЙрджрд╛рд╣рд░рдгред

рдореИрдВ "рдХреНрдпреЛрдВ рдореИрдВ рд╢реНрд░рдорд┐рдХреЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ" рдХрд╛ рд╡рд┐рд╡рд░рдг рджреЗрддреЗ рд╣реБрдП "рдмрд╕ рд╢реНрд░рдорд┐рдХреЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ" рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╢реАрд░реНрд╖рдХ рджреЗ рд░рд╣рд╛ рдерд╛, рдЬреЛ рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рдмрд╣реБрдд рд╕реЗ рдЫреЛрдЯреЗ рдкреАрдбреАрдПрдл рдХреЛ рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдкреАрдбреАрдПрдл_рд╡рд░реНрдХрд░.рдЬреЗрдПрд╕ рдХреЗ рд▓рд┐рдП 1.2Mb рдбрд╛рдЙрдирд▓реЛрдб рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реВрдВ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рджрд░реНрд╢рди рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдирд╣реАрдВ рд╣реИред рдореИрдВ рд╡реЗрдм-рд╡рд░реНрдХрд░ рдХреЛрдб рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рд╢реНрд░рдорд┐рдХреЛрдВ рдХреЗ рдкрд╛рд╕ .js рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХреИрд╢ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рдХреБрдЫ рднреА рдЦреЛрдЬрдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рдирд╣реАрдВ рд╣реБрдП рд╣реИрдВред

рдореЗрд░рд╛ рдЖрд░рдВрднрд┐рдХ рдЕрдиреБрдорд╛рди (рдкреНрд░рднрд╛рд╡ рдХреЗ рдЖрдзрд╛рд░ рдкрд░) рдпрд╣ рд╣реИ рдХрд┐ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдХреЛрдк рдХреЗ рд╕рд╛рде рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдХреБрдЫ рд╣реИ рдЬреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд▓реЛрдб рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рд╛рдлрд╝ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ рдпрджрд┐ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦреА рдЧрдИ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдмрд╛рд░-рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐ (!) рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдПрдлрдЖрдИрдЖрд░рдПрд╕рдЯреА рдкреАрдбреАрдНрдлрд╝ рдбрд┐рд╕реНрдкреНрд▓реЗ рдкрд░ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдиреЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдиреБрдХрд╕рд╛рди рд╣реЛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рджреЗрдЦрдирд╛ рд╣реИред

рдореИрдВ "рдХреНрдпреЛрдВ рдореИрдВ рд╢реНрд░рдорд┐рдХреЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ" рдХрд╛ рд╡рд┐рд╡рд░рдг рджреЗрддреЗ рд╣реБрдП "рдмрд╕ рд╢реНрд░рдорд┐рдХреЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ" рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╢реАрд░реНрд╖рдХ рджреЗ рд░рд╣рд╛ рдерд╛, рдЬреЛ рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рдмрд╣реБрдд рд╕реЗ рдЫреЛрдЯреЗ рдкреАрдбреАрдПрдл рдХреЛ рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдкреАрдбреАрдПрдл_рд╡рд░реНрдХрд░.рдЬреЗрдПрд╕ рдХреЗ рд▓рд┐рдП 1.2Mb рдбрд╛рдЙрдирд▓реЛрдб рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реВрдВ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рджрд░реНрд╢рди рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдирд╣реАрдВ рд╣реИред

@oddjobz рдореИрдВ рдЕрднреА рднреА рдЪрд┐рдВрддрд╛ рдХреЛ рдирд╣реАрдВ рд╕рдордЭрддрд╛ред рдЕрдХреНрд╖рдо рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рдЖрдк _still_ pdf.worker.js рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдореБрдЦреНрдп рдзрд╛рдЧреЗ рдкрд░ рд╣реЛ рд░рд╣рд╛ рд╣реИред рд╡реЗрдм рд╕рд░реНрд╡рд░ рдкрд░ рдЙрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕реЗрдЯрдЕрдк рд╕реНрдерд┐рд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдХреА рдХреИрд╢рд┐рдВрдЧ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рдпрд╛рд╕ рдХреЗ рдмрд┐рдирд╛ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП 1.2Mb рдбрд╛рдЙрдирд▓реЛрдб рд╕реЗ рдмрдЪреЗрдВред PDFWorker рдПрдХрд▓ рдкреГрд╖реНрда рдкрд░ рд╡реЗрдм рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рдХреИрд╢рд┐рдВрдЧ (рдЬреИрд╕реЗ рдЬрдм рдПрдХрд╛рдзрд┐рдХ getDocuments рдкреНрд░рджрд░реНрд╢рди) рдХреЗ рд╕рд╛рде рдорджрдж рдХрд░реЗрдЧрд╛ред

рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрджрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЖрдкрдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЗ рдмрд┐рдирд╛ рдкреВрд░реА рд╣реЛрддреА рд╣реИ, рддреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ PDF.js рд╡реЗрдм-рд╡рд░реНрдХрд░ рдХреЛрдб рдЬрдм рдорд╛рдирдХ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдкрд░ рдорд╛рдирдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ) рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдареАрдХ рд╣реИ, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЬреЛ рдХреЛрдб рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЬреЛ рдХреЛрдб рд╣реИ, рдЙрд╕рдореЗрдВ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдПрдХ рдЕрдВрддрд░ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдХреЛ рд╡рд┐рдХрд▓рд╛рдВрдЧ рдХреЗ рд╕рд╛рде, pdf_worker.js рдХреЛ рдкрд╣рд▓реЗ рд╣рд┐рдЯ "рдХреЗрд╡рд▓" рдкрд░ рдПрдХ рдмрд╛рд░ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╢реНрд░рдорд┐рдХреЛрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде, рдпрд╣ рд╣рд░ рдирдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкрд░ рдХреЛрдб рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдХреИрд╢рд┐рдВрдЧ рдкрд░ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИред (рдпрд╛рдиреА рдпрд╣ рдХреИрд╢реНрдб рдирд╣реАрдВ рд╣реИ) рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдХреНрдпреЛрдВрдХрд┐ рдХреНрд░реЛрдо рджреЗрд╡реЛрдВ рдХреЛ рд╡реЗрдм рд╡рд░реНрдХрд░реНрд╕ рдФрд░ рдХреИрд╢реНрдб рдХреЛрдб рдХреА рд╕рдорд╕реНрдпрд╛ рдереА, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЛрдВрдиреЗ рдХреЛрдЪрд┐рдВрдЧ рдмрдВрдж рдХрд░ рджреА рд╣реИред рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░реЗ рд╕рднреА рд╣реЗрдбрд░ рдХреИрд╢рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдХреИрд╢рд┐рдВрдЧ рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИред (рдЬрдмрдХрд┐ рдЕрдиреНрдп рд╕рд╛рдорд╛рди _is_ рдХреИрд╢реЗрдб)

рдореЗрд░реЗ рдкрд╛рд╕ рддреАрди рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдмрд┐рдЯреНрд╕ рд╣реИрдВ;
рдПред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдб рдХреЗ рд╕рд╛рде рдореБрдЦреНрдп рдХреЛрдб рдмреНрд▓реЙрдХ
рдмреА рдУрдирд▓реЛрдб рдЬреЛ рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ
рд╕реАред рдПрдХ рдЕрдХреЗрд▓рд╛ рд╡рд░реНрдЧ рдЬреЛ рдПрдХ DIV рдореЗрдВ рдПрдХ рдкреАрдбреАрдПрдл рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ

рдореБрдЦреНрдп рдХреЛрдб рдмреНрд▓реЙрдХ;

<script type="text/javascript" src="js/compatibility.js"></script>
<script type="text/javascript" src="js/pdf.js"></script>

рдУрдиреЛрдб рдХреЛрдб;

    PDFJS.disableWorker = true;
    PDFJS.verbosity = PDFJS.VERBOSITY_LEVELS.debug;
    PDFJS.workerSrc = "/js/pdf.worker.js";

рд╡рд░реНрдЧ рдкрд░рд┐рднрд╛рд╖рд╛;

JS.require('JS.Class',function(Class) {

    CLASS.PDFViewer = new Class({

        locked  : false,
        page        : 0,
        pages   : 0,
        pdf     : null,
        doc_id  : null,

        initialize: function(prefix) {
            this.canvas   = prefix+'-canvas';           // Canvas element ID we'll be rendering to
            this.prefix   = prefix;
            this.id_page  = '#'+this.canvas+'-page';    // Ident of page number
            this.id_pages = '#'+this.canvas+'-pages';   // Ident of page count
            this.setfocus(null);                        // Element to focus after render
        },
        reset:      function() { this.now_showing = null; console.log("PDF Reset")},
        set:        function(doc_id) { this.doc_id = doc_id; console.log("Docid:",doc_id) },
        load:       function() { this.fetch(this.doc_id); },
        set_doc:    function() {},
        setfocus: function(field_id) { this.focuson = field_id; },

        decode: function(base64) {
            var raw = atob(base64);
            var uint8Array = new Uint8Array(raw.length);
            for (var i = 0; i < raw.length; i++) {
                uint8Array[i] = raw.charCodeAt(i);
                }
          return uint8Array;
        },

        full_screen: function() {
            if( $('#'+this.prefix+'-hide-me').is(':visible') ) {
                $('#'+this.prefix+'-hide-me').hide();
                $('#'+this.prefix+'-full-screen').removeClass("col-sm-7");
                $('#'+this.prefix+'-full-screen').addClass("col-sm-12");
            } else {
                $('#'+this.prefix+'-hide-me').show();
                $('#'+this.prefix+'-full-screen').removeClass("col-sm-12");
                $('#'+this.prefix+'-full-screen').addClass("col-sm-7");
            }
            this.turn_page();
        },
        focus: function() {
            if(this.focuson) {
                console.log("SetFocus>>",this.focuson);
                setTimeout("$('"+this.focuson+"').focus()",100);
                this.focuson = null;
            }
        },
        display: function(pdf) {
            this.pdf = pdf;
            $(this.id_pages).text(this.pdf.numPages);
            this.pages = this.pdf.numPages;
            this.page = 1;
            this.turn_page();
        },
        fetch: function(rid) {
            if(this.locked) return false;
            var self = this;
            var src = '/images/default.pdf';
            function success(data) {
                if(!LIB.check_error(data)) return false;
                if(data.pdf) src = self.decode(data.pdf);
                self.locked = true;
                PDFJS.getDocument(src).then(function(pdf){ self.display(pdf); });
                return true;
            }
            ionman.call('nac.rpc.pdf_spec',{'rid': rid},success)
            return true;
        },
        turn_page: function() {
        var self = this;
            self.pdf.getPage(self.page).then(function(page) {
                var canvas = document.getElementById(self.canvas);
        var ctx = canvas.getContext('2d');
        var unscaledViewport = page.getViewport(1.0);
                canvas.width = $('#'+self.canvas).width();
                var scale = canvas.width / unscaledViewport.width;
                var viewport = page.getViewport(scale);
                canvas.height = viewport.height;
            var renderContext = { canvasContext: ctx, viewport: viewport };
        page.render(renderContext).promise.then(function(){
                setTimeout(function(){
                    self.locked = false;
                        self.focus();
                    },250);
                });
                $(self.id_page).text(self.page);
            });
        },
        next: function() {
            if( this.page == this.pages) return;
            this.page += 1;
            this.turn_page();
        },
        prev: function() {
            if( this.page == 1) return;
            this.page -= 1;
            this.turn_page();
        }
    });

рдЗрд╕рд▓рд┐рдП рдореИрдВ рдХрд░рддрд╛ рд╣реВрдБ;

var viewer = CLASS.PDFViewer('pdf');
viewer.fetch();

рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЖрдИрдбреА "рдкреАрдбреАрдПрдл-рдХреИрдирд╡рд╛рд╕" рдХреЗ рд╕рд╛рде рдПрдХ рдбреАрдЖрдИрд╡реА рд╣реИред

рдЪрд▓реЛ рдпрд╣ рдХрд░рдХреЗ рджреЗрдЦреЗрдВ:

  1. Chrome рдореЗрдВ http://mozilla.github.io/pdf.js/web/viewer.html рдЦреЛрд▓реЗрдВ
  2. рдиреЗрдЯрд╡рд░реНрдХ рдкреЗрдЬ рдкрд░ рдУрдкрди рдбреИрдЯреВрд▓ рдФрд░ рд╕реНрдкреНрд▓рд┐рдЯ рдХрдВрд╕реЛрд▓ (рдЗрд╕ рдЯреИрдм рдкрд░ 'рдПрд╕реНрдХ' рд╣рд┐рдЯ рдХрд░реЗрдВ)
  3. рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рдПрдХ рдЕрдкрд╡рд╛рдж рдореЗрдВ рдирд╣реАрдВ рдкрдХрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ (рдЕрдкрд╡рд╛рдж рдмреНрд░реЗрдХ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░реЗрдВ рдФрд░ рдЕрдиреНрдпрдерд╛ рддрд╛рдЬрд╝рд╛ рдХрд░реЗрдВ)
  4. рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ "рдХреИрд╢ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ" рдмрдВрдж рд╣реИ (рдЕрдиреНрдпрдерд╛ рдЕрдирдЪреЗрдХ рдФрд░ рддрд╛рдЬрд╝рд╛ рдХрд░реЗрдВ)
  5. рдХрдВрд╕реЛрд▓ рдореЗрдВ, PDFJS.getDocument('http://mozilla.github.io/pdf.js/web/compressed.tracemonkey-pldi-09.pdf') рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ
  6. рд╕реВрдЪрдирд╛ рджреВрд╕рд░реА "pdf.worker.js" рдореЗрдВ "200 рдареАрдХ рд╣реИ (рдХреИрд╢ рд╕реЗ)" рд╕реНрдерд┐рддрд┐ рд╣реИ

screen shot 2016-03-31 at 10 51 26 am

рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ рд╕рд╣рд╛рдпрдХ рдирд╣реАрдВ рд╣реИрдВред рдХреГрдкрдпрд╛ рдЫреЛрдЯреЗ рдЙрджрд╛рд╣рд░рдг рдХрд╣реАрдВ рддреИрдирд╛рдд рдХрд░реЗрдВ (рдЬреИрд╕реЗ рдЬреАрдереВрдм рдкреЗрдЬ рдкрд░)

рд╣рд╛рдБ, рдореИрдВ рдЗрд╕реЗ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ .. рдпрд╣ рдкреАрдбреАрдПрдл рдХрд╛ рдПрдХ рдФрд░ рд╣рд╛рд▓рд┐рдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рддреАрдд рд╣реЛ рд░рд╣рд╛ рд╣реИред рдореИрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдЗрд╕рд╕реЗ рдЕрдзрд┐рдХ рдЕрдВрддрд░ рдХреЛ рдореБрджреНрджрд╛ рдирд╣реАрдВ рдорд╛рдирддреЗ рд╣реБрдП, рдореИрдВ рд╣реЗрдбрд░ рдХреА рддреБрд▓рдирд╛ рдХрд░реВрдВрдЧрд╛ рдХрд┐ рд╡рд╛рд░реНрдирд┐рд╢ рдореЗрд░реЗ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЗ рдЦрд┐рд▓рд╛рдл рдбрд╛рд▓ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдирд╣реАрдВ рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдХреИрд╢рд┐рдВрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИред

рдореБрдЭреЗ рдЗрд╕ рдкрд░ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдХреНрдпреЛрдВрдХрд┐ рдХреНрд░реЛрдо рджреЗрд╡реЛрдВ рдХреЛ рд╡реЗрдм рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдФрд░ рдХреЛрдбрд┐рдд рдХреЛрдб рдХреА рд╕рдорд╕реНрдпрд╛ рдереА, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЛрдВрдиреЗ рдХреИрд╢рд┐рдВрдЧ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рд╣реИред

рдореБрдЭреЗ рдЗрд╕ рдФрд░ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╕рдВрдмрдВрдз рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИред Pdf.worker.js рд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдпрд╣ рд╕рд╣реА рдпрд╛ рдЧрд▓рдд рд╣реЛред рддреЛ рд╕рдорд╕реНрдпрд╛ рдХреИрд╢рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ рдХрд┐ рдореИрд╕реЗрдЬрд┐рдВрдЧ рдЕрдХреНрд╖рдорддрд╛ рдореЛрдб рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдХреЗрд╡рд▓ рд▓реАрдЧреЗрд╕реА рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдФрд░ рдбреАрдмрдЧрд┐рдВрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХрдо рд╕реЗ рдХрдо рдкрд░реАрдХреНрд╖рдг рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХрдо рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ рдЬрд╣рд╛рдВ рд╕рдорд╕реНрдпрд╛ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ (рдСрдирд▓рд╛рдЗрди рдЙрдкрд▓рдмреНрдз рд╣реЛрдиреЗ рдпреЛрдЧреНрдп)ред

рдареАрдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ ... рд╕реНрдерд╛рдиреАрдпрд╣реЛрд╕реНрдЯ рдХреЗ рдЦрд┐рд▓рд╛рдл рдкрд░реАрдХреНрд╖рдг рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдкрд░

рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ .. рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдХреБрдЫ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдЬреЛрдбрд╝реЗ рд╣реИрдВ ...

live

dev

рдХреИрд╢ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ _not_ рдЯрд┐рдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ...
(рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдорд╛рди рд╣реИ)

рдХреНрдпрд╛ рдпрд╣рд╛рдВ рдХреБрдЫ рдФрд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ? рдЬреЛ рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдкреАрдбреАрдПрдл.рдЬреЗрдПрд╕ рдореЗрдВ рдмрдЧ рдХреА рддрд░рд╣ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдХрд╕реНрдЯрдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рд╣реИред

рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдорд╛рдорд▓рд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд╣рдо рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ рд░реЛрдХ рд╕рдХрддреЗ рд╣реИрдВ (рд░реБрдХ-рд░реБрдХ рдХрд░) рдЕрд╕рдлрд▓рддрд╛ред

рдпрд╣ рдПрдХ рдмрдЧ рд╣реИ, рдореИрдВ рдПрдХ рдСрдирд▓рд╛рдЗрди рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдХреБрдЫ рдХреЛрдбрд┐рдВрдЧ рдФрд░ рдереЛрдбрд╝рд╛ рд╕рдордп рд▓рдЧреЗрдЧрд╛ ...

рдирдорд╕реНрддреЗ, рдореИрдВ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд░рд╣рд╛ рд╣реВрдБред

рдпрд╣рд╛рдБ рдХреБрдЫ рднреА рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рд╣реИ, рдмрд╕ рдЧрд┐рддреБрдм рд╕реЗ рд░реЗрдкреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рд╣реИ
screencapture 7

@ subhadip-codeclouds рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИред рдХреГрдкрдпрд╛ рдЕрд▓рдЧ рд╕рдорд╕реНрдпрд╛ рдЦреЛрд▓реЗрдВ рдФрд░ рдЕрдиреБрд░реЛрдзрд┐рдд рд╡рд┐рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░реЗрдВред

@ рд╕рдмрд╣рджреАрдк-рдХреЛрдбреЗрдХрд▓реЙрдбреНрд╕ рдореБрдЭреЗ рдпрд╣ рдкреАрдбреАрдПрдлрд╝ рдХрд╣рд╛рдВ рдорд┐рд▓реЗрдЧрд╛? рдореИрдВ рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдЗрд╕реЗ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдореИрдВ рдЙрдмрдВрдЯреВ рдкрд░ рдХреНрд░реЛрдо рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рдлреЙрдиреНрдЯ рд░реЗрдВрдбрд░ рд╕рдорд╕реНрдпрд╛ рд░рдЦ рд░рд╣рд╛ рд╣реВрдВ (рдЕрдиреНрдп рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ)ред рдореИрдВ рдЧреБрд░реБ рд╕реЗ рдирд╡реАрдирддрдо pdf.js рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ, рдФрд░ рдХрднреА рдХрднреА рдПрдХ рдкреАрдбреАрдПрдл @oddjobz рдХреА рдкреАрдбреАрдПрдл рдХреА рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ рдФрд░ рдХрднреА рдХрднреА рдпрд╣ @ subhadip-codeclouds рдХреА рдкреАрдбреАрдПрдл рдХреА рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред рдпрд╣ рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкреАрдбреАрдПрдл рдкрд░ рд▓рдЧрддрд╛ рд╣реИред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдЧрд▓рдд рдХреНрдпрд╛ рд╣реИ рдпрд╛ рдордЬрд╝рдмреВрддреА рд╕реЗ рдЗрд╕реЗ рдХреИрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд┐рдпрд╛ рдЬрд╛рдПред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рдкрд░рд┐рджреГрд╢реНрдп рд╣реИред рдореИрдВ рдПрдХ рдЧрддрд┐рд╢реАрд▓, рдПрдХрд▓ рдкреГрд╖реНрда рд╡реЗрдмрд╕рд╛рдЗрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рдПрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдХреНрд╕рд░ рдПрдХ рдЯреИрдм рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдПрдХ iframe рдмрдирд╛рдПрдВрдЧреЗ рдФрд░ iframe рдХреЗ рднреАрддрд░ pdf.js рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВрдЧреЗред рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд░рд┐рдПрдХреНрдЯ рдФрд░ рдореЗрд░реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдЙрд╕реЗ рджреЗрдЦрддреЗ рд╣реБрдП, рдПрдХ рдЖрдЗрдлреНрд░реЗрдо рдмрдирд╛рдпрд╛ рдФрд░ рдирд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рдордп рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЖрдЦрд┐рд░рдХрд╛рд░ рдореБрдЭреЗ рд╣рдореЗрд╢рд╛ рдлрд╝реЙрдиреНрдЯ рд░реЗрдВрдбрд░ рдХрд░рдкреНрд╢рди рдорд┐рд▓реЗрдЧрд╛ред рдФрд░ рдПрдХ рдмрд╛рд░ рдпрд╣ рдПрдХ рдкреАрдбреАрдПрдл рдХреЗ рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЕрдиреНрдп рдкреАрдбреАрдПрдл рдХреЗ рд▓рд┐рдП рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд░реВрдк рд╕реЗ рд╣реЛрдиреЗ рд▓рдЧреЗрдЧрд╛ред рдХреБрдЫ рд╣рдореЗрд╢рд╛ рдареАрдХ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдХреБрдЫ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдХреБрдЫ рд╣реИ (рдЬреИрд╕реЗ рдбрд┐рдмрдЧ рдЭрдВрдбреЗ) рдореИрдВ рдЪрд╛рд▓реВ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдпрд╛ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рдЪрд▓ рд░рд╣рд╛ рд╣реИ? рдореБрдЭреЗ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдпрд╛ рдЪреЗрддрд╛рд╡рдиреА рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИред

рдпрд╣рд╛рдБ рдПрдХ PDF рд╣реИ рдЬреЛ рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛ рдлрд╝реЙрдиреНрдЯ рд░реЗрдВрдбрд░ рднреНрд░рд╖реНрдЯрд╛рдЪрд╛рд░ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдпрд╣ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред
https://datalanche-sec-public.s3.amazonaws.com/filings/0001047469-15-008315/a2226328zex-31_2.htm.pdf

рдПрдХ рдФрд░ рдЪреАрдЬрд╝ред рдпрджрд┐ рдореИрдВ рдЙрд╕реА URL рдХреЗ рд╕рд╛рде рдХреНрд░реЛрдо рдореЗрдВ рдПрдХ рдирдпрд╛ рдЯреИрдм рдЦреЛрд▓рддрд╛ рд╣реВрдВ рддреЛ рдкреАрдбреАрдПрдл рдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЕрдЧрд░ рдореИрдВ рдПрдХ рд╣реА рдЯреИрдм рдореЗрдВ рд░рд╣рддрд╛ рд╣реВрдВ, рддреЛ рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░реЗрдВ, рдФрд░ рдлрд┐рд░ рдореЗрд░реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░реЗрдВ (рдмреИрдХ рдмрдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ) рднреНрд░рд╖реНрдЯ рдлреЛрдВрдЯ рдХреЗ рд╕рд╛рде рдкреАрдбреАрдПрдл рдЕрднреА рднреА рднреНрд░рд╖реНрдЯ рд╣реИрдВред рдпрд╣ рд▓рдЧрднрдЧ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬреЛ рдХреБрдЫ рднреА рд╣реЛ рд░рд╣рд╛ рд╣реИ рд╡рд╣ рдЯреИрдм рдХреА рдореЗрдореЛрд░реА рдФрд░ / рдпрд╛ рдХреИрд╢ рдХреЛ рджреВрд╖рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИред

рдпрд╣ рд╕рдВрднрд╡рддрдГ рдХреНрд░реЛрдо рдореЗрдВ рдПрдХ рдХреИрд╢рд┐рдВрдЧ рд╕рдорд╕реНрдпрд╛ рд╣реИ (рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП https://github.com/mozilla/pdf.js/issues/7751#issuecomment-256683285 рджреЗрдЦреЗрдВ)ред

рдЗрд╕ рдкрд░ рдХрд┐рд╕реА рднреА рдЕрджреНрдпрддрди? рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд░рд╣рд╛

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВ рдЕрднреА рднреА рдЗрд╕реЗ (рдмреЗрд╡рдЬрд╣) рдореМрдХреЗ рдкрд░ рджреЗрдЦрддрд╛ рд╣реВрдВ, рдпрд╣ рдмрд╣реБрдд рджреБрд░реНрд▓рдн рд╣реИ рдФрд░, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рджреБрд░реНрд▓рдн рд╣реИ, рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдЬреЛ рд╕рдорд╕реНрдпрд╛ рдореБрдЭреЗ рдкреНрд░рддреАрдд рд╣реЛ рд░рд╣реА рдереА рдХрд┐ рд╡рд╣ рдУрд╡рд░рд▓реИрдкрд┐рдВрдЧ рдСрдкрд░реЗрд╢рди рдереАред рдпрд╣ "рд▓рдЧрддрд╛ рд╣реИ" рдПрдХ рдкреАрдбреАрдПрдл рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкреГрд╖реНрда) рдкрд░ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬрдмрдХрд┐ рдПрдХ рдФрд░ рдСрдкрд░реЗрд╢рди рдЕрднреА рднреА рдкреНрд░рдЧрддрд┐ рдкрд░ рд╣реИ, рдФрд░ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рд▓рдЧрддрд╛ рд╣реИред рдореЗрд░рд╛ рд╕рдорд╛рдзрд╛рди рдПрдХ рдХрдХреНрд╖рд╛ рдореЗрдВ рд╕рднреА рдСрдкрд░реЗрд╢рдиреЛрдВ рдХреЛ рд▓рдкреЗрдЯрдирд╛ рдерд╛, рдлрд┐рд░ рдкреНрд░рд╡реЗрд╢ рдФрд░ рдирд┐рдХрд╛рд╕ рдмрд┐рдВрджреБрдУрдВ рдкрд░ рдПрдХ рдорд╛рд╕реНрдЯрд░ рд▓реЙрдХ рдбрд╛рд▓реЗрдВ рддрд╛рдХрд┐ рдХреЛрдИ рднреА рдкреАрдбреАрдПрдл рд╕рдВрдмрдВрдзрд┐рдд рд╕рдВрдЪрд╛рд▓рди рд╕рдВрдШрд░реНрд╖ рди рдХрд░ рд╕рдХреЗ - рдпрд╣ "рд▓рдЧрддрд╛ рд╣реИ" рдореЗрд░реЗ рд▓рд┐рдП рдирд┐рд╢реНрдЪрд┐рдд рдЪреАрдЬреЗрдВ рд╣реИрдВред рдореИрдВ рдЕрд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдорд╛рди рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдкреАрдбреАрдПрдл рд╕рд╛рдорд╛рди рдПрдХ рдЕрд▓рдЧ рдереНрд░реЗрдб рдпрд╛ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЪрд▓рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХ рд╕рдВрдШрд░реНрд╖ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рдпрд╣ рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ рдерд╛, рд▓реЗрдХрд┐рди рд╕реНрдореГрддрд┐ рд╕реЗ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдереНрд░реЗрдбрд┐рдВрдЧ рдЪреАрдЬ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдЕрдХреНрд╖рдо рдХрд░рдХреЗ рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬ рд▓рд┐рдпрд╛, рдЬрд┐рд╕рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдирдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдиреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ред

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╣рд░ рд╕рдордп рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдлреА рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╣реИ рдХрд┐ рдореИрдВ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рдмрд╣реБрдд рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдпрд╣ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рднреА рдереНрд░реЗрдбрд┐рдВрдЧ рд╕реЗ рдореЗрдореЛрд░реА рдХрд░рдкреНрд╢рди рд╣реЛ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд┐рдВрдЧрд▓ рдереНрд░реЗрдбреЗрдб рдерд╛?

рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд┐рдВрдЧрд▓ рдереНрд░реЗрдбреЗрдб рдерд╛

рдпрд╣ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ @oddjobz рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм (?) рд╣реИ рдХрд┐ рдХреНрд░реЛрдо рдореЗрдВ рдПрдХ рдмрдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рдЖрдк рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдПрдЪрдЯреАрдПрдордПрд▓ 5 рдХреИрдирд╡рд╛рд╕ рдкрд░ рдкреЗрдВрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЙрд╕ рд╕рдордп рджреЛрд╖ рд╣реЛрдиреЗ рдХреА рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реЛрддреА рд╣реИред рд▓реЗрдХрд┐рди рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдкрд░реАрдХреНрд╖рдг рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рдмрд┐рдирд╛ рдпрд╣ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рдФрд░ рдХреНрд░реЛрдорд┐рдпрдо рдХреАрдбрд╝реЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рд░реНрдердХ рд░рд┐рдкреЛрд░реНрдЯ рдмрдирд╛рдПрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ (рдореЗрдореЛрд░реА рд╕реЗ) рдпрд╣ "рд╡реЗрдм рд╡рд░реНрдХрд░реНрд╕" рдирд╛рдордХ рдПрдХ рдирдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдлреАрдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдирд┐рдпреЛрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдЖрдкрдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдереНрд░реЗрдб рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ .. рдпрджрд┐ рдЖрдк рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрддреЗ рд╣реИрдВ, рддреЛ "рдмрдбрд╝реЗ" рдкреАрдбреАрдПрдл рдХреЛ рджреЗрдЦрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ, рдЖрдк рджреЗрдЦреЗрдВ "рдХреНрдпреЛрдВ" рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЙрдкрдпреЛрдЧ рдореЗрдВ рд╣реИ ... :)

рдпрд╣ "рд╡реЗрдм рд╡рд░реНрдХрд░реНрд╕" рдирд╛рдордХ рдПрдХ рдирдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдлрд╝реАрдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдирд┐рдпреЛрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ ...
рдпрджрд┐ рдЖрдк рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрддреЗ рд╣реИрдВ, рддреЛ "рдмрдбрд╝реА" рдкреАрдбреАрдПрдл рджреЗрдЦрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ, рдЖрдк рджреЗрдЦреЗрдВ "рдХреНрдпреЛрдВ" рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЙрдкрдпреЛрдЧ рдореЗрдВ рд╣реИ

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдУрдкреА рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрджреЗрд╢ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╡реЗрдм рд╡рд░реНрдХрд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рджреЛрд╖ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ "рдереНрд░реЗрдбрд┐рдВрдЧ" рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИред

рдпрд╣ рдереЛрдбрд╝рд╛ рд╕реВрдХреНрд╖реНрдо рд╣реИ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд┐рдВрдЧрд▓ рдереНрд░реЗрдбреЗрдб рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрд░реЛрдо рдорд▓реНрдЯреА-рдереНрд░реЗрдбреЗрдб рд╣реИ, рдФрд░ рд╡реЗрдм рд╡рд░реНрдХрд░реНрд╕ рдЖрдкрдХреЛ рджреЛ рдХреНрд░реЛрдо рдкреНрд░реЛрд╕реЗрд╕ рдЪрд▓рд╛рдиреЗ рдФрд░ рдЙрдирдХреЗ рдмреАрдЪ рд╕рдВрдЪрд╛рд░ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдорд╛рд╕реНрдЯрд░ рдХреЛ рдбреЛрдо рдПрдХреНрд╕реЗрд╕ рдорд┐рд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдпреВрдЖрдИ рдереНрд░реЗрдб рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд┐рдП рдмрд┐рдирд╛ рдкреНрд░реЛрд╕реЗрд╕рд░ рдЧрд╣рди рд╕рд╛рдорд╛рди рдХреЗ рд▓рд┐рдП рдЙрдк-рдереНрд░реЗрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рддрдм рдФрд░ рдордЬреЗрджрд╛рд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЖрдк рдкрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдРрд╕реЗ рд╡реЗрдм рд╡рд░реНрдХрд░реНрд╕ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдереНрд░реЗрдб рдпрд╛ рдЯреИрдм рд╕реЗ рдЬреБрдбрд╝реЗ рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╡реЗ рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдПрдХ рдкреЗрдЬ рд░реАрд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ (рдпрд╛рдиреА рд╡реЗ рд▓рдЧрд╛рддрд╛рд░ рд╣реИрдВ)ред рдореИрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ рдХрд┐ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдорд╕реНрдпрд╛рдПрдВ рдЗрд╕ рд╕реЗ рдЙрдкрдЬреА рд╣реИрдВред

рдЬрд╝рд░реВрд░ - рд▓реЗрдХрд┐рди рдореЗрд░реА рдЯрд┐рдкреНрдкрдгреА рдпрд╣ тАЛтАЛрд╣реИ рдХрд┐ рдереНрд░реЗрдбрд┐рдВрдЧ рдХреЗ рдмрд┐рдирд╛ (рдпрд╛рдиреА рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдереНрд░реЗрдб рд▓реЗрд╡рд▓ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ), рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ 99% рднрд╛рдЧ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред (рдореЗрд░реЗ рд▓рд┐рдП)ред

@oddjobz , @rpedela рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ / gpu рддреНрд╡рд░рдг рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛ рдЕрднреА рднреА рд╣реЛрддреА рд╣реИред

@yurydelendik , рд╣рд╛рдБ, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдерд╛, рдкрд╣рд▓реА рдЪреАрдЬреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдЬреЛ рдореИрдВрдиреЗ рдХреЛрд╢рд┐рд╢ рдХреА рдереАред (рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ)

@yurydelendik , рдореЗрд░рд╛ рдЖрд╡реЗрджрди 6+ рдорд╣реАрдиреЗ рд▓рд╛рдЗрд╡ рд░рд╣рд╛ рд╣реИ, рдореБрдЭреЗ рдЦреБрд╢реА рд╣реИ рдХрд┐ рдХреЛрдИ рднреА рд╢реЗрд╖ рдореБрджреНрджрд╛ "рдЕрд▓рдЧ" рд╣реИ рдФрд░ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рддреНрд░реБрдЯрд┐ рдпрд╛ рдХрднреА-рдХрднреА рдЕрдЬреАрдм рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╣реИред рдЬреЛ рд╕рдорд╕реНрдпрд╛ рдореБрдЭреЗ рд╣реЛ рд░рд╣реА рдереА, рдЬреЛ рдХрд┐ рд╕реБрд╕рдВрдЧрдд рдирд╣реАрдВ рдереА, 100% рдкреБрдирд░реБрддреНрдкрд╛рджрдиреАрдп рдереА, рдЬреЛ рдЪрд▓реА рдЧрдИред рдпрд╣ (IMHO) рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдмреАрдЪ рдУрд╡рд░рд▓реИрдк рдХреЗ рдХрд╛рд░рдг рд╣реЛрддрд╛ рдерд╛, рдпрд╛рдиреА рдкрд┐рдЫрд▓реЗ рдПрдХ рдХреЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ - рдереНрд░реЗрдбрд┐рдВрдЧ рдпрд╛ рдирд╣реАрдВ, рдкрд┐рдЫрд▓реЗ рдПрдХ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдиреНрдпреБрдЕрд▓ рд▓реЙрдХ рдореЗрдВ рдбрд╛рд▓рдХрд░ред рдЖрд╕рд╛рдиреА рд╕реЗ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЙрджрд╛рд╣рд░рдг рдЬрд▓реНрджреА рд╕реЗ рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдЧреЗ рд╕реНрдХреИрди рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ рдкрд┐рдЫрд▓реЗ рдкреГрд╖реНрда рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ "рдЕрдЧрд▓рд╛" рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╢реБрд░реВ рдХрд░рдирд╛ рдерд╛ред

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХрд▓ рдереНрд░реЗрдбреЗрдб рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрд░реЛрдо рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рд╣реИ, рдФрд░ рд╡реЗрдм рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдЖрдкрдХреЛ рджреЛ рдХреНрд░реЛрдо рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рдЙрдирдХреЗ рдмреАрдЪ рд╕рдВрдЪрд╛рд░ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдорд╛рд╕реНрдЯрд░ рдХреЛ рдбреЛрдо рдПрдХреНрд╕реЗрд╕ рдорд┐рд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдпреВрдЖрдИ рдереНрд░реЗрдб рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд┐рдП рдмрд┐рдирд╛ рдкреНрд░реЛрд╕реЗрд╕рд░ рдЧрд╣рди рд╕рд╛рдорд╛рди рдХреЗ рд▓рд┐рдП рдЙрдк-рдереНрд░реЗрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

"рд╡реЗрдм рд╡рд░реНрдХрд░" рд╢рдмреНрдж рдХреЗ рд╕рд╛рде рдпрд╣ рдХрдерди рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдКрдкрд░ рджрд┐рдП рдЧрдП рдХрдердиреЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрджрд░реНрдн рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рд╡реЗрдм рд╡рд░реНрдХрд░реНрд╕ рдХреЗ рдкрд╛рд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ DOM рддрдХ рдХреЛрдИ рдкрд╣реБрдВрдЪ рдирд╣реАрдВ рд╣реИ, рдФрд░ PDF.js рдореБрдЦреНрдп рдзрд╛рдЧреЗ рдкрд░ рдкреЗрдВрдЯрд┐рдВрдЧ рдХрд░рддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдорддрд▓рдм рд╣реИ рдХреНрд░реЛрдо рдХреА рдкреНрд░рддрд┐рдкрд╛рджрди рдкреНрд░рдХреНрд░рд┐рдпрд╛? рдлрд┐рд░ рднреА DOM рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рдореБрдЦреНрдп рдереНрд░реЗрдб рд╕реЗ рд╣реИ, рд╡реЗрдм рд╡рд░реНрдХрд░ рд╕реЗ рдирд╣реАрдВред

рдкрд┐рдЫрд▓реЗ рдПрдХ рд╕реЗ рдкрд╣рд▓реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд░рд╕реНрд╕рд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ рдерд╛ - рдереНрд░реЗрдбрд┐рдВрдЧ рдпрд╛ рдирд╣реАрдВ, рдкрд┐рдЫрд▓реЗ рдПрдХ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдиреНрдпреБрдЕрд▓ рд▓реЙрдХ рдореЗрдВ рдбрд╛рд▓рдХрд░ред

рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ "рд╕рдВрдЪрд╛рд▓рди" рд╕реЗ рдЖрдкрдХрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рддрд╛рддреНрдкрд░реНрдп рд╣реИ, рдХреНрдпрд╛ рдпрд╣ рдПрдкреАрдЖрдИ рдХреЗ render() рдХреЙрд▓ рдХрд╛ рдЬреАрд╡рдирдХрд╛рд▓ рд╣реИ?

@oddjobz рдореИрдВ рдмрд╕ рдлрд┐рд░ рд╕реЗ рдзрд╛рдЧрд╛

@oddjobz , @rpedela , @badams , @pholisma , @ subhadip-codeclouds рдХреНрдпрд╛ рдЖрдк рд╕рдЯреАрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЖрдк) рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рд╕рдЯреАрдХ рдЪрд░рдг рдЬрдм рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдкреАрдбреАрдПрдл рд╕рд╣рд┐рдд)? рдпрджрд┐ рдпрд╣ рдПрдХ рдХрд╕реНрдЯрдо рд╕рдорд╛рдзрд╛рди рд╣реИ, рддреЛ рдЗрд╕реЗ рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд▓рд┐рдВрдХ рдкреНрд░рджрд╛рди рдХрд░реЗрдВред

рдареАрдХ рд╣реИ, рдпрд╣ рдкреНрд░рд╢реНрди рдореЗрдВ рдХреЛрдб рд╣реИ - рдЖрдк рдЬрдЧрд╣ рдореЗрдВ рдлрд┐рдХреНрд╕ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рддрд╛рд▓рд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдореЗрд░реА рджрд┐рдирдЪрд░реНрдпрд╛ рдРрд╕реА рд╣реИ;


this.locked = true;
PDFJS.getDocument(path+doc_id).then(function(pdf) {
    $('#pdf-canvas-pages').text(pdf.numPages);
    self.pages = pdf.numPages;
    self.page = 1;
    self.pdf = pdf;
    pdf.getPage(1).then(function(page) { self.turnpage(); });
})

turnpage: function() {
    var self = this;
    self.pdf.getPage(self.page).then(function(page) {
        var canvas = document.getElementById('pdf-canvas');
        var ctx = canvas.getContext('2d');
        var unscaledViewport = page.getViewport(1);
        canvas.width = $('#pdf-canvas').width();
        var scale = canvas.width / unscaledViewport.width;
        var viewport = page.getViewport(scale);
        canvas.height = viewport.height;
        var renderContext = { canvasContext: ctx, viewport: viewport };
        page.render(renderContext);
        $('#pdf-canvas-page').text(self.page);
        self.locked = false;
    });
},

рд╣рд╛рдВ, рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЙрд╕ рд╕рдордп рдмрд╛рдд рдХреЛ рдЖрдЧреЗ рдирд╣реАрдВ рдмрдврд╝рд╛рдпрд╛, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рднреА рдмрдбрд╝реА рдЕрдирд┐рдЪреНрдЫрд╛ рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИ рдХрд┐ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИ - рдЕрдХреЗрд▓реЗ рдЪрд▓реЛ рдХрд┐ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдКрдкрд░ рд╕реНрдирд┐рдкреЗрдЯ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ https://github.com/mozilla/pdf.js/pull/6571 рджреНрд╡рд╛рд░рд╛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛

рдЦреИрд░, рдореИрдВ рдХреНрдпрд╛ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ, рдореИрдВ 2016 рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ рдЕрднреА рднреА рд╕рдорд╕реНрдпрд╛ рдереАред рдореБрдЭреЗ рдЙрд╕ рд╕рдордп (рдмрд╛рд░-рдмрд╛рд░) рдмрддрд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдпрд╛рдж рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред (рдФрд░ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреА рддрд░рд╣, рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рдерд╛ рдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд╣реАрдВ рдерд╛)

рд╡реИрд╕реЗ рднреА, рд╡рд╣рд╛рдБ рдХрд┐рд╕реА рдХреЛ рднреА рдПрдХ рд╣реА рдореБрджреНрджреЗ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдКрдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рддрд╛рд▓рд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдкрдбрд╝рддрд╛ рд╣реИ .. рдпрд╣ рдХреЗрд╡рд▓ рджреЛ рд╣реИ ...

@yurydelendik рдпрд╣ рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ (рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рд╡рд┐рдВрдбреЛрдЬ 7 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ) рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд▓рдЧрд╛рддрд╛рд░ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ OSX рдкрд░ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд▓рдЧрд╛рддрд╛рд░ 100% рдирд╣реАрдВред

рд╣рдо рдХрд┐рд╕реА рднреА рдХрд╕реНрдЯрдо рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдмрд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ

<iframe
    style="height: 650px; width: 600px"
    src="/path/to/pdfjs/web/viewer.html?file=/path/to/file.pdf"
/>

рдпрд╣ рдХрдИ рдХрд╛рд░рдХреЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдХреНрдпрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдХреЛрдИ рдЕрдиреНрдп рдмреЛрд▓реНрдб рдЯреЗрдХреНрд╕реНрдЯ рд╣реИ, рдФрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЬрд╝реВрдо рд╕реНрддрд░ (рдЬрд╝реВрдо рдЗрди рдФрд░ рдЖрдЙрдЯ рдХрднреА-рдХрднреА рдЗрд╕реЗ рдареАрдХ рдХрд░ рджреЗрдЧрд╛) рдореИрдВрдиреЗ рдпрд╣ рднреА рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред рдФрд░ рдореБрджреНрд░рдг, рдкреАрдбреАрдПрдл рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпреЛрдВрдХрд┐ pdf.js рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ)ред

рд╣рдордиреЗ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдФрд░ рд╕реАрдзреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдорд╢реАрди рдкрд░ рдлрд╝рд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рд╕реЗ рджреВрд░ рдЬрд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдПрдХ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдкрд░реАрдХреНрд╖рдг-рдорд╛рдорд▓реЗ рдХреЗ рд╕рд╛рде рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдЕрдкрдирд╛ рдкреВрд░рд╛ рджрд┐рди рдХрд▓ рдЗрд╕ рдмрдЧ рдХрд╛ рдкреАрдЫрд╛ рдХрд░рддреЗ рд╣реБрдП рдмрд┐рддрд╛рдпрд╛ред

@badams , рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЬрд╝реВрдо рдореЗрд░реЗ рд▓рд┐рдП рднреА рдПрдХ рдлрд┐рдХреНрд╕ рдерд╛, рдЬреИрд╕рд╛ рдХрд┐ рдПрдХ рдкреЗрдЬ рдерд╛ рдЕрдЧрд▓рд╛ / рдкреНрд░рдЪрд▓рд┐рддред рдореИрдВ рднреА рдЗрд╕ рдзрд╛рд░рдгрд╛ рдХреЗ рддрд╣рдд рдерд╛ рдХрд┐ рдЭреБрдХрдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдФрд░ рдЕрдзрд┐рдХ рдмрдврд╝ рдЬрд╛рддреА рд╣реИред

рдореИрдВ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдкрд░реАрдХреНрд╖рдг рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд╕рд╛рде рдЖрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛

@badams рдзрдиреНрдпрд╡рд╛рдж, рдХреБрдЫ рднреА рдЬреЛ рд╕рднреА рд╡рд┐рд╡рд┐рдзрддрд╛рдУрдВ рдХреЛ рд▓реЗрддрд╛ рд╣реИ рдЬрдм рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдкреНрд░рдХрд╛рд╢рд┐рдд рдСрдирд▓рд╛рдЗрди рдХрд╛рдо рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ (рдЖрдк рдЬреАрдердм рд░реЗрдкреЛ рдХреА рдЬреАрдПрдЪ-рдкреЗрдЬ рд╢рд╛рдЦрд╛ рдореЗрдВ рдкреВрд░рд╛ рдЙрджрд╛рд╣рд░рдг рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред

рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВ,

рдореБрдЭреЗ рдпрд╣ рдкреВрд░реА рдХрд╣рд╛рдиреА рдареАрдХ рдирд╣реАрдВ рд▓рдЧреАред
рдХреНрдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рдХреЛрдИ рдлрд┐рдХреНрд╕ рд╣реИ? рдпрд╛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЬреЛ рдореБрдЭреЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

рд╕рд╛рджрд░,
рддрд╛рд░рд╕реАрд╕реЛ рдкрд░реЗрд░рд╛

рдореБрдЭреЗ рдпрд╣ рдкреВрд░реА рдХрд╣рд╛рдиреА рдареАрдХ рдирд╣реАрдВ рд▓рдЧреАред

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдХреЛрдИ рдХрд░рддрд╛ рд╣реИред

рдмрдВрдж рд╣реЛрдиреЗ рдХрд╛ рдпрд╣ рдзрд╛рдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдЯреАрдХ рдХрджрдо рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рдФрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдХреБрдЫ рднреНрд░рд╛рдордХ рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреЗ рдХрд╛рд░рдг)ред рд╣рдо рдЙрдореНрдореАрдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рдорд╕реНрдпрд╛ 100% рдкреНрд░рдЬрдирди рдпреЛрдЧреНрдп рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдЗрд╕реЗ 10 рдмрд╛рд░ рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмрд╛рд░ рджрд┐рдЦрд╛рдИ рджреЗрдирд╛ рдорд╣рд╛рди рд╣реЛрдЧрд╛ред

рд╕рдВрднрд╛рд╡рд┐рдд рдЖрдЗрдЯрдо рдЬреЛ PDF.js рдХреЛ рдЗрд╕ рддрд░рд╣ рдкреНрд░рджрд░реНрд╢рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЗрд╕рдХреЗ рдХреЛрдб рдореЗрдВ рдмрдЧ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:

  • рдПрдХ HTTP рд╕рд░реНрд╡рд░ рдпрд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ HTTP рд░реЗрдВрдЬ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдареАрдХ рд╕реЗ рд╕рдВрднрд╛рд▓ рдирд╣реАрдВ рдкрд╛рддрд╛ рд╣реИ
  • рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдлрд╝реЙрдиреНрдЯ рд▓реЛрдбрд┐рдВрдЧ рдпрд╛ рдХреИрдирд╡рд╛рд╕ рдСрдкрд░реЗрд╢рди рдХреЛ рдареАрдХ рд╕реЗ рдирд╣реАрдВ рд╕рдВрднрд╛рд▓ рд░рд╣рд╛ рд╣реИ
  • рдХрд╕реНрдЯрдо рд╕рдорд╛рдзрд╛рди рдКрдкрд░ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░рддрд╛ рд╣реИ

рдПрдлрдбрдмреНрд▓реНрдпреВрдЖрдИрдбрдмреНрд▓реНрдпреВ рдореБрдЭреЗ рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рдкреАрдбреАрдПрдл.рдЬреЗрдПрд╕ (v1.7.376) рдХреА рддреИрдирд╛рддреА рдХреЗ рд╕рд╛рде рджреБрд░реНрд▓рдн рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реИред рд╣рдорд╛рд░реА рд╕реАрдорд╛ рдЕрдиреБрд░реЛрдз рд╣реИрдВрдбрд▓рд┐рдВрдЧ рд╕рд╣реА рд▓рдЧрддреА рд╣реИред рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдХреНрдпрд╛ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░рд┐рдкреНрд░реЛ рд╕реНрдЯреЗрдкреНрд╕ рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВ ...

рдХреНрд░реЛрдо рдкрд░ рд╣рдорд╛рд░рд╛ рдХреЗрд╡рд▓ рдпрд╣реА рдореБрджреНрджрд╛ рдерд╛, рдЬрд╝реВрдо рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж рдпрд╣ рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ showPreviousViewOnLoad рд╕реЗ false рдФрд░ рдлрд┐рд░ рдХрднреА рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реБрдИред

@TZanke рдЖрдк рд╕реНрдкрд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ showPreviousViewOnLoad рд╣рдЯрд╛рдиреЗ рд╕реЗ рдЬрд╝реВрдо рдХреНрдпреЛрдВ рдмрджрд▓реЗрдЧрд╛? рдзрдиреНрдпрд╡рд╛рдж!

@tonyjin pdf.js рдСрдЯреЛрдЬрд╝реВрдо рдПрдХ рдЬрд╝реВрдо рдорд╛рди рдХреА рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рдореЗрдВ рдмрдЪрд╛рддрд╛ рд╣реИред рдкреГрд╖реНрда рдХреЛ рдкреБрдирдГ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдСрдЯреЛрдЬрд╝реВрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдкрд┐рдЫрд▓реА рдЧрдгрдирд╛ рдХреА рдЧрдИ рдЬрд╝реВрдо рдореВрд▓реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдорд╛рди рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП рдЬрдм рд╣рд░ рдмрд╛рд░ showPreviousViewOnLoad рдСрдЯреЛрдЬрд╝реВрдо рд╕реБрд╡рд┐рдзрд╛ рдЕрдХреНрд╖рдо рд╣реЛ рдЬрд╛рддреА рд╣реИ, рддреЛ рдкреГрд╖реНрда рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдХреЛрдИ рд░реЗрдВрдбрд░ рд╕рдорд╕реНрдпрд╛ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред

@TZanke - рдореИрдВрдиреЗ рдЖрдкрдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореБрджреНрджрд╛ рдЕрднреА рднреА рдХрднреА-рдХрднреА рдкреЙрдк рдЕрдк рд╣реЛрддрд╛ рд╣реИ: ..(

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

patelsumit5192 picture patelsumit5192  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

azetutu picture azetutu  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

SehyunPark picture SehyunPark  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

smit-modi picture smit-modi  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

timvandermeij picture timvandermeij  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ