پرش به محتوا

کتابخانه

دانلود pdfjs-dist و نشانی CDN ایرانی

pdfjs-dist نسخه آماده و استاندارد بسته npm کتابخانه PDF.js موزیلاست. با این کتابخانه می تونی فایل PDF رو مستقیم توی مرورگر باز کنی و صفحه هاش رو روی canvas نشون بدی، بدون افزونه جانبی و بدون فرستادن فایل به سرویس خارجی. برای ساختن نمایشگر PDF توی سایت و پنل های وردپرسی به کار می ره.

نسخه رسمی و بدون تغییر، از منبع رسمی با مجوز Apache-2.0؛ هش هر فایل با منبع بررسی شده است.

آخرین نسخه
۶.۴.۲۹۹
نسخه‌ها در مخزن
۴۴
مجوز
Apache-2.0
آخرین بررسی
آخرین به‌روزرسانی
توضیحات

آخرین نسخه

آخرین نسخه ۶.۴.۲۹۹ آخرین

۱۴٫۲ مگابایت· ۲۰۱ فایل· انتشار

دانلود
نشانی مستقیم فایل اصلی https://mirror.wbweb.ir/npm/pdfjs-dist@6.4.299/build/pdf.min.mjs
کد آماده با SRI <script src="https://mirror.wbweb.ir/npm/pdfjs-dist@6.4.299/build/pdf.min.mjs" integrity="sha256-V0VsjgyB5GvjEXS0me938rn17kbQRBK6YnMgo2dV1MI=" crossorigin="anonymous"></script>

SHA-256: 57456c8e0c81e46be31174b499ef77f2b9f5ee46d04412ba627320a36755d4c2

درباره pdfjs-dist (پی دی اف جی اس)

اگه تا حالا خواسته باشی یه PDF رو دقیقاً همون جایی که می خوای توی صفحه نشون بدی، می دونی که iframe و تگ embed همه جا یکسان رفتار نمی کنن. بعضی مرورگرهای موبایل فقط یه دکمه دانلود نشون می دن و ظاهر نمایشگر هم دست خودت نیست. pdfjs-dist برای همین مشکل به درد می خوره. فایل PDF رو توی جاوااسکریپت می خونه و صفحه ها رو روی canvas می کشه. نتیجه اینه که نمایش توی مرورگرهای مختلف تقریباً شبیه هم می شه و ظاهرش دست خودته.

pdfjs-dist همون بسته توزیعی PDF.js هست؛ پروژه ای که موزیلا برای نمایشگر PDF داخلی فایرفاکس نگه می داره. برای همین لازم نیست سورس پروژه رو بیلد کنی. فقط بسته رو نصب می کنی یا فایل ها رو کنار سایتت می ذاری. پردازش سنگین فایل روی یه worker جدا انجام می شه و صفحه قفل نمی کنه. برای متن قابل انتخاب و جستجو هم می شه یه لایه متنی روی تصویر صفحه انداخت. یه نسخه سازگارتر با مرورگرهای قدیمی هم کنار نسخه اصلی هست. اگه بین مخاطب هات مرورگر کهنه زیاده، سراغ اون برو.

این کتابخانه برای توسعه دهنده ها و تیم هایی خوبه که نمایشگر اختصاصی لازم دارن: پیش نمایش فاکتور و قرارداد توی پنل کاربری، کتاب و جزوه توی سایت آموزشی، یا کاتالوگ محصول توی یه قالب سفارشی. یه نکته ایرانی هم داره. نمایشگرهایی که به سرویس خارجی وصلن، مثلاً iframe از یه سرویس بیرونی، توی روزهای محدودیت اینترنت بین الملل ممکنه کند بشن یا اصلاً باز نشن. وقتی خودِ کتابخانه روی هاست خودته، نمایشگر هم تا وقتی سایتت بالاست کار می کنه.

ولی همه جا به این کتابخانه نیاز نداری. اگه فقط می خوای کاربر PDF رو دانلود کنه، یه لینک ساده کافیه. pdfjs-dist افزونه آماده وردپرس هم نیست. یه کتابخانه است و خودت یا برنامه نویس تیمت باید کدش رو وصل کنید. فایل های بزرگ رو هم بهتره صفحه به صفحه رندر کنی، نه همه رو یکجا.

