اذهب إلى المحتوى

السؤال

نشر

حملة حزمة mpdf لكن توجد مشكلة الخطوط والتنسيقات للصفحة هل توجد طريقة في هذي الحزمة لتعريف الخطوط والتنسيقات

أو مكتبة اخرى تدعم التنسيق والخطوط العربية

    public function print_members_card()
    {
        $collect = CommitteeMembers::get();
        $members = $collect->chunk(2);
        
        $pdf = PDF::loadView('auth.print_members_images', [
            'members' => $members
        ]);

        return $pdf->stream('printImages.pdf');
    }

الصفحة المراد طباعتها

<!DOCTYPE html>
<html dir="rtl">

<head>
    <style>
        body {
            margin: 0;
        }

        table.table {
            border-collapse: collapse;
            width: 100%;
            border-collapse: 2px solid black;
        }
    </style>
</head>

<body>
    <table class="table">
        @foreach ($members as $items)
            <tr style="margin-top: 50px">
                @foreach ($items as $member)
                    <td style="text-align: center; padding-bottom: 30px;">
                        <header><img src="images/card_header.jpg" alt="" style="width: 300px;"></header>
                        <h1>بطاقة عضو بعثة</h1>
                        <div><img src="images/avatar/defaultImage.png" alt="" style="width: 100px;"></div>
                        <h4>{{ $member->member->full_name_ar }}</h4>
                        <h4>{{ $member->member->full_name_en }}</h4>
                        <h4>{{ $member->committee->name }}</h4>
                        @if ($member->role == 'commander')
                            <h4> رئيس اللجنة </h4>
                        @else
                            <h4> عضو </h4>
                        @endif
                        <footer><img src="images/card_footer.jpg" alt="" style="width: 340px;"></footer>
                    </td>
                @endforeach
            </tr>
        @endforeach
    </table>
</body>

</html>

 

Recommended Posts

  • 0
نشر

عليك استخدام الإعداد التالي في المكتبة:

$mpdf = new Mpdf();
$mpdf->SetDirectionality('rtl');
$mpdf->autoLangToFont = true;
$mpdf->WriteHTML($html);

وذلك من أجل تعيين اتجاه الصفحة إلى يمين إلى يسار، لكي تتوافق مع اللغة العربية، أيضًأ تفعيل خاصية ربط اللغة بالخط تلقائيًا.

 

  • 0
نشر
بتاريخ 18 دقائق مضت قال Mustafa Suleiman:

عليك استخدام الإعداد التالي في المكتبة:

$mpdf = new Mpdf();
$mpdf->SetDirectionality('rtl');
$mpdf->autoLangToFont = true;
$mpdf->WriteHTML($html);

وذلك من أجل تعيين اتجاه الصفحة إلى يمين إلى يسار، لكي تتوافق مع اللغة العربية، أيضًأ تفعيل خاصية ربط اللغة بالخط تلقائيًا.

 

هذي الحزمة المثبته

composer require carlos-meneses/laravel-mpdf

 

  • 0
نشر (معدل)

هذه الحزمه تدعم حطوط معينه للغه العربيه في الوثائق الخاصه بالحزمه من هنا  في قسم Fonts & Languages ثما الدخول الي
 Available Fonts v6 and v7 في هذه القسم ستجد كل الخطوط التي تدعم اللغه العربيه ومنهم

  • XBRiyaz رابط الخط هنا

KFGQPC Uthman Taha Naskh رابط الخط هنا

بعد استخدام اي خط منهم يجب عليك تعين الاتجاه الخاص باللغه العربيه 

$pdf->SetDirectionality('rtl');

يوجد طريقه اخري للطباعة بدون استخدام اي حزمه فقط كود جافاسكريبت بسيط ساعرض عليك المثال بشكل عملي
لدي فاتوره بهذه الشكل كما موضح بصوره الاولي ويوجد زر بالاسفل يسمي طباعه المفترض عند الضغط عليه يتم طباعة الفاتوره بهذه الطريقه موضح في الصوره الثانيه 
لاضافة الزر 
 

   <button class="btn btn-danger  float-left mt-3 mr-2" id="print_Button" onclick="printDiv()"> <i
                                class="mdi mdi-printer ml-1"></i>طباعه</button>

الوظيفه الخاصه بزر وطباعة الفاتوره 
 

      function printDiv() {
            var printContents = document.getElementById('print').innerHTML;
            var originalContents = document.body.innerHTML;
            document.body.innerHTML = printContents;
            window.print();
            document.body.innerHTML = originalContents;
            location.reload();
        }


 

Screenshot 2024-02-19 114650.png

Screenshot 2024-02-19 114833.png

تم التعديل في بواسطة Taha Khalid
  • 0
نشر
بتاريخ 6 ساعة قال Mustafa Suleiman:

عليك استخدام الإعداد التالي في المكتبة:

$mpdf = new Mpdf();
$mpdf->SetDirectionality('rtl');
$mpdf->autoLangToFont = true;
$mpdf->WriteHTML($html);

وذلك من أجل تعيين اتجاه الصفحة إلى يمين إلى يسار، لكي تتوافق مع اللغة العربية، أيضًأ تفعيل خاصية ربط اللغة بالخط تلقائيًا.

 

كيف يمكنني التحكم بحجم صورة الخلفية عند الطباعة لانه لايقبل إلا css2 

<td style="background-image: url('images/member_image.jpg');
           background-size: 90px;" >
  ...
</td>

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...