نوشته‌ها

لاراول pdf با فونت فارسی

لاراول pdf با پشتیبانی از نوشته های فارسی utf-8

سلام دوستان تا حالا به این موضوع برخورد کردید که نیاز به pdf کردن یک صفحه blade داشته باشید برای این کار پکیج های زیادی هست که عالی هم هستند ولی نه زمانی که بخواهید از نوشته های فارسی استفاده کنید.

برای این کار میخواهم یک پکیج بسیار عالی را به شما معرفی کنم که علاوه بر pdf کردن امکانات خیلی بیشتری هم داره پس در ادامه با ما همراه باشید.

 

معرفی پکیج PhantomMagick:

پکیج PhantomMagick یک راهکار فوق العاده برای تبدیل صفحات html به pdf و تصاویر است.

با این پکیج میتوانید برای تولید فاکتور و یا گرفتن اسکرین شات از صفحات وب استفاده کنید

امکانات پکیج :

  • تبدیل HTML به یک PDF
  • تبدیل HTML به یک تصویر (PNG، JPG یا GIF)
  • پشتیبانی از چند فایل PDF
  • ذخیره تصویر (اسکرین شات) از صفحات وب
  • ذخیره فایل PDF یا تصویر به دیسک محلی یا ابر (S3، Dropbox یا Rackspace)
  • و …

نیازمندی ها:

نصب:

برای نصب این پکیج میتوانید از composer کمک بگیرید

composer require anam/phantommagick

 

خوب همین طور که در بالا توضیح داده شده برای نصب این پکیج نیاز به PhantomJs هست که میتونید خیلی ساده اون را هم با دستورات composer نصب نمائید

composer require anam/phantomjs-linux-x86-binary


در فایل app.php واقع در پوشه config در قسمت های providers و aliases به ترتیب نوشته های زیر را وارد کنید

Anam\PhantomMagick\ConverterServiceProvider::class ,

'Converter' => Anam\PhantomMagick\Facades\Converter::class ,

 

خوب مراحل نصب تمام شد برای استفاده از روش های زیر میتوانید استفاده کنید.

 

$conv = new \Anam\PhantomMagick\Converter();

$conv->source('https://webazin.net')

->toPdf()

->save('/your/destination/path/webazin.pdf');

 

در توضیحات کد آدرس داده شده را به pdf تبدیل میکند و در فایل محلی در آدرس داده شده ذخیره میکند.

جهت تبدیل به تصویر هم میتوانید از متد های زیر کمک بگیرید:

 

$conv->toPng()

$conv->toJpg()

$conv->toGif()

دانلود فایل تبدیل شده :

برای دانلود فایل کافیست به جای استفاده از متد save یا بعد از آن متد download() را صدا بزنید

همچنین شما میتوانید داده های تبدیل شده را در کلود ها مانند دراپ باکس ذخیره کنید

  • Amazon S3
  • Dropbox
  • Rackspace

که برای این کار میتوانید به صفحه پکیج در گیت هاپ سر بزنید و توضیحات تکمیلی را دریافت کنید.

https://github.com/anam-hossain/phantommagick