چند نکته موقع استفاده: فایل اصلی و فایل worker باید هم نسخه باشن، وگرنه خطای ناسازگاری می گیری. اگه PDF روی دامنه دیگه ای باشه، تنظیم CORS رو چک کن. توی PDFهای فارسی معمولاً فونت ها داخل فایل جاسازی شدن و نمایش مشکلی نداره، اما استخراج متن فارسی رو حتماً با چند نمونه واقعی امتحان کن. مجوز کتابخانه Apache هست و استفاده تجاری ازش آزاده، به شرط رعایت شرط های مجوز. نسخه های رسمی و بدون تغییر pdfjs-dist توی مخزن داخلی ما هم در دسترسه و برای دریافتش لازم نیست به منبع خارجی وصل بشی.

راهنمای استفاده

راه انداختن pdfjs-dist توی یه صفحه معمولی چند قدم بیشتر نیست. کد آماده اش پایین همین صفحه هست، اینجا فقط ترتیب کار رو می گم:

  • فایل اصلی کتابخانه و فایل worker رو از همین مخزن بگیر و کنار فایل های سایتت بذار، مثلاً توی پوشه js قالب یا افزونه ات. اگه با npm کار می کنی، بسته pdfjs-dist رو نصب کن و با باندلرت استفاده اش کن.
  • فایل اصلی رو توی صفحه لود کن و مسیر فایل worker رو توی GlobalWorkerOptions.workerSrc بده. مسیر باید درست باشه و فایل worker هم نسخه فایل اصلی باشه.
  • یه تگ canvas توی HTML بذار.
  • با getDocument فایل PDF رو باز کن. ورودیش آدرس فایل یا داده خام فایله.
  • با getPage شماره صفحه رو بگیر، با getViewport اندازه و بزرگنمایی رو تعیین کن و بعدش render رو روی canvas صدا بزن.
  • برای دکمه های قبلی و بعدی، شماره صفحه رو عوض کن و دوباره رندر کن.

توی وردپرس فایل ها رو با wp_enqueue_script توی قالب یا افزونه خودت لود کن و آدرس PDF رو از کتابخانه رسانه بگیر. بعد از اولین تست، کنسول مرورگر رو نگاه کن. بیشتر خطاهای اول کار از مسیر اشتباه worker یا مشکل CORS می آد.

همه نسخه‌ها (۴۴)

نسخه‌های ۶.x ۵ نسخه
  • ۶.۴.۲۹۹ آخرین نسخه ۱۴٫۲ مگابایت·
    دانلودنسخه 6.4.299
    نشانی مستقیم فایل اصلی 6.4.299 https://mirror.wbweb.ir/npm/pdfjs-dist@6.4.299/build/pdf.min.mjs
  • ۶.۳.۲۸۹ ۱۴٫۱ مگابایت·
    دانلودنسخه 6.3.289
    نشانی مستقیم فایل اصلی 6.3.289 https://mirror.wbweb.ir/npm/pdfjs-dist@6.3.289/build/pdf.min.mjs
  • ۶.۲.۱۰۸ ۱۴ مگابایت·
    دانلودنسخه 6.2.108
    نشانی مستقیم فایل اصلی 6.2.108 https://mirror.wbweb.ir/npm/pdfjs-dist@6.2.108/build/pdf.min.mjs
  • ۶.۱.۲۰۰ ۱۳٫۹ مگابایت·
    دانلودنسخه 6.1.200
    نشانی مستقیم فایل اصلی 6.1.200 https://mirror.wbweb.ir/npm/pdfjs-dist@6.1.200/build/pdf.min.mjs
  • ۶.۰.۲۲۷ ۱۳٫۸ مگابایت·
    دانلودنسخه 6.0.227
    نشانی مستقیم فایل اصلی 6.0.227 https://mirror.wbweb.ir/npm/pdfjs-dist@6.0.227/build/pdf.min.mjs
