[{"data":1,"prerenderedAt":252},["ShallowReactive",2],{"blog-slugs":3,"project-rezuma-ar":8},{"en":4,"ar":7},[5,6],"dynamic-generic-slots","from-renderless-component-to-composable-function",[5,6],{"id":9,"title":10,"body":11,"description":244,"extension":245,"meta":246,"navigation":247,"path":248,"seo":249,"stem":250,"__hash__":251},"projects/projects/ar/rezuma.md","Rezuma",{"type":12,"value":13,"toc":236},"minimark",[14,19,23,27,30,33,37,45,176,179,183,190,193,216,219,222,225,229,232],[15,16,18],"h2",{"id":17},"لماذا-rezuma","لماذا Rezuma",[20,21,22],"p",{},"المعاينة تُريك شكل السيرة الذاتية. وللتحقق من محتواها بعد التصدير، يتضمّن Rezuma اختبارًا يستخرج النص من ملف PDF بمكتبة pdf.js. يساعد هذا الفحص على مراجعة المحتوى وترتيب الأقسام، وقد تختلف قراءة الملف في أنظمة فرز السير الذاتية (ATS).",[15,24,26],{"id":25},"ملف-pdf-بنص-حقيقي","ملف PDF بنص حقيقي",[20,28,29],{},"لا يحوّل Rezuma المعاينة إلى صورة، بل يرسم المستند بمكتبة jsPDF. كل حرف فيه نص متّجهي بخط مضمّن: Source Serif 4 أو Source Sans 3، و Noto Naskh Arabic أو Noto Sans Arabic للعربية. وتُجلب الخطوط عند التصدير فقط بعد اقتطاع ما يلزم منها، فلا تثقل التحميل الأول.",[20,31,32],{},"ويجري تنسيق الصفحات على مرحلتين: تُقاس العناصر أولًا في مجموعات، ثم تُوزَّع على الصفحات. يجمع هذا التنسيق المسمّى الوظيفي مع تاريخه وعنوان القسم مع أول ما تحته، ويحدّ من الأسطر المنفردة في أول صفحة أو آخرها. وتستعمل المعاينة عائلات الخطوط نفسها التي يستعملها المصدِّر.",[15,34,36],{"id":35},"التحقق-من-الملف-المصدَّر","التحقق من الملف المصدَّر",[20,38,39,40,44],{},"يولّد الأمر ",[41,42,43],"code",{},"pnpm verify:pdf"," ملفات PDF من بيانات اختبار، ثم يستخرج نصوصها بمكتبة pdf.js. ويبحث في النص المستخرج عن الأسماء وجهات العمل والتواريخ والبنود والمهارات الواردة في تلك البيانات، بما فيها الحروف ذات العلامات.",[46,47,52],"pre",{"className":48,"code":49,"language":50,"meta":51,"style":51},"language-bash shiki shiki-themes site-light site-light site-dark","AR / classic / sidebar\n  file        ar-classic-sidebar.pdf (65 KB, 1 page)\n  extracted   2563 chars\n  checks      51/51 found\n  order       summary → experience → skills → education\n  arabic      1554 letters (61% of the text)\n","bash","",[41,53,54,75,101,113,125,150],{"__ignoreMap":51},[55,56,59,63,67,70,72],"span",{"class":57,"line":58},"line",1,[55,60,62],{"class":61},"sUqqj","AR",[55,64,66],{"class":65},"sgVH1"," /",[55,68,69],{"class":65}," classic",[55,71,66],{"class":65},[55,73,74],{"class":65}," sidebar\n",[55,76,78,81,84,88,91,95,98],{"class":57,"line":77},2,[55,79,80],{"class":61},"  file",[55,82,83],{"class":65},"        ar-classic-sidebar.pdf",[55,85,87],{"class":86},"sBiod"," (65 ",[55,89,90],{"class":65},"KB,",[55,92,94],{"class":93},"sJ-0L"," 1",[55,96,97],{"class":65}," page",[55,99,100],{"class":86},")\n",[55,102,104,107,110],{"class":57,"line":103},3,[55,105,106],{"class":61},"  extracted",[55,108,109],{"class":93},"   2563",[55,111,112],{"class":65}," chars\n",[55,114,116,119,122],{"class":57,"line":115},4,[55,117,118],{"class":61},"  checks",[55,120,121],{"class":65},"      51/51",[55,123,124],{"class":65}," found\n",[55,126,128,131,134,137,140,142,145,147],{"class":57,"line":127},5,[55,129,130],{"class":61},"  order",[55,132,133],{"class":65},"       summary",[55,135,136],{"class":65}," →",[55,138,139],{"class":65}," experience",[55,141,136],{"class":65},[55,143,144],{"class":65}," skills",[55,146,136],{"class":65},[55,148,149],{"class":65}," education\n",[55,151,153,156,159,162,165,168,171,174],{"class":57,"line":152},6,[55,154,155],{"class":61},"  arabic",[55,157,158],{"class":93},"      1554",[55,160,161],{"class":65}," letters",[55,163,164],{"class":86}," (61% ",[55,166,167],{"class":65},"of",[55,169,170],{"class":65}," the",[55,172,173],{"class":65}," text",[55,175,100],{"class":86},[20,177,178],{},"يغطي الاختبار تسع حالات، تجمع ثلاث لغات ونمطين وأربعة تخطيطات. وترتيب الأقسام المنتظر يُستخلص من إعدادات التخطيط ولا يُكتب يدويًا، فيبقى الاختبار فحصًا للمصدِّر لا تكرارًا له.",[15,180,182],{"id":181},"العربية-والكتابة-من-اليمين","العربية والكتابة من اليمين",[20,184,185,186,189],{},"عند التحويل إلى العربية يُضبط ",[41,187,188],{},"dir=\"rtl\""," على المستند. وتستخدم الأنماط الخصائص المنطقية لعرض المحرّر وشريط الأدوات والسيرة الذاتية من اليمين إلى اليسار.",[20,191,192],{},"أما ملف PDF فيحتاج إلى عمل أكثر:",[194,195,196,204,210],"ul",{},[197,198,199,203],"li",{},[200,201,202],"strong",{},"وصل الحروف."," تُستبدل الحروف بأشكالها الموصولة قبل الرسم، ويجري القياس على الأشكال نفسها.",[197,205,206,209],{},[200,207,208],{},"تقسيم الأسطر."," يقسّم Rezuma الأسطر العربية بقياسه الخاص، مع احتساب عرض الحروف بعد وصلها.",[197,211,212,215],{},[200,213,214],{},"الاستخراج."," تُعاد الأشكال الموصولة في النص المستخرج إلى حروفها الأصلية بالتوحيد NFKC قبل التحقق من المحتوى.",[20,217,218],{},"وتبقى التواريخ بالأرقام (1، 2، 3) في النسخة العربية، وهو اختيار للتوافق مع أدوات قراءة التواريخ آليًا.",[15,220,221],{"id":221},"الخصوصية",[20,223,224],{},"لا يحتاج محرّر السيرة الذاتية إلى حساب. تُحفظ بيانات السيرة في التخزين المحلي للمتصفح، ويُولَّد ملف PDF على جهازك ويُنزَّل مباشرة. ويمكنك أيضًا حفظ البيانات في ملف JSON أو استيرادها منه.",[15,226,228],{"id":227},"مؤثرات-الصفحة-الرئيسية","مؤثرات الصفحة الرئيسية",[20,230,231],{},"مؤثرات الصفحة الرئيسية مكتوبة دون أي مكتبة خارجية: خلفية ضوئية من مظلِّل واحد بـ WebGL2، وشبكة نقاط على canvas، وعناوين تتفكّك حروفها ثم تنتظم. وعند تفعيل خيار تقليل الحركة تظهر الصفحة في حالتها النهائية، ويبقى النص المتحرك مقروءًا كاملًا لقارئات الشاشة.",[233,234,235],"style",{},"html pre.shiki code .sUqqj, html code.shiki .sUqqj{--shiki-light:#4A3170;--shiki-default:#4A3170;--shiki-dark:#D9BDF0}html pre.shiki code .sgVH1, html code.shiki .sgVH1{--shiki-light:#3A6830;--shiki-default:#3A6830;--shiki-dark:#A5CF93}html pre.shiki code .sBiod, html code.shiki .sBiod{--shiki-light:#322C28;--shiki-default:#322C28;--shiki-dark:#DBD7D0}html pre.shiki code .sJ-0L, html code.shiki .sJ-0L{--shiki-light:#2D54A0;--shiki-default:#2D54A0;--shiki-dark:#93BDF5}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":51,"searchDepth":77,"depth":77,"links":237},[238,239,240,241,242,243],{"id":17,"depth":77,"text":18},{"id":25,"depth":77,"text":26},{"id":35,"depth":77,"text":36},{"id":181,"depth":77,"text":182},{"id":221,"depth":77,"text":221},{"id":227,"depth":77,"text":228},"أنشئ سيرتك الذاتية في المتصفح، وصدّرها ملف PDF بنص قابل للتحديد.","md",{},true,"/projects/ar/rezuma",{"title":10,"description":244},"projects/ar/rezuma","zV_ZfSGek2Z9aX93JSajUDaThYCG8SNh3UJWFJbtHNo",1791794148010]