کتابخانه رایگان PHP برای تبدیل یک وبصفحه به تصویر یا PDF
کتابخانه منبع باز PHP که به توسعهدهندگان نرمافزار اجازه میدهد یک وبصفحه را به تصویر یا PDF تبدیل کنند تنها با چند خط کد PHP.
در عصر دیجیتال امروز، توسعه وب و طراحی بهقدر پیش از این مهم شدهاند. یک از جنبههای اساسی این فرآیند اطمینان از اینکه صفحات وب بهدرستی در مرورگرها و دستگاههای مختلف نمایش داده شود و کار میکند. گرفتن اسکرینشات از صفحات وب و خروجی آنها به قالبهای دیگر یک فرآیند بسیار مفید و پیچیده است. یکی از ابزارهایی که این کار را برای توسعهدهندگان ساده میکند Browsershot است. این کتابخانه یک API ساده در اختیار توسعهدهندگان قرار میدهد تا بهسادگی اسکرینشات بگیرند. این کار پیچیدگیهای پیکربندی یک مرورگر سر را حذف میکند و یک واسط کاربری تمیز و ساده در اختیار میگذارد.
Browsershot یک کتابخانه PHP محبوب است که به توسعهدهندگان امکان میدهد اسکرینشاتهای با کیفیت بالا از صفحات وب بگیرند و آنها را بهصورت یک وبصفحه، تصویر یا PDF تنها با چند خط کد تبدیل کنند. این کتابخانه از قدرت Puppeteer بهره میبرد؛ یک کتابخانه Node.js توسعه داده شده توسط گوگل که یک مرورگر Chrome یا Chromium بدون سر را کنترل میکند تا با صفحات وب تعامل داشته باشد و اسکرینشات بگیرد. توسعهدهندگان میتوانند بهراحتی فرآیند گرفتن اسکرینشات وبسایت را خودکار کنند، زمان و انرژی زیادی را صرفهجویی کنند. این ویژگی مخصوصاً برای کاربرانی مفید است که نیاز به گرفتن اسکرینشات از چندین صفحه وب یا انجام تست دگرگونی بصری (visual regression testing) مداوم دارند.
کتابخانه Browsershot مجموعه گستردهای از گزینههای پیکربندی برای سفارشیسازی فرآیند تولید اسکرینشات در اختیار میگذارد. توسعهدهندگان میتوانند سایز viewport را تنظیم کنند، تاخیر پیش از گرفتن اسکرینشات را تنظیم کنند، خروجی را بهصورت فرمت (مثلاً PNG یا JPEG) تعریف کنند، اسکرینشات کامل صفحه یا اسکرینشات از عناصر خاص داخل صفحه وب بگیرند، حتی میتوانند استایلهای CSS سفارشی روی وبسایت قبل از گرفتن اسکرینشات اعمال کنند. این کتابخانه PHP است و به راحتی میتواند در پروژههای PHP فعلی ادغام شود. اگر یک توسعهدهنده PHP به دنبال راهی کارآمد برای خودکارسازی تولید اسکرینشات هستید، حتماً Browsershot را بررسی کنید.
شروع کار با Browsershot
راه پیشنهادی و آسانترین برای نصب Browsershoot استفاده از Composer است، ابزاری برای مدیریت وابستگیهای PHP. لطفاً از دستور زیر برای نصب بدون مشکل استفاده کنید.
نصب Browsershot از طریق Composer
composer require spatie/browsershot همچنین میتوانید بهصورت دستی نصب کنید؛ آخرین فایلهای انتشار را مستقیماً از مخزن GitHub دانلود کنید.
تولید تصویر از طریق API PHP
کتابخانه منبع باز Browsershoot به توسعهدهندگان امکان میدهد فایلهای HTML را بارگذاری کرده و به فرمتهای مختلف تصویر تبدیل کنند با استفاده از API PHP. بهطور پیشفرض، اندازه اسکرینشات خروجی با رزولوشن دسکتاپ کاربر منطبق است اما میتوان آن را با توجه به نیازهای کاربر سفارشی کرد. این کتابخانه ویژگیهای مهم متعددی دارد برای مثال: گرفتن اسکرینشات کامل صفحه، ساخت تصویر خاکستری، تنظیم مقیاس دستگاه، شبیهسازی نمای موبایلی، غیرفعالسازی جاوااسکریپت هنگام گرفتن صفحه، مسدود کردن URLها، افزودن استایلهای CSS قبل از اسکرینشات، خروجی مستقیم تصویر به مرورگر و موارد دیگر. مثال زیر نشان میدهد چگونه یک تصویر خاکستری با API PHP بسازیم.
ساخت تصویر خاکستری از طریق API PHP
Browsershot::url('https://example.com')
->windowSize(640, 480)
->greyscale()
->save($pathToImage);
چگونه در زمان ساخت PDF از PHP هدر و فوتر اضافه کنیم؟
تولید PDF از طریق کتابخانه PHP
کتابخانه منبع باز Browsershoot این کار را برای توسعهدهندگان نرمافزار آسان میکند تا یک صفحه وب را به فایل PDF در برنامههای PHP خود ذخیره کنند. فایل PDF ذخیره میشود اگر مسیر داده شده به متد save شامل پسوند .pdf باشد. ویژگیهای مهمی در این کتابخانه برای ایجاد PDF وجود دارد؛ مانند تعیین عرض و ارتفاع صفحه PDF، تنظیم حاشیهها، افزودن هدر و فوتر به PDF، مخفیسازی هدر یا فوتر، افزودن پسزمینه به صفحه HTML، پشتیبانی از جهتگیری Landscape، خروجی صفحات خاص، تنظیم شماره صفحه اولیه و موارد دیگر. مثال زیر نشان میدهد چگونه میتوان هدر و فوتر به PDF اضافه کرد در حین ساخت آن از صفحه HTML.