نسخه‌های ۵.x ۱۵ نسخه
  • ۵.۷.۲۸۴ ۱۳٫۹ مگابایت·
    دانلودنسخه 5.7.284
    نشانی مستقیم فایل اصلی 5.7.284 https://mirror.wbweb.ir/npm/pdfjs-dist@5.7.284/build/pdf.min.mjs
  • ۵.۶.۲۰۵ ۱۵٫۸ مگابایت·
    دانلودنسخه 5.6.205
    نشانی مستقیم فایل اصلی 5.6.205 https://mirror.wbweb.ir/npm/pdfjs-dist@5.6.205/build/pdf.min.mjs
  • ۵.۵.۲۰۷ ۱۵٫۷ مگابایت·
    دانلودنسخه 5.5.207
    نشانی مستقیم فایل اصلی 5.5.207 https://mirror.wbweb.ir/npm/pdfjs-dist@5.5.207/build/pdf.min.mjs
  • ۵.۴.۶۲۴ ۱۵٫۲ مگابایت·
    دانلودنسخه 5.4.624
    نشانی مستقیم فایل اصلی 5.4.624 https://mirror.wbweb.ir/npm/pdfjs-dist@5.4.624/build/pdf.min.mjs
  • ۵.۴.۵۳۰ ۱۵ مگابایت·
    دانلودنسخه 5.4.530
    نشانی مستقیم فایل اصلی 5.4.530 https://mirror.wbweb.ir/npm/pdfjs-dist@5.4.530/build/pdf.min.mjs
  • ۵.۴.۴۴۹ ۱۴٫۹ مگابایت·
    دانلودنسخه 5.4.449
    نشانی مستقیم فایل اصلی 5.4.449 https://mirror.wbweb.ir/npm/pdfjs-dist@5.4.449/build/pdf.min.mjs
  • ۵.۴.۳۹۴ ۱۴٫۷ مگابایت·
    دانلودنسخه 5.4.394
    نشانی مستقیم فایل اصلی 5.4.394 https://mirror.wbweb.ir/npm/pdfjs-dist@5.4.394/build/pdf.min.mjs
  • ۵.۴.۲۹۶ ۱۴٫۷ مگابایت·
    دانلودنسخه 5.4.296
    نشانی مستقیم فایل اصلی 5.4.296 https://mirror.wbweb.ir/npm/pdfjs-dist@5.4.296/build/pdf.min.mjs
  • ۵.۴.۱۴۹ ۱۴٫۵ مگابایت·
    دانلودنسخه 5.4.149
    نشانی مستقیم فایل اصلی 5.4.149 https://mirror.wbweb.ir/npm/pdfjs-dist@5.4.149/build/pdf.min.mjs
  • ۵.۴.۵۴ ۱۴٫۳ مگابایت·
    دانلودنسخه 5.4.54
    نشانی مستقیم فایل اصلی 5.4.54 https://mirror.wbweb.ir/npm/pdfjs-dist@5.4.54/build/pdf.min.mjs
  • ۵.۳.۹۳ ۱۴٫۱ مگابایت·
    دانلودنسخه 5.3.93
    نشانی مستقیم فایل اصلی 5.3.93 https://mirror.wbweb.ir/npm/pdfjs-dist@5.3.93/build/pdf.min.mjs
  • ۵.۳.۳۱ ۱۴٫۱ مگابایت·
    دانلودنسخه 5.3.31
    نشانی مستقیم فایل اصلی 5.3.31 https://mirror.wbweb.ir/npm/pdfjs-dist@5.3.31/build/pdf.min.mjs
  • ۵.۲.۱۳۳ ۱۴٫۱ مگابایت·
    دانلودنسخه 5.2.133
    نشانی مستقیم فایل اصلی 5.2.133 https://mirror.wbweb.ir/npm/pdfjs-dist@5.2.133/build/pdf.min.mjs
  • ۵.۱.۹۱ ۱۴٫۱ مگابایت·
    دانلودنسخه 5.1.91
    نشانی مستقیم فایل اصلی 5.1.91 https://mirror.wbweb.ir/npm/pdfjs-dist@5.1.91/build/pdf.min.mjs
  • ۵.۰.۳۷۵ ۱۴٫۱ مگابایت·
    دانلودنسخه 5.0.375
    نشانی مستقیم فایل اصلی 5.0.375 https://mirror.wbweb.ir/npm/pdfjs-dist@5.0.375/build/pdf.min.mjs
