Mansour Hussen نشر 16 سبتمبر أرسل تقرير نشر 16 سبتمبر مرحباً ان جربت مكتبه @react-pdf/renderer لكن لا تدعم عربي import { Document, Page, renderToStream, StyleSheet, Text } from '@react-pdf/renderer'; import { NextResponse } from "next/server"; // Register font // Font.register({ // family: "Cairo", // src: "http://fonts.gstatic.com/s/cairo/v1/uOhP6W00Hd6dR_axcPy22Q.ttf", // }); // Define styles const styles = StyleSheet.create({ rtlText: { fontFamily: "Cairo", backgroundColor: "red", direction: "rtl", textAlign: "center", }, }); // Define the PDF document const Invoice = () => ( <Document> <Page> <Text style={styles.rtlText}>مرحبًا بك في @r</Text> </Page> </Document> ); // API route handler export async function GET(request) { try { const pdfStream = await renderToStream(<Invoice />); return new NextResponse(pdfStream, { headers: { "Content-Type": "application/pdf", "Content-Disposition": `inline; filename="invoice.pdf"`, }, }); } catch (e) { return new NextResponse("Failed to generate PDF", { status: 500 }); } } 2 اقتباس
1 ياسر مسكين نشر 16 سبتمبر أرسل تقرير نشر 16 سبتمبر توجد مكتبات مثل jsPDF وpdfmake توفر دعما أفضل للغات التي تكتب من اليمين إلى اليسار كالعربية، وهذه المكتبات تسمح بتسجيل الخطوط العربية وضبط اتجاه الكتابة بسهولة يمكنك محاولة تحسين استخدام @react-pdf/renderer عن طريق تسجيل الخطوط العربية بشكل صحيح واستخدام خصائص CSS مثل writingMode: 'rtl' لتحسين عرض النص العربي ففي بعض الحالات، قد تحتاج إلى استخدام مكتبات إضافية مثل bidi-js لمعالجة النص قبل عرضه في PDF فقد لا تجد مكتبة شاملة وكاملة لذا قد يتعين التعديل للتحسين من العرض. اقتباس
1 محمد عاطف17 نشر 16 سبتمبر أرسل تقرير نشر 16 سبتمبر نعم يوجد الكثير من المكتبات التي تدعم اللغة العربية في ملفات ال pdf : pdf-lib: مكتبة قوية ومفيدة لإنشاء وتعديل ملفات PDF يمكنها التعامل مع النصوص باللغة العربية ولكنك قد تحتاج إلى ضبط الخطوط بشكل صحيح لدعم الكتابة من اليمين لليسار (RTL) وهذا رابط المكتبة على github : https://github.com/Hopding/pdf-lib jspdf: مكتبة شائعة لإنشاء ملفات PDF من اكواد HTML . توفر إستخدام العديد من اللغات بما في ذلك اللغة العربية، لكنك قد تحتاج إلى استخدام خطوط خاصة باللغة العربية ووهذا رابط المكتبة على github : https://github.com/parallax/jsPDF pdfmake: مكتبة جيدة لإنشاء ملفات PDF. تدعم الكتابة من اليمين لليسار وتوفر دعم للغة العربية وهذا هو رابط المكتبة على github : https://github.com/bpampuch/pdfmake 1 اقتباس
0 Mansour Hussen نشر 17 سبتمبر الكاتب أرسل تقرير نشر 17 سبتمبر (معدل) بتاريخ On 16/9/2024 at 19:12 قال محمد عاطف17: نعم يوجد الكثير من المكتبات التي تدعم اللغة العربية في ملفات ال pdf : pdf-lib: مكتبة قوية ومفيدة لإنشاء وتعديل ملفات PDF يمكنها التعامل مع النصوص باللغة العربية ولكنك قد تحتاج إلى ضبط الخطوط بشكل صحيح لدعم الكتابة من اليمين لليسار (RTL) وهذا رابط المكتبة على github : https://github.com/Hopding/pdf-lib jspdf: مكتبة شائعة لإنشاء ملفات PDF من اكواد HTML . توفر إستخدام العديد من اللغات بما في ذلك اللغة العربية، لكنك قد تحتاج إلى استخدام خطوط خاصة باللغة العربية ووهذا رابط المكتبة على github : https://github.com/parallax/jsPDF pdfmake: مكتبة جيدة لإنشاء ملفات PDF. تدعم الكتابة من اليمين لليسار وتوفر دعم للغة العربية وهذا هو رابط المكتبة على github : https://github.com/bpampuch/pdfmake عندي فكره حبيت أطرحها لنقاش وهل تعتبر ممارسة ممتازة ام لا ناوي اعمل سكربت بايثون مع Flask يستقبل معلومات ويصدر pdf ويحمل file اضمن انه بتشغل معي في اي اطار استخدمه سوء لارفل او next تم التعديل في 17 سبتمبر بواسطة Mansour Hussen 1 اقتباس
1 محمد عاطف17 نشر 18 سبتمبر أرسل تقرير نشر 18 سبتمبر بتاريخ 9 ساعة قال Mansour Hussen: عندي فكره حبيت أطرحها لنقاش وهل تعتبر ممارسة ممتازة ام لا ناوي اعمل سكربت بايثون مع Flask يستقبل معلومات ويصدر pdf ويحمل file اضمن انه بتشغل معي في اي اطار استخدمه سوء لارفل او next نعم تعتبر هذ الفكرة جيدة وخصوصا إذا تريد إستخدام تصدير الملفات ك PDF في أكثر من مشروع بأكثر من لغه . لذلك إذا وجدت بايثون تساعدك في تلك المهمة فيمكنك إنشاء خادم بإستخدام flask كما تريد و جعله يستقبل الطلبات ويقوم بتصدير المعلومات في ملف PDF وتقوم بإرسال الطلبات ك API من خلال أى مشروع أخر . ولكن هنا سيتوجب عليك رفع مشروع flask على خادم مع المشروع الآخر و هنا سيتطلب عملا إضافيا لتشغيل الخوادم معا أو رفع كل مشروع على خادم منفصل . وأيضا سيتوجب تأمين مشروع flask جيدا ومنع الوصول له من أى شخص أخر سواك . ولكن من وجهة نظرى إن تصدير الملفات ك PDF ليست بالصعوبة تلك حيث php توجد بها العديد من المكتبات التي تدعم PDF و اللغة العربية و الأمر بسيط سيحتاج ملف سكريبت واحد فقط و أيضا في next . لذلك الأفضل هو إنشاء ملف لكل منهما وفي كل مشروع تريد تنفيذ خاصية تصدير الملفات تقوم بوضع ذلك الملف في المشروع وسيعمل معك . 1 اقتباس
السؤال
Mansour Hussen
مرحباً ان جربت مكتبه @react-pdf/renderer لكن لا تدعم عربي
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.