شيفرة هذه الصفحة لم تبدأ العمل.

فتح index.html مباشرة من مجلد يمنع المتصفح من تحميل وحدات JavaScript، فلا يحدث شيء عند اختيار صورة. قدّم المجلد عبر HTTP بدلا من ذلك:

powershell -ExecutionPolicy Bypass -File serve.ps1

ثم افتح http://localhost:8080/.

ضاغط الصور — اضغط إلى حجم تحدّده بنفسك

حدّد الحجم، ويتكفّل هو بالباقي.

اللغة: العربية
عرض الشيفرة المصدرية
صورك لا تُرفع أبدا. لا يوجد خادم.

يجري الضغط داخل متصفحك أنت، على جهازك أنت، بالمرمِّزات التي يأتي بها المتصفح أصلاً. لا تملك هذه الأداة أي وظيفة شبكية على الإطلاق — لا شيء تجلبه ولا شيء ترسله — ولا يقف خلف هذه الصفحة خادم تُرسَل إليه صورة، حتى لو كان فيها ما يرسلها.

فحص حي: جارٍ الفحص…

دون اتصال: جارٍ الفحص…

لا داعي لأن تصدّقنا: افتح أدوات المطوّر، وراقب تبويب «الشبكة»، ثم اضغط صورة. لن يحمل أي طلب صورةً ولا مصغَّرة ولا اسم ملف ولا بايتاً واحداً مما اخترته. أو اقطع الاتصال بالإنترنت واضغط صورة رغم ذلك.

1 اختر الصور

2 قل كم يجوز أن يكون حجمها

هنا يقلب الضاغطون الآخرون الأمر رأساً على عقب: يعطونك مِزلاج جودة ويتركونك تخمّن أي إعداد سيحطّ تحت الحدّ المفروض عليك. سمِّ الحدّ بدلاً من ذلك، فتبحث الأداة عن أعلى جودة تتّسع له — ثم تنفق ما بقي من الميزانية بدل أن تناولك ملفاً بنصف الحجم الذي طلبته.

يجوز له تصغير الصورة إن اضطر لا يُلجأ إليه إلا متى كان على الجودة وحدها أن تهبط دون الحدّ الذي يبدأ الضغط عنده في الظهور. وتحت ذلك الحدّ تكون بكسلات أقل وجيدة أحسن منظراً من بكسلات أكثر ومُفسَدة. أطفئ هذا للإبقاء على الأبعاد كما هي بالضبط ودفع ثمن الحجم الضيّق من الجودة بدلاً منها.

بماذا يُسمح له كي يبلغه

3 اضغط

عرض بصيغة Markdown

كيف تضغط صورة إلى حجم بعينه

  1. اختر صورك. أفلِتها على المُنتقي أو اخترها يدوياً. يقرؤها المتصفح من قرصك مباشرة، ولا يُرسَل شيء إلى أي مكان أثناء ذلك.
  2. اكتب الحجم المطلوب منك. 100 KB لاستمارة الرفع التي ترفض صورتك مرة بعد مرة، و500 KB لبوابة التقديم، و2 MB لصفحة يجب أن تُحمَّل بسرعة. والأحجام الأربعة الشائعة أزرار جاهزة.
  3. اضغط «اضغط إلى الحجم المطلوب». تُرمَّز كل صورة عدة مرات بينما تضيّق الأداة على أعلى جودة تتّسع للحجم. وما كان دون الحجم المطلوب أصلاً يُترَك كما هو تماماً.
  4. انظر ماذا كلّف ذلك، ثم نزِّل. تقول كل نتيجة بأي صيغة كُتِبت، وبأي جودة، وهل تغيّرت الأبعاد، وكم تطابق الأصل حين يُقاس. و«قارِن» يضع الصورتين جنباً إلى جنب.

النسخة الأطول

كيف تضغط صورة إلى حجم ملف محدد بالضبط استمارةُ رفع تريد 500 كيلوبايت وصورتُك 4 ميغابايت. ماذا يكلّف حدُّ الحجم فعلاً، وأيَّ إعداد تحرّك أولاً، ولماذا لا يصغر ملف PNG كما يصغر ملف JPEG.

أسئلة

هل تُرفع صورتي إلى أي مكان؟

لا. يفك متصفحك أنت ترميز الملف ويضغطه ويقيسه على جهازك أنت، بمرمِّزات JPEG وPNG وWebP التي يأتي بها المتصفح أصلاً. لا تملك هذه الأداة أي وظيفة شبكية على الإطلاق — فهي لا تجلب شيئاً ولا ترسل شيئاً — وContent-Security-Policy الخاصة بالصفحة تُسمّي كل عنوان يجوز لها الاتصال به، وليس واحد منها لنا.

كيف يبلغ حجماً محدّداً بالضبط؟