نسخه‌های ۴.x ۱۳ نسخه
  • ۴.۱۰.۳۸ ۱۵٫۵ مگابایت·
    دانلودنسخه 4.10.38
    نشانی مستقیم فایل اصلی 4.10.38 https://mirror.wbweb.ir/npm/pdfjs-dist@4.10.38/build/pdf.min.mjs
  • ۴.۹.۱۵۵ ۱۵٫۴ مگابایت·
    دانلودنسخه 4.9.155
    نشانی مستقیم فایل اصلی 4.9.155 https://mirror.wbweb.ir/npm/pdfjs-dist@4.9.155/build/pdf.min.mjs
  • ۴.۹.۱۲۴ ۱۵٫۴ مگابایت·
    دانلودنسخه 4.9.124
    نشانی مستقیم فایل اصلی 4.9.124 https://mirror.wbweb.ir/npm/pdfjs-dist@4.9.124/build/pdf.min.mjs
  • ۴.۸.۶۹ ۱۵٫۳ مگابایت·
    دانلودنسخه 4.8.69
    نشانی مستقیم فایل اصلی 4.8.69 https://mirror.wbweb.ir/npm/pdfjs-dist@4.8.69/build/pdf.min.mjs
  • ۴.۷.۷۶ ۱۵٫۳ مگابایت·
    دانلودنسخه 4.7.76
    نشانی مستقیم فایل اصلی 4.7.76 https://mirror.wbweb.ir/npm/pdfjs-dist@4.7.76/build/pdf.min.mjs
  • ۴.۶.۸۲ ۱۵٫۲ مگابایت·
    دانلودنسخه 4.6.82
    نشانی مستقیم فایل اصلی 4.6.82 https://mirror.wbweb.ir/npm/pdfjs-dist@4.6.82/build/pdf.min.mjs
  • ۴.۵.۱۳۶ ۱۵٫۲ مگابایت·
    دانلودنسخه 4.5.136
    نشانی مستقیم فایل اصلی 4.5.136 https://mirror.wbweb.ir/npm/pdfjs-dist@4.5.136/build/pdf.min.mjs
  • ۴.۴.۱۶۸ ۱۵٫۱ مگابایت·
    دانلودنسخه 4.4.168
    نشانی مستقیم فایل اصلی 4.4.168 https://mirror.wbweb.ir/npm/pdfjs-dist@4.4.168/build/pdf.min.mjs
  • ۴.۳.۱۳۶ ۱۵ مگابایت·
    دانلودنسخه 4.3.136
    نشانی مستقیم فایل اصلی 4.3.136 https://mirror.wbweb.ir/npm/pdfjs-dist@4.3.136/build/pdf.min.mjs
  • ۴.۲.۶۷ ۱۵٫۲ مگابایت·
    دانلودنسخه 4.2.67
    نشانی مستقیم فایل اصلی 4.2.67 https://mirror.wbweb.ir/npm/pdfjs-dist@4.2.67/build/pdf.min.mjs
  • ۴.۱.۳۹۲ ۱۲٫۹ مگابایت·
    دانلودنسخه 4.1.392
    نشانی مستقیم فایل اصلی 4.1.392 https://mirror.wbweb.ir/npm/pdfjs-dist@4.1.392/build/pdf.min.mjs
  • ۴.۰.۳۷۹ ۱۲٫۵ مگابایت·
    دانلودنسخه 4.0.379
    نشانی مستقیم فایل اصلی 4.0.379 https://mirror.wbweb.ir/npm/pdfjs-dist@4.0.379/build/pdf.min.mjs
  • ۴.۰.۲۶۹ ۱۲٫۴ مگابایت·
    دانلودنسخه 4.0.269
    نشانی مستقیم فایل اصلی 4.0.269 https://mirror.wbweb.ir/npm/pdfjs-dist@4.0.269/build/pdf.min.mjs
نسخه‌های ۳.x ۴ نسخه
  • ۳.۱۱.۱۷۴ ۱۲٫۶ مگابایت·
    دانلودنسخه 3.11.174
    نشانی مستقیم فایل اصلی 3.11.174 https://mirror.wbweb.ir/npm/pdfjs-dist@3.11.174/build/pdf.min.js
  • ۳.۷.۱۰۷ ۱۱٫۹ مگابایت·
    دانلودنسخه 3.7.107
    نشانی مستقیم فایل اصلی 3.7.107 https://mirror.wbweb.ir/npm/pdfjs-dist@3.7.107/build/pdf.min.js
  • ۳.۴.۱۲۰ ۱۵٫۵ مگابایت·
    دانلودنسخه 3.4.120
    نشانی مستقیم فایل اصلی 3.4.120 https://mirror.wbweb.ir/npm/pdfjs-dist@3.4.120/build/pdf.min.js
  • ۳.۰.۲۷۹ ۱۵٫۴ مگابایت·
    دانلودنسخه 3.0.279
    نشانی مستقیم فایل اصلی 3.0.279 https://mirror.wbweb.ir/npm/pdfjs-dist@3.0.279/build/pdf.min.js
