راکت
حل شده

استفاده از mpdf

27 پاسخ

سلا به همگی
من دنبال یک پکیج خوب برای خروجی گرفتن از یکی از صفحات سایتم به صورت PDF هستم
اکثر پکیج هارو امتحان کردم
بهترینشون domPDF بود که متاسفانه زبان فارسی رو پشتیبانی نمیکرد
خیلیا گفته بودن mPDF زبان فارسی ر و پشتیبانی میکنه
موقع استفاده از mPDF وقتی میخام خروجی بگیرم
یک پی دی اف خالی برام میسازه
کسی میتونه راهنماییم کنه

 تصویر
اگر یک پکیج خوب برای لاراول 9 میشناسید ممنون میشم بهم معرفی کنید
چند روزه درگیر این موضوع هستم ولی به نتیجه ای نرسیدم :/

omid.sandi
omid.sandi
@omid.sandi79
ثبت پرسش جدید

پاسخ‌ها

27
محمدحسن یگانه
محمدحسن یگانه
@mhyeganeh

تخصص: Full-Stack Web Developer Freelancer

بهترین پاسخ

طبق گفته مدیر پروژه mdpf در لینک گیت هابی که ارسال کردم، متاسفانه این پکیج (mpdf ) هنوز از نسخه ۳ پکیج psr/log نمی‌تونه پشتیبانی کنه و تنها راهش downgrade کردن این پکیج به نسخه ۲ هست.

اول پکیج mpdf رو حذف کنیدو بعد پکیج psr/log رو به نسخه ۲ بیارید. بعد مجددا mpdf رو نصب کنید.

ضمنا اگر از لاراول استفاده می‌کنید پیشنهادم استفاده از پکیج زیر هست که پشت صحنه وابسته به همون mpdf هست ولی مقداری کار کردن باهاش لذت بخش‌تر و راحت‌تره:
https://github.com/niklasravnsborg/laravel-pdf

(البته در هر دو حالت نیازمند downgrade پکیج psr/log به نسخه ۲ هستید)

omid.sandi
omid.sandi
@omid.sandi79

تخصص: برنامه نویس و طراح سایت

@saeiidm
داخل فایل کانفیگ شما فقط فونت رو تعریف کردی
مقدار دیفالت فونت رو باید برابر myFont قرار بدی

سعید محمدی
سعید محمدی
@saeiidm

@saeiidm
انجام دادم فرقی نکرد متاسفانه

شاید پاسخ شما همین‌جا باشد

سعید محمدی
سعید محمدی
@saeiidm

@omid.sandi79
قبلا استفاده کردم داخل لاراول 5 به خوبی کار میکرد
الان اسم فونت هم درست کردم و حتی فایل کانفیگ رو هم از پابلیک گذاشتم بخونه بازم فرقی نکرد

omid.sandi
omid.sandi
@omid.sandi79

تخصص: برنامه نویس و طراح سایت

@saeiidm
اسم فونت رو به چه صورت درست کردید؟

سعید محمدی
سعید محمدی
@saeiidm

@omid.sandi79

<?php

return [
    'mode'                  => 'utf-8',
    'format'                => 'A4', /* 'A5-L' */
    'author'                => 'example.com',
    'subject'               => '',
    'keywords'              => '',
    'creator'               => 'Laravel Pdf',
    'display_mode'          => 'fullpage',
    'tempDir'               => storage_path('app/public/temp/'),
    'font_path'             => public_path('vendor/fonts/'),
    'font_data'             => [
        'IRANSans' => [
            'R'  => 'IRANSans-web.ttf',    // regular font
            'B'  => 'IRANSans-web.ttf',    // regular font
            //'B'  => 'IRANSans-Bold-web.ttf',       // optional: bold font
            // 'I' => 'ExampleFont-Italic.ttf',     // optional: italic font
            //'BI' => 'ExampleFont-Bold-Italic.ttf' // optional: bold-italic font
            'useOTL' => 0xFF,    // required for complicated langs like Persian, Arabic and Chinese
            'useKashida' => 75,  // required for complicated langs like Persian, Arabic and Chinese
        ]
    ]
];
<!DOCTYPE html>
<html lang="fa">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>body{font-family: 'IRANSans'}</style>
<title></title>
</head>
<body>
<p>سلام</p>
</body>
</html>

فونت هارو هم انتقال دادم به مسیر

public\vendor\fonts
سعید محمدی
سعید محمدی
@saeiidm

@omid.sandi79
@mhyeganeh

درست شد ممنون از هر دو بزرگوار
مشکل تو مسیر دهی بود و باید فایل css رو بصورت زیر وارد سند html میکردم

<link rel="stylesheet" href="https://roocket.ir/assets/css/app.css" />

سپاس 🙏

صفحه 2 از 2

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام