Syncfusion AI Assistant

How can I help you?

RTL and Localization Page in React PDF Viewer

5 Mar 202624 minutes to read

Use RTL support to render the viewer interface for right-to-left languages.

  • Enable enableRtl to apply right-to-left layout.
  • Load culture-specific strings globally with L10n.load.
  • Set the locale property on the PdfViewer instance to the target culture.

Arabic Localization

Example: enable RTL and provide Arabic localization

Use the example below to enable RTL for languages such as Arabic, Hebrew, and Persian.

import { PdfViewer, TextSelection, TextSearch, Print, Navigation, Toolbar, Magnification, Annotation, FormDesigner, FormFields, PageOrganizer } from '@syncfusion/ej2-pdfviewer';
import {L10n} from '@syncfusion/ej2-base';
// Inject required modules
PdfViewer.Inject(TextSelection, TextSearch, Print, Navigation, Toolbar, Magnification, Annotation, FormDesigner, FormFields, PageOrganizer);

const pdfviewer: PdfViewer = new PdfViewer({
    documentPath: 'https://cdn.syncfusion.com/content/pdf/pdf-succinctly.pdf',
    resourceUrl: "https://cdn.syncfusion.com/ej2/31.1.23/dist/ej2-pdfviewer-lib",
    locale: 'ar-AE', //Using locale updates culture
    enableRtl: true, //To enbale Right to Left rendering.
});
//Load culutre files here
    L10n.load({
                'ar-AE': {
                    'PdfViewer': {
                        'PdfViewer': 'قوات الدفاع الشعبي المشاهد',
                        'Cancel': 'إلغاء',
                        'Download file': 'تحميل الملف',
                        'Download': 'تحميل',
                        'Enter Password': 'هذا المستند محمي بكلمة مرور. يرجى إدخال كلمة مرور.',
                        'File Corrupted': 'ملف تالف',
                        'File Corrupted Content': 'الملف تالف ولا يمكن فتحه.',
                        'Fit Page': 'لائق بدنيا الصفحة',
                        'Fit Width': 'لائق بدنيا عرض',
                        'Automatic': 'تلقائي',
                        'Go To First Page': 'عرض الصفحة الأولى',
                        'Invalid Password': 'كلمة سر خاطئة. حاول مرة اخرى.',
                        'Next Page': 'عرض الصفحة التالية',
                        'OK': 'حسنا',
                        'Open': 'فتح الملف',
                        'Page Number': 'رقم الصفحة الحالية',
                        'Previous Page': 'عرض الصفحة السابقة',
                        'Go To Last Page': 'عرض الصفحة الأخيرة',
                        'Zoom': 'تكبير',
                        'Zoom In': 'تكبير في',
                        'Zoom Out': 'تكبير خارج',
                        'Page Thumbnails': 'مصغرات الصفحة',
                        'Bookmarks': 'المرجعية',
                        'Print': 'اطبع الملف',
                        'Password Protected': 'كلمة المرور مطلوبة',
                        'Copy': 'نسخ',
                        'Text Selection': 'أداة اختيار النص',
                        'Panning': 'وضع عموم',
                        'Text Search': 'بحث عن نص',
                        'Find in document': 'ابحث في المستند',
                        'Match case': 'حالة مباراة',
                        'Apply': 'تطبيق',
                        'GoToPage': 'انتقل إلى صفحة',
                        'No Matches': 'انتهى العارض من البحث في المستند. لم يتم العثور على مزيد من التطابقات',
                        'No Text Found': 'لم يتم العثور على نص',
                        'Undo': 'فك',
                        'Redo': 'فعل ثانية',
                        'Annotation': 'إضافة أو تعديل التعليقات التوضيحية',
                        'Highlight': 'تسليط الضوء على النص',
                        'Underline': 'تسطير النص',
                        'Strikethrough': 'نص يتوسطه خط',
                        'Delete': 'حذف التعليق التوضيحي',
                        'Opacity': 'غموض',
                        'Color edit': 'غير اللون',
                        'Opacity edit': 'تغيير التعتيم',
                        'highlight': 'تسليط الضوء',
                        'underline': 'أكد',
                        'strikethrough': 'يتوسطه',
                        // tslint:disable-next-line:max-line-length
                        'Server error': 'خدمة الانترنت لا يستمع. يعتمد قوات الدفاع الشعبي المشاهد على خدمة الويب لجميع ميزاته. يرجى بدء خدمة الويب للمتابعة.',
                        'Open text': 'افتح',
                        'First text': 'الصفحة الأولى',
                        'Previous text': 'الصفحة السابقة',
                        'Next text': 'الصفحة التالية',
                        'Last text': 'آخر صفحة',
                        'Zoom in text': 'تكبير',
                        'Zoom out text': 'تصغير',
                        'Selection text': 'اختيار',
                        'Pan text': 'مقلاة',
                        'Print text': 'طباعة',
                        'Search text': 'بحث',
                        'Annotation Edit text': 'تحرير التعليق التوضيحي',
                        'Line Thickness': 'سمك الخط',
                        'Line Properties': 'خط الخصائص',
                        'Start Arrow': 'ابدأ السهم',
                        'End Arrow': 'نهاية السهم',
                        'Line Style': 'أسلوب الخط',
                        'Fill Color': 'ملء اللون',
                        'Line Color': ' الخط اللون',
                        'None': 'لا شيء',
                        'Open Arrow': 'افتح',
                        'Closed Arrow': 'مغلق',
                        'Round Arrow': 'مستدير',
                        'Square Arrow': 'مربع',
                        'Diamond Arrow': 'الماس',
                        'Cut': 'يقطع',
                        'Paste': 'معجون',
                        'Delete Context': 'حذف',
                        'Properties': 'الخصائص',
                        'Add Stamp': 'إضافة الطوابع',
                        'Add Shapes': 'أضف الأشكال',
                        'Stroke edit': 'تغيير لون السكتة الدماغية',
                        'Change thickness': 'تغيير سمك الحدود',
                        'Add line': 'إضافة خط',
                        'Add arrow': 'سهم إضافة',
                        'Add rectangle': 'أضف مستطيل',
                        'Add circle': 'إضافة دائرة',
                        'Add polygon': 'أضف مضلع',
                        'Add Comments': 'أضف تعليقات',
                        'Comments': 'تعليقات',
                        'No Comments Yet': 'لا توجد تعليقات حتى الآن',
                        'Accepted': 'وافقت',
                        'Completed': 'منجز',
                        'Cancelled': 'ألغيت',
                        'Rejected': 'مرفوض',
                        'Leader Length': 'زعيم الطول',
                        'Scale Ratio': 'نسبة مقياس',
                        'Calibrate': 'عاير',
                        'Calibrate Distance': 'معايرة المسافة',
                        'Calibrate Perimeter': 'معايرة محيط',
                        'Calibrate Area': 'عاير منطقة',
                        'Calibrate Radius': 'معايرة نصف القطر',
                        'Calibrate Volume': 'معايرة الحجم',
                        'Depth': 'عمق',
                        'Closed': 'مغلق',
                        'Round': 'مستدير',
                        'Square': 'ميدان',
                        'Diamond': 'الماس',
                        'Edit': 'تصحيح',
                        'Comment': 'تعليقات',
                        'Comment Panel': 'لوحة التعليقات',
                        'Set Status': 'تعيين الحالة',
                        'Post': 'بريد',
                        'Page': 'صفحة',
                        'Add a comment': 'أضف تعليق',
                        'Add a reply': 'أضف رد',
                        'Import Annotations': 'استيراد التعليقات التوضيحية',
                        'Export Annotations': 'شروح التصدير',
                        'Add': 'أضف',
                        'Clear': 'واضح',
                        'Bold': 'بالخط العريض',
                        'Italic': 'مائل',
                        'Strikethroughs': 'يتوسطه',
                        'Underlines': 'تحت الخط',
                        'Superscript': 'حرف فوقي',
                        'Subscript': 'الفرعية النصي',
                        'Align left': 'محاذاة اليسار',
                        'Align right': 'محاذاة اليمين',
                        'Center': 'مركز',
                        'Justify': 'برر',
                        'Font color': 'لون الخط',
                        'Text Align': 'محاذاة النص',
                        'Text Properties': 'نوع الخط',
                        'Draw Signature': 'ارسم التوقيع',
                        'Create': 'خلق',
                        'Font family': 'خط العائلة',
                        'Font size': 'حجم الخط',
                        'Free Text': 'نص حر',
                        'Import Failed': 'نوع ملف سلمان أو اسم الملف غير صالح ؛ يرجى تحديد ملف سلمانصالح',
                        'File not found': 'لم يتم العثور على ملف سلمان المستورد في الموقع المطلوب',
                        'Export Failed': 'شل إجراء تصدير التعليقات التوضيحية ؛ يرجى التأكد من إضافة التعليقات التوضيحية بشكل صحيح',
                        'Dynamic': 'متحرك',
                        'Standard Business': 'الأعمال القياسية',
                        'Sign Here': 'وقع هنا',
                        'Custom Stamp': 'ختم مخصص',
                        'InitialFieldDialogHeaderText': 'إضافة الأولية',
                        'HandwrittenInitialDialogHeaderText': 'إضافة الأولية',
                        'SignatureFieldDialogHeaderText': 'أضف التوقيع',
                        'HandwrittenSignatureDialogHeaderText': 'أضف التوقيع',
                        'Draw-hand Signature': 'يرسم',
                        'Type Signature': 'نوع',
                        'Upload Signature': 'تحميل',
                        'Browse Signature Image': 'تصفح',
                        'Save Signature': 'احفظ التوقيع',
                        'Save Initial': 'حفظ الأولي',
                        'Highlight context': 'تسليط الضوء',
                        'Underline context': 'تسطير',
                        'Strikethrough context': 'يتوسطه خط',
                        'FormDesigner': 'إضافة وتحرير حقل النموذج',
                        'SubmitForm': 'تقديم النموذج',
                        'Search Text': 'بحث',
                        'Draw Ink': 'ارسم الحبر',
                        'Revised': 'مراجعة',
                        'Reviewed': 'تمت المراجعة',
                        'Received': 'تم الاستلام',
                        'Confidential': 'مؤتمن',
                        'Approved': 'وافق',
                        'Not Approved': 'غير مقبول',
                        'Witness': 'الشاهد',
                        'Initial Here': 'المبدئي هنا',
                        'Draft': 'مشروع',
                        'Final': 'أخير',
                        'For Public Release': 'للنشر العام',
                        'Not For Public Release': 'ليس للنشر العام',
                        'For Comment': 'للتعليق',
                        'Void': 'فارغ',
                        'Preliminary Results': 'نتائج اولية',
                        'Information Only': 'المعلومات فقط',
                        'Enter Signature as Name': 'أدخل أسمك',
                        'Textbox': 'مربع الكتابة',
                        'Password': 'كلمه السر',
                        'Check Box': 'خانة اختيار',
                        'Radio Button': 'زر الراديو',
                        'Dropdown': 'اسقاط',
                        'List Box': 'مربع القائمة',
                        'Signature': 'إمضاء',
                        'Delete FormField': 'حذف حقل النموذج',
                        'FormDesigner Edit text': 'إضافة وتحرير حقل النموذج',
                        'in': 'في',
                        'm': 'م',
                        'ft_in': 'قدم',
                        'ft': 'قدم',
                        'p': 'ص',
                        'cm': 'سم',
                        'mm': 'مم',
                        'pt': 'نقطة',
                        'cu': 'مكعب',
                        'sq': 'قدم مربع',
                        'General': 'جنرال لواء',
                        'Appearance': 'مظهر خارجي',
                        'Options': 'والخيارات',
                        'Textbox Properties': 'خصائص مربع النص',
                        'Name': 'اسم',
                        'Tooltip': 'تلميح',
                        'Value': 'القيمة',
                        'Form Field Visibility': 'رؤية حقل النموذج',
                        'Read Only': 'يقرأ فقط',
                        'Required': 'مطلوب',
                        'Checked': 'التحقق',
                        'Show Printing': 'عرض الطباعة',
                        'Formatting': 'صيغة',
                        'Fill': 'يملأ',
                        'Border': 'الحدود',
                        'Border Color': 'لون الحدود',
                        'Thickness': 'السماكة',
                        'Max Length': 'الحد الاقصى للطول',
                        'List Item': 'اسم العنصر',
                        'Export Value': 'قيمة البند',
                        'Dropdown Item List': 'قائمة العناصر المنسدلة',
                        'List Box Item List': 'قائمة عناصر مربع القائمة',
                        'Delete Item': 'حذف',
                        'Up': 'فوق',
                        'Down': 'تحت',
                        'Multiline': 'متعدد الأسطر',
                        'Initial': 'أولي',
                        'Export XFDF': 'تصدير التعليق التوضيحي إلى ملف XFDF',
                        'Import XFDF': 'استيراد التعليقات التوضيحية من ملف XFDF',
                        'Organize Pages': 'تنظيم الصفحات',
                        'Insert Right': 'أدخل الحق',
                        'Insert Left': 'أدخل اليسار',
                        'Total': 'المجموع',
                        'Pages': 'الصفحات',
                        'Rotate Right': 'تدوير لليمين',
                        'Rotate Left': 'استدر يسارا',
                        'Delete Page': 'حذف الصفحة',
                        'Delete Pages': 'حذف الصفحات',
                        'Copy Page': 'انسخ الصفحة',
                        'Copy Pages': 'نسخ الصفحات',
                        'Save': 'يحفظ',
                        'Save As': 'حفظ باسم',
                        'Select All': 'اختر الكل',
                        'Import Document': 'استيراد المستند',
                        'Match any word': 'تطابق أي كلمة',
                        'Client error': 'تم العثور على خطأ في جانب العميل. يرجى التحقق من رؤوس Ajax المخصصة في خاصية AjaxRequestSettings وطرق الويب في خاصية ServerActionSettings',
                        'Cors policy error': 'تعذر استرداد المستند بسبب عنوان URL غير صالح أو قيود على الوصول. يرجى التحقق من عنوان URL للمستند والمحاولة مرة أخرى',
                        'No More Matches': 'انتهى العارض من البحث في المستند. لم يتم العثور على تطابقات أخرى',
                        'No Search Matches': 'لم يتم العثور على تطابقات',
                        'No More Search Matches': 'لم يتم العثور على تطابقات أخرى',
                        'Exact Matches': 'تطابقات دقيقة',
                        'Total Matches': 'إجمالي التطابقات'

                    }
                }
            });
pdfviewer.appendTo('#PdfViewer');

NOTE

A comprehensive list of localization files and default strings is available on GitHub: GitHub Locale. Provide only keys that require overrides; missing keys fall back to the default en-US values.

See Also