نسخه‌های ۲.x ۷ نسخه
  • ۲.۱۶.۱۰۵ ۱۵٫۴ مگابایت·
    دانلودنسخه 2.16.105
    نشانی مستقیم فایل اصلی 2.16.105 https://mirror.wbweb.ir/npm/pdfjs-dist@2.16.105/build/pdf.min.js
  • ۲.۱۴.۳۰۵ ۱۶٫۷ مگابایت·
    دانلودنسخه 2.14.305
    نشانی مستقیم فایل اصلی 2.14.305 https://mirror.wbweb.ir/npm/pdfjs-dist@2.14.305/build/pdf.min.js
  • ۲.۱۲.۳۱۳ ۱۷ مگابایت·
    دانلودنسخه 2.12.313
    نشانی مستقیم فایل اصلی 2.12.313 https://mirror.wbweb.ir/npm/pdfjs-dist@2.12.313/build/pdf.min.js
  • ۲.۱۱.۳۳۸ ۱۶٫۷ مگابایت·
    دانلودنسخه 2.11.338
    نشانی مستقیم فایل اصلی 2.11.338 https://mirror.wbweb.ir/npm/pdfjs-dist@2.11.338/build/pdf.min.js
  • ۲.۶.۳۴۷ ۹٫۷ مگابایت·
    دانلودنسخه 2.6.347
    نشانی مستقیم فایل اصلی 2.6.347 https://mirror.wbweb.ir/npm/pdfjs-dist@2.6.347/build/pdf.min.js
  • ۲.۵.۲۰۷ ۷٫۵ مگابایت·
    دانلودنسخه 2.5.207
    نشانی مستقیم فایل اصلی 2.5.207 https://mirror.wbweb.ir/npm/pdfjs-dist@2.5.207/build/pdf.min.js
  • ۲.۰.۴۸۹ قدیمی‌ترین نسخه ۵٫۴ مگابایت·
    دانلودنسخه 2.0.489
    نشانی مستقیم فایل اصلی 2.0.489 https://mirror.wbweb.ir/npm/pdfjs-dist@2.0.489/build/pdf.min.js

پرسش‌های رایج

  • PDF.js خودِ پروژه متن باز موزیلاست و pdfjs-dist نسخه آماده و توزیع شده همون پروژه به شکل بسته npm. فایل های بیلدشده توشه، پس لازم نیست سورس رو کامپایل کنی. برای استفاده توی سایت یا اپ، همین بسته رو برمی داری و به صفحه وصل می کنی.

  • نه. اگه فقط یه PDF ساده می خوای نشون بدی، تگ embed یا یه افزونه آماده کافیه. pdfjs-dist وقتی به درد می خوره که نمایشگر اختصاصی، ظاهر یکدست توی مرورگرها یا کنترل کامل روی صفحه ها و دکمه ها بخوای و کدنویسی هم برات مشکلی نباشه.

  • معمولاً یکی از سه دلیل داره: مسیر workerSrc اشتباهه، فایل worker با فایل اصلی هم نسخه نیست، یا سرور فایل رو با نوع محتوای درست تحویل نمی ده. اول توی تب Network مرورگر ببین فایل worker لود می شه یا نه، بعد نسخه هر دو فایل رو با هم مقایسه کن.

  • معمولاً بله، چون فونت ها توی خودِ PDF جاسازی شدن و کتابخانه همون ها رو رندر می کنه. اگه فونت جاسازی نشده باشه، ممکنه ظاهر فرق کنه. اگه می خوای متن فارسی رو استخراج یا جستجو کنی، اول با چند فایل واقعی خودت امتحانش کن.

  • مجوز Apache استفاده تجاری رو اجازه می ده. فقط باید اطلاعیه مجوز و حق نشر رو نگه داری و اگه توی فایل ها تغییری دادی، طبق شرط های مجوز مشخصش کنی. اگه پروژه ات حساسیت حقوقی داره، متن کامل مجوز رو یه بار بخون.

چیزی که لازم دارید اینجا نیست؟

نام کتابخانه، افزونه یا قالب را بفرستید؛ پس از بررسی، نسخه‌های رسمی آن به مخزن اضافه می‌شود.