بالمحاولة. لا توجد معادلة تحوّل إعداد الجودة إلى عدد بايتات — فذلك متوقّف على الصورة نفسها تماماً — فتُرمّز الأداة الصورة عدة مرات وتبحث عن الجواب. تبدأ من أعلى مدى الجودة وتضيّق بالتنصيف، فتجد أعلى جودة تتّسع للحجم في نحو ثمانية ترميزات. وكل حجم تراه على الصفحة ملف مرمَّز فعلاً، لا تقديرٌ له.

ماذا تعني «أقل خسارة ممكنة» هنا بالضبط؟

ثلاثة أشياء بعينها. أولاً، الصورة التي هي دون حجمك المطلوب أصلاً تمرّ بايتاً بايتاً بلا إعادة ترميز. ثانياً، تُنفَق الجودة قبل الدقة، ولا تنزل إلا إلى حدٍّ تبدأ عنده آثار الضغط في الظهور — وبعد تلك النقطة تصغّر الأداة الصورة وترفع الجودة من جديد، لأن بكسلات أقل وجيدة أحسن منظراً من بكسلات أكثر ومُفسَدة. ثالثاً، متى وُجدت نتيجة تتّسع للحجم عاد البحث يصعد حتى تُستهلك الميزانية، فلا تحصل على ملف بحجم 300 KB وقد طلبت 500 KB.

ما رقما SSIM وPSNR على كل نتيجة؟

هما قياس لما كلّفه الضغط، يُؤخذ بفك ترميز النتيجة ومقارنتها بالصورة الأصلية. يقارن SSIM السطوع والتباين والبنية موضعياً، وهو أقرب بكثير إلى ما تعترض عليه العين من عدّ البكسلات المتغيّرة؛ وفوق 0.98 تقريباً يصعب التفريق بين الاثنتين جنباً إلى جنب. أما PSNR فهو الرقم التقليدي بالديسيبل. ويُحسَب كلاهما على جهازك، ويُعرَضان معاً حتى يكون ادعاء قلة الخسارة قابلاً للتحقق لا مجرد دعوى.

ما الصيغ التي يقرؤها ويكتبها؟

يقرأ كل ما يستطيع متصفحك فك ترميزه، وهو عملياً JPEG وPNG وWebP وGIF وBMP و— على معظم المتصفحات الحالية — AVIF. ويكتب JPEG وPNG وWebP، لأن هذه هي المرمِّزات التي تأتي بها المتصفحات. وعلى وضع «تلقائي» يبقي على الصيغة التي وصل بها ملفك، ولا ينتقل إلى WebP إلا حين يكون الإبقاء عليها مؤدياً إلى تصغير أو إلى هبوط ظاهر في الجودة.

لماذا لا يستطيع ضغط ملف PNG كثيراً؟

لأن PNG بلا خسارة: ليس فيه مقبض جودة يُدار. والسبيل الوحيد إلى تصغير ملف PNG هو إعطاؤه بكسلات أقل أو ألواناً أقل، فحين تختار PNG تبلغ الأداة الحجم المطلوب بالتصغير وحده. فإن كانت الصورة فوتوغرافية، فسيقترب JPEG أو WebP من حجمك المطلوب أكثر بكثير، وبجودة ترى بنفسك أنها سليمة — وإن كانت شعاراً أو لقطة شاشة فيها شفافية، فإن WebP يبقي على الشفافية التي كان JPEG سيملؤها بالأبيض.

هل يزيل ضغطُ الصورة بياناتِ EXIF وGPS منها؟

نعم، كأثر جانبي. فالضغط يعني فك ترميز الصورة إلى بكسلات ثم إعادة ترميز تلك البكسلات، ولوحة البكسلات لا تحمل وسوماً، فالموقع وطراز الكاميرا والأوقات وكل ما عداها لا تُكتَب ببساطة في الملف الجديد. وإن أردت البيانات الوصفية زائلة والصورة على حالها، فاستخدم عارض EXIF ومُزيله بدلاً من هذا — فهو يعيد كتابة الحاوية دون إعادة ضغط أي شيء.

هل هو مجاني، وهل أحتاج إلى حساب؟

هو مجاني، ولا حساب ولا تسجيل دخول ولا فترة تجريبية ولا علامة مائية. ولا حدّ لعدد الملفات ولا لأحجامها كذلك، إذ لا خادم يدفع ثمنها — فالعمل يجري على جهازك أنت. ويحمل الموقع إعلانات، وهي ما يدفع تكاليفه؛ ولا يُعطى المعلنون شيئاً عن صورك.

هل يعمل دون اتصال؟

نعم. حمِّل الصفحة مرة، ثم اقطع اتصالك بالإنترنت وستظل تعمل. وهذه أيضاً أبسط طريقة لإثبات أنه لا يُرفع شيء: فأداةٌ ترسل صورك بعيداً لتُضغَط كانت ستتوقف في اللحظة التي تقطع فيها الاتصال.