mirror of
https://github.com/viliusle/miniPaint.git
synced 2026-02-06 15:31:53 +00:00
Arabic language
This commit is contained in:
parent
3f8b4f4058
commit
59b19f69a8
@ -645,6 +645,10 @@ const menuDefinition = [
|
||||
{
|
||||
divider: true
|
||||
},
|
||||
{
|
||||
name: 'عربي',
|
||||
target: 'tools/translate.translate.ar'
|
||||
},
|
||||
{
|
||||
name: '简体中文',
|
||||
target: 'tools/translate.translate.zh'
|
||||
|
||||
@ -33,6 +33,7 @@ config.themes = [
|
||||
'green',
|
||||
];
|
||||
|
||||
//no-translate BEGIN
|
||||
config.FONTS = [
|
||||
"Arial",
|
||||
"Courier",
|
||||
@ -71,6 +72,7 @@ config.FONTS = [
|
||||
"Titillium Web",
|
||||
"Ubuntu"
|
||||
];
|
||||
//no-translate END
|
||||
|
||||
config.TOOLS = [
|
||||
{
|
||||
|
||||
@ -47,7 +47,7 @@ const sidebarTemplate = `
|
||||
<div id="color_section_picker" class="block_section">
|
||||
<input id="color_picker_gradient" type="color" aria-label="Color Selection">
|
||||
<div class="ui_input_group stacked">
|
||||
<label id="color_hex_label" title="Hex" class="label_width_small">Hex</label>
|
||||
<label id="color_hex_label" title="Hex" class="label_width_small trn">Hex</label>
|
||||
<input id="color_hex" aria-labelledby="color_hex_label" value="#000000" maxlength="7" type="text" />
|
||||
</div>
|
||||
</div>
|
||||
@ -113,7 +113,7 @@ const dialogTemplate = `
|
||||
</div>
|
||||
<div id="dialog_color_channel_group">
|
||||
<div class="ui_input_group stacked">
|
||||
<label id="dialog_color_hex_label" title="Hex" class="label_width_small">Hex</label>
|
||||
<label id="dialog_color_hex_label" title="Hex" class="label_width_small trn">Hex</label>
|
||||
<input id="dialog_color_hex" aria-labelledby="dialog_color_hex_label" value="#000000" maxlength="7" type="text" />
|
||||
</div>
|
||||
<div class="ui_input_grid stacked">
|
||||
|
||||
@ -15,10 +15,10 @@ var template = `
|
||||
</div>
|
||||
<div class="canvas_preview_details">
|
||||
<div class="details">
|
||||
<input title="Zoom out" class="layer_add" id="zoom_less" type="button" value="-" />
|
||||
<input title="Reset zoom level" class="layer_add" id="zoom_100" type="button" value="100%" />
|
||||
<input title="Zoom in" class="layer_add" id="zoom_more" type="button" value="+" />
|
||||
<input class="layer_add" id="zoom_fit" type="button" value="Fit" />
|
||||
<button title="Zoom out" class="layer_add trn" id="zoom_less"">-</button>
|
||||
<button title="Reset zoom level" class="layer_add trn" id="zoom_100"">100%</button>
|
||||
<button title="Zoom in" class="layer_add trn" id="zoom_more"">+</button>
|
||||
<button class="layer_add trn" id="zoom_fit">Fit</button>
|
||||
</div>
|
||||
<input id="zoom_range" type="range" value="100" min="50" max="1000" step="50" />
|
||||
</div>
|
||||
|
||||
503
src/js/languages/ar.json
Normal file
503
src/js/languages/ar.json
Normal file
@ -0,0 +1,503 @@
|
||||
{
|
||||
"11px Arial": "11 بكسل Arial",
|
||||
"1em": "1em",
|
||||
"24-Points star": "24 نقطة نجمة",
|
||||
"2d": "2 د",
|
||||
"3a0339": "3a0339",
|
||||
"480p": "480 ص",
|
||||
"A problem occurred while removing undo history. It": "حدثت مشكلة أثناء إزالة محفوظات التراجع. هو - هي",
|
||||
"About": "حول",
|
||||
"Active": "نشيط",
|
||||
"Add Borders": "أضف الحدود",
|
||||
"Aden": "عدن",
|
||||
"Advanced": "متقدم",
|
||||
"All": "الجميع",
|
||||
"Alpha": "ألفا",
|
||||
"Alpha:": "ألفا:",
|
||||
"Anonymous": "مجهول",
|
||||
"Anti aliasing": "مكافحة التعرج",
|
||||
"Arial": "اريال",
|
||||
"Arrow": "سهم",
|
||||
"ArrowDown": "السهم للاسفل",
|
||||
"ArrowLeft": "السهم لليسار",
|
||||
"ArrowRight": "السهم الأيمن",
|
||||
"ArrowUp": "ارووب",
|
||||
"Author:": "مؤلف:",
|
||||
"Auto Adjust Colors": "ضبط تلقائي للألوان",
|
||||
"Auto Kerning": "تقنين تلقائي لتقنين الأحرف",
|
||||
"Average:": "متوسط:",
|
||||
"Backspace": "مسافة للخلف",
|
||||
"Base": "يتمركز",
|
||||
"Basic": "أساسي",
|
||||
"Black and White": "اسود و ابيض",
|
||||
"Blue": "أزرق",
|
||||
"Blue channel:": "القناة الزرقاء:",
|
||||
"Blueprint": "مخطط",
|
||||
"Blur Radius:": "نصف قطر التمويه:",
|
||||
"Blur Tool": "أداة طمس",
|
||||
"Blur power:": "قوة طمس:",
|
||||
"Borders": "الحدود",
|
||||
"Bottom": "قاع",
|
||||
"Bottom to Top": "من الأسفل للأعلى",
|
||||
"Bounds:": "الحدود:",
|
||||
"Box": "علبة",
|
||||
"Box Blur": "مربع طمس",
|
||||
"Box blur": "مربع طمس",
|
||||
"Brightness": "سطوع",
|
||||
"Brightness:": "سطوع:",
|
||||
"Bulge\/Pinch Tool": "أداة انتفاخ \/ قرصة",
|
||||
"Burn": "حرق",
|
||||
"Can not animate 1 layer.": "لا يمكن تحريك طبقة واحدة.",
|
||||
"Can not find previous layer.": "لا يمكن العثور على الطبقة السابقة.",
|
||||
"Cancel": "يلغي",
|
||||
"Canvas size": "حجم قماش",
|
||||
"Center": "مركز",
|
||||
"Center x:": "المركز x:",
|
||||
"Center y:": "مركز ص:",
|
||||
"Center:": "مركز:",
|
||||
"Change Composition": "تغيير التكوين",
|
||||
"Change Layer Details": "تغيير تفاصيل الطبقة",
|
||||
"Change Opacity": "تغيير التعتيم",
|
||||
"Channel:": "قناة:",
|
||||
"Circle": "دائرة",
|
||||
"Clarendon": "كلاريندون",
|
||||
"Clear": "واضح",
|
||||
"Clear Selection": "التحديد الواضح",
|
||||
"Clone Tool": "أداة استنساخ",
|
||||
"Clone count:": "عدد النسخ:",
|
||||
"Clone tool disabled for resized image. Sorry.": "تم تعطيل أداة النسخ للصورة التي تم تغيير حجمها. آسف.",
|
||||
"Cloned edges": "حواف مستنسخة",
|
||||
"Color #": "اللون #",
|
||||
"Color Corrections": "تصحيحات اللون",
|
||||
"Color Palette": "لوحة الألوان",
|
||||
"Color Zoom": "تكبير اللون",
|
||||
"Color alpha value can not be zero.": "لا يمكن أن تكون قيمة ألفا للون صفراً.",
|
||||
"Color to Alpha": "لون ألفا",
|
||||
"Color zoom": "تكبير اللون",
|
||||
"Color:": "اللون:",
|
||||
"Colors": "الألوان",
|
||||
"Colors:": "الألوان:",
|
||||
"Common Filters": "مرشحات مشتركة",
|
||||
"Composition": "تكوين",
|
||||
"Composition:": "تكوين:",
|
||||
"Content Fill": "تعبئة المحتوى",
|
||||
"Contrast": "مقابلة",
|
||||
"Contrast:": "مقابلة:",
|
||||
"Convert to Raster": "تحويل إلى نقطي",
|
||||
"Copy Selection": "نسخ التحديد",
|
||||
"Copy to Clipboard": "نسخ إلى الحافظة",
|
||||
"Copy:": "ينسخ:",
|
||||
"Courier": "ساعي",
|
||||
"Crop Tool": "أداة المحاصيل",
|
||||
"Crop on rotated layer is not supported. Convert it to raster to continue.": "القص على الطبقة التي تم تدويرها غير مدعوم. قم بتحويله إلى خطوط المسح للمتابعة.",
|
||||
"Ctrl+A": "السيطرة + أ",
|
||||
"Ctrl+C": "Ctrl + C",
|
||||
"Ctrl+V": "السيطرة + V.",
|
||||
"Ctrl+Y": "Ctrl + Y",
|
||||
"Ctrl+Z": "السيطرة + Z",
|
||||
"Ctrl-P": "السيطرة- P",
|
||||
"Current": "تيار",
|
||||
"Current Color Preview": "معاينة اللون الحالي",
|
||||
"Custom": "مخصص",
|
||||
"Data URL": "URL البيانات",
|
||||
"Data URL:": "URL البيانات:",
|
||||
"Decrease": "تخفيض",
|
||||
"Decrease Color Depth": "تقليل عمق اللون",
|
||||
"Degree:": "درجة:",
|
||||
"Del": "ديل",
|
||||
"Delete": "حذف",
|
||||
"Delete Selection": "حذف التحديد",
|
||||
"Denoise": "يقلل الضوضاء",
|
||||
"Desaturate Tool": "أداة إزالة التشبع",
|
||||
"Description:": "وصف:",
|
||||
"Deutsch": "الألمانية",
|
||||
"Differences": "اختلافات",
|
||||
"Differences Down": "الخلافات أسفل",
|
||||
"Direction:": "اتجاه:",
|
||||
"Dither": "ثبات",
|
||||
"Dithering:": "التردد:",
|
||||
"Dominant color:": "اللون السائد:",
|
||||
"Dot Screen": "شاشة نقطية",
|
||||
"Down": "أسفل",
|
||||
"Duplicate": "ينسخ",
|
||||
"Duplicate Layer": "طبقة مكررة",
|
||||
"Dynamic": "متحرك",
|
||||
"Edge": "حافة",
|
||||
"Edit": "يحرر",
|
||||
"Edit text...": "تحرير النص...",
|
||||
"Effect browser": "متصفح التأثير",
|
||||
"Effects": "تأثيرات",
|
||||
"Effects browser": "متصفح التأثيرات",
|
||||
"Email:": "بريد الالكتروني:",
|
||||
"Emboss": "زخرف",
|
||||
"Empty selection": "اختيار فارغ",
|
||||
"Empty selection or type not image.": "اختيار فارغ أو اكتب ليس صورة.",
|
||||
"Enable guides:": "تمكين الأدلة:",
|
||||
"Enable snap:": "تمكين المحاذاة:",
|
||||
"End": "نهاية",
|
||||
"English": "الإنجليزية",
|
||||
"Enrich": "يثرى",
|
||||
"Enter": "يدخل",
|
||||
"Erase Tool": "أداة المحو",
|
||||
"Erase on rotate object is disabled. Sorry.": "تم تعطيل المحو عند تدوير الكائن. آسف.",
|
||||
"Error": "خطأ",
|
||||
"Error connecting to service.": "خطأ في الاتصال بالخدمة.",
|
||||
"Error registering service worker": "خطأ في تسجيل عامل الخدمة",
|
||||
"Error: can not find filter:": "خطأ: لا يمكن العثور على عامل التصفية:",
|
||||
"Error: can not find layer with id:": "خطأ: لا يمكن العثور على طبقة بالمعرف:",
|
||||
"Error: missing details event target": "خطأ: تفاصيل الهدف حدث مفقود",
|
||||
"Error: unknown layer type:": "خطأ: نوع طبقة غير معروف:",
|
||||
"Esc": "خروج",
|
||||
"Escape": "يهرب",
|
||||
"Español": "الاسبانية",
|
||||
"Expand edges": "قم بتوسيع الحواف",
|
||||
"Exponent:": "الأس:",
|
||||
"Export": "يصدر",
|
||||
"External": "خارجي",
|
||||
"Factor:": "عامل:",
|
||||
"File": "ملف",
|
||||
"File name:": "اسم الملف:",
|
||||
"File size:": "حجم الملف:",
|
||||
"Fill": "ملء",
|
||||
"Fill Tool": "أداة التعبئة",
|
||||
"Fit": "ملائم",
|
||||
"Fit Window": "تناسب النافذة",
|
||||
"Flatten Image": "تسطيح الصورة",
|
||||
"Flip": "يواجه",
|
||||
"FloydSteinberg-serpentine": "FloydSteinberg-serpentine",
|
||||
"Font": "الخط",
|
||||
"Français": "الفرنسية",
|
||||
"Full HD, 1080p": "دقة Full HD ، 1080 بكسل",
|
||||
"Full Screen": "تكبير الشاشة",
|
||||
"Full layers data": "بيانات الطبقات الكاملة",
|
||||
"Gap:": "الفارق:",
|
||||
"Gaussian Blur": "التمويه الضبابي",
|
||||
"Gif delay:": "تأخير Gif:",
|
||||
"Gingham": "القماش القطني",
|
||||
"GitHub:": "جيثب:",
|
||||
"Gradient Radius:": "نصف قطر التدرج:",
|
||||
"Grains": "بقوليات",
|
||||
"Graphics Interchange Format": "تنسيق تبادل الرسومات",
|
||||
"Gray": "رمادي",
|
||||
"Grayscale": "تدرج الرمادي",
|
||||
"Green": "لون أخضر",
|
||||
"Green channel:": "القناة الخضراء:",
|
||||
"Greyscale:": "الرمادي:",
|
||||
"Grid": "شبكة",
|
||||
"Grid on\/off": "الشبكة على \/ قبالة",
|
||||
"Guides": "خطوط إرشاد",
|
||||
"Guides enabled.": "تم تمكين الأدلة.",
|
||||
"H Radius:": "نصف قطر H:",
|
||||
"H. Align:": "ح. محاذاة:",
|
||||
"Heatmap": "خريطة الحرارة",
|
||||
"Height (%):": "ارتفاع (٪):",
|
||||
"Height:": "ارتفاع:",
|
||||
"Help": "مساعدة",
|
||||
"Helvetica": "هيلفيتيكا",
|
||||
"Hermite": "هيرمايت",
|
||||
"Hex": "عرافة",
|
||||
"Histogram": "الرسم البياني",
|
||||
"Histogram:": "الرسم البياني:",
|
||||
"Home": "الصفحة الرئيسية",
|
||||
"Horizontal": "أفقي",
|
||||
"Horizontal Alignment": "المحاذاة الأفقية",
|
||||
"Horizontal blur:": "طمس أفقي:",
|
||||
"Horizontal:": "أفقي:",
|
||||
"Hue": "مسحة",
|
||||
"Hue Rotate": "تدوير هوى",
|
||||
"Hue:": "مسحة:",
|
||||
"Image": "صورة",
|
||||
"Image data with multi-layers. Can be opened using miniPaint -": "بيانات الصورة متعددة الطبقات. يمكن فتحه باستخدام miniPaint -",
|
||||
"Impact": "تأثير",
|
||||
"Increase": "زيادة",
|
||||
"Information": "معلومة",
|
||||
"Inkwell": "محبرة",
|
||||
"Insert": "إدراج",
|
||||
"Insert guides": "أدلة إدراج",
|
||||
"Insert:": "إدراج:",
|
||||
"Instagram Filters": "مرشحات Instagram",
|
||||
"Invalid Hex Code": "رمز سداسي عشري غير صالح",
|
||||
"Italiano": "ايطالي",
|
||||
"JPG\/JPEG Format": "تنسيق JPG \/ JPEG",
|
||||
"Kerning:": "تقنين الأحرف:",
|
||||
"Key-Points": "النقاط الرئيسية",
|
||||
"KeyU": "KeyU",
|
||||
"Keyboard Shortcuts": "اختصارات لوحة المفاتيح",
|
||||
"Keyword:": "الكلمة الرئيسية:",
|
||||
"Lanczos": "لانكوز",
|
||||
"Language": "لغة",
|
||||
"Last modified": "آخر تعديل",
|
||||
"Layer": "طبقة",
|
||||
"Layer details": "تفاصيل الطبقة",
|
||||
"Layer is not compatible with resize": "الطبقة غير متوافقة مع تغيير الحجم",
|
||||
"Layer is vector, convert it to raster to apply this tool.": "الطبقة متجهية ، قم بتحويلها إلى خطوط نقطية لتطبيق هذه الأداة.",
|
||||
"Layers": "طبقات",
|
||||
"Layers:": "طبقات:",
|
||||
"Left": "اليسار",
|
||||
"Left to Right": "من اليسار إلى اليمين",
|
||||
"Level:": "مستوى:",
|
||||
"Levels:": "المستويات:",
|
||||
"Lietuvių": "ليتوفيتش",
|
||||
"Lo-fi": "Lo-fi",
|
||||
"Luminance:": "الانارة:",
|
||||
"Luminosity": "لمعان",
|
||||
"Magic Eraser Tool": "أداة ماجيك ممحاة",
|
||||
"Merge Down": "دمج أسفل",
|
||||
"Merge Layers": "دمج الطبقات",
|
||||
"Merged": "مندمجة",
|
||||
"Metrics": "المقاييس",
|
||||
"Middle": "وسط",
|
||||
"Missing at least 1 size parameter.": "معلمة حجم واحدة مفقودة على الأقل.",
|
||||
"Missing permissions to write to Clipboard.cc": "أذونات مفقودة للكتابة إلى Clipboard.cc",
|
||||
"Mode:": "الوضع:",
|
||||
"Module function not found.": "لم يتم العثور على وظيفة الوحدة النمطية.",
|
||||
"Modules class not found:": "فئة الوحدات غير موجودة:",
|
||||
"Monospace": "مونوسبيس",
|
||||
"Mosaic": "فسيفساء",
|
||||
"Mouse:": "الفأر:",
|
||||
"Move": "يتحرك",
|
||||
"Move Layer": "تحريك الطبقة",
|
||||
"Move down": "تحرك لأسفل",
|
||||
"Move up": "تحرك",
|
||||
"Name:": "اسم:",
|
||||
"Needs at least 2 layers.": "تحتاج إلى طبقتين على الأقل.",
|
||||
"Negative": "سلبي",
|
||||
"New": "جديد",
|
||||
"New Brush Layer": "طبقة فرشاة جديدة",
|
||||
"New Ellipse Layer": "طبقة Ellipse جديدة",
|
||||
"New File": "ملف جديد",
|
||||
"New Gradient Layer": "طبقة متدرجة جديدة",
|
||||
"New Layer": "طبقة جديدة",
|
||||
"New Line Layer": "طبقة خط جديدة",
|
||||
"New Pencil Layer": "طبقة قلم رصاص جديدة",
|
||||
"New Rectangle Layer": "طبقة مستطيل جديدة",
|
||||
"New Text Layer": "طبقة نص جديدة",
|
||||
"New file": "ملف جديد",
|
||||
"New from Selection": "جديد من التحديد",
|
||||
"New layer": "طبقة جديدة",
|
||||
"New width can not be smaller then current width": "لا يمكن أن يكون العرض الجديد أصغر من العرض الحالي",
|
||||
"Night Vision": "الرؤية الليلية",
|
||||
"None": "لا أحد",
|
||||
"Nothing is selected.": "لم يتم اختيار شيء.",
|
||||
"Offset X:": "تعويض X:",
|
||||
"Offset Y:": "تعويض ص:",
|
||||
"Oil": "زيت",
|
||||
"Ok": "موافق",
|
||||
"Online image editor.": "محرر الصور على الإنترنت.",
|
||||
"Opacity": "العتامة",
|
||||
"Opacity:": "العتامة:",
|
||||
"Open": "فتح",
|
||||
"Open Data URL": "فتح URL البيانات",
|
||||
"Open Directory": "الدليل المفتوح",
|
||||
"Open File": "افتح ملف",
|
||||
"Open File Data URL": "فتح ملف بيانات URL",
|
||||
"Open File URL": "فتح ملف URL",
|
||||
"Open File Webcam": "افتح ملف كاميرا الويب",
|
||||
"Open Image": "صورة مفتوحة",
|
||||
"Open JSON File": "افتح ملف JSON",
|
||||
"Open Test Template": "افتح نموذج الاختبار",
|
||||
"Open URL": "رابط مفتوح",
|
||||
"Open data URL": "فتح URL البيانات",
|
||||
"Open from Webcam": "افتح من كاميرا الويب",
|
||||
"Original Size": "الحجم الأصلي",
|
||||
"PNGTOSVG - Convert Image to SVG": "PNGTOSVG - تحويل الصورة إلى SVG",
|
||||
"PageDown": "اسفل الصفحة",
|
||||
"PageUp": "PageUp",
|
||||
"Palette": "لوحة",
|
||||
"Parameter #1:": "المعلمة # 1:",
|
||||
"Parameter #2:": "المعلمة # 2:",
|
||||
"Paste": "معجون",
|
||||
"Pencil": "قلم",
|
||||
"Percentage:": "النسبة المئوية:",
|
||||
"Pixels:": "بكسل:",
|
||||
"Placeholder comment for color channels": "تعليق العنصر النائب لقنوات الألوان",
|
||||
"Placeholder comment for color picker": "تعليق العنصر النائب لمنتقي الألوان",
|
||||
"Placeholder comment for color swatches": "تعليق العنصر النائب لحوامل اللون",
|
||||
"Portable Network Graphics": "رسومات الشبكة المحمولة",
|
||||
"Português": "البرتغالية",
|
||||
"Position:": "موقع:",
|
||||
"Power:": "قوة:",
|
||||
"Preview": "معاينة",
|
||||
"Previous": "سابق",
|
||||
"Previous layer must be image, convert it to raster to apply this tool.": "يجب أن تكون الطبقة السابقة صورة ، قم بتحويلها إلى نقطية لتطبيق هذه الأداة.",
|
||||
"Print": "مطبعة",
|
||||
"Quality:": "جودة:",
|
||||
"Quick Load": "تحميل سريع",
|
||||
"Quick Save": "حفظ سريع",
|
||||
"REMOVE.BG - Remove Image Background": "؛ REMOVE.BG - إزالة خلفية الصورة",
|
||||
"Radial": "شعاعي",
|
||||
"Radial gradient": "شعاعي التدرج",
|
||||
"Radius:": "نصف القطر:",
|
||||
"Range:": "نطاق:",
|
||||
"Red": "أحمر",
|
||||
"Red channel:": "القناة الحمراء:",
|
||||
"Redo": "إعادة",
|
||||
"Remove all": "حذف الكل",
|
||||
"Rename": "إعادة تسمية",
|
||||
"Rename Layer": "إعادة تسمية الطبقة",
|
||||
"Rendered with errors.": "قدمت مع وجود أخطاء.",
|
||||
"Rendering...": "استدعاء...",
|
||||
"Replace Color": "استبدل اللون",
|
||||
"Replace color": "استبدل اللون",
|
||||
"Replacement:": "إستبدال:",
|
||||
"Report Issues": "الإبلاغ عن المشكلات",
|
||||
"Reset": "إعادة ضبط",
|
||||
"Reset zoom level": "إعادة تعيين مستوى التكبير",
|
||||
"Resize": "تغيير الحجم",
|
||||
"Resize Boundary": "تغيير حجم الحدود",
|
||||
"Resize Layer": "طبقة تغيير الحجم",
|
||||
"Resize Layers": "تغيير حجم الطبقات",
|
||||
"Resize Text Layer": "تغيير حجم طبقة النص",
|
||||
"Resized as background": "تم تغيير الحجم كخلفية",
|
||||
"Resolution:": "القرار:",
|
||||
"Restore Alpha": "استعادة ألفا",
|
||||
"Right": "حق",
|
||||
"Right angle:": "زاوية مستقيمة:",
|
||||
"Right to Left": "من اليمين الى اليسار",
|
||||
"Rotate": "استدارة",
|
||||
"Rotate Layer": "تدوير طبقة",
|
||||
"Rotate is not supported on this type of object. Convert to raster?": "التدوير غير مدعوم في هذا النوع من الكائنات. تحويل إلى نقطية؟",
|
||||
"Rotate left": "استدر يسارا",
|
||||
"Rotate:": "استدارة:",
|
||||
"Ruler": "مسطرة",
|
||||
"SQUOOSH - Compress and Compare Images": "SQUOOSH - ضغط ومقارنة الصور",
|
||||
"Saturate": "تشبع",
|
||||
"Saturation": "التشبع",
|
||||
"Saturation:": "التشبع:",
|
||||
"Save (Export)": "حفظ (تصدير)",
|
||||
"Save As": "حفظ باسم",
|
||||
"Save As Data URL": "حفظ باسم URL البيانات",
|
||||
"Save as": "حفظ باسم",
|
||||
"Save as type:": "حفظ كنوع:",
|
||||
"Save layers:": "حفظ الطبقات:",
|
||||
"Save resolution:": "حفظ القرار:",
|
||||
"Scaling up is not supported in Hermite, using Lanczos.": "التوسع غير مدعوم في Hermite ، باستخدام Lanczos.",
|
||||
"Scroll down": "حرك الفأرة لأسفل",
|
||||
"Scroll up": "انتقل إلى أعلى",
|
||||
"Search": "بحث",
|
||||
"Search Images": "البحث عن الصور",
|
||||
"Select All": "اختر الكل",
|
||||
"Select Text Layer": "حدد طبقة النص",
|
||||
"Select object tool": "حدد أداة الكائن",
|
||||
"Selected": "المحدد",
|
||||
"Selection Tool": "آلة الاختيار",
|
||||
"Sensitivity:": "حساسية:",
|
||||
"Separated": "منفصل",
|
||||
"Sepia": "بني داكن",
|
||||
"Set Image Size": "ضبط حجم الصورة",
|
||||
"Settings": "إعدادات",
|
||||
"Shadow": "ظل",
|
||||
"Shadow:": "ظل:",
|
||||
"Shapes": "الأشكال",
|
||||
"Sharpen": "شحذ",
|
||||
"Sharpen Tool": "أداة شحذ",
|
||||
"Sharpen:": "شحذ:",
|
||||
"Shortcut Key:": "مفتاح الاختصار:",
|
||||
"Show \/ Hide": "اظهر المخفي",
|
||||
"Show file size:": "إظهار حجم الملف:",
|
||||
"Simple": "بسيط",
|
||||
"Size": "مقاس",
|
||||
"Size is too big, max": "الحجم كبير جدًا ، الحد الأقصى",
|
||||
"Size:": "مقاس:",
|
||||
"Skip - layer must be image.": "تخطي - يجب أن تكون الطبقة عبارة عن صورة.",
|
||||
"Solarize": "شمسي",
|
||||
"Sorry, cold not load getUserMedia() data:": "عذرا ، لا تقم بتحميل بيانات getUserMedia ():",
|
||||
"Sorry, image could not be loaded.": "عذرا ، الصورة لا يمكن تحميلها.",
|
||||
"Sorry, image could not be loaded. Try copy image and paste it.": "عذرا ، الصورة لا يمكن تحميلها. حاول نسخ الصورة ولصقها.",
|
||||
"Sorry, image is too big, max 5 MB.": "عذرًا ، الصورة كبيرة جدًا ، بحد أقصى 5 ميجا بايت.",
|
||||
"Source coordinates saved.": "تم حفظ إحداثيات المصدر.",
|
||||
"Source is empty, right click on image or use long press to save source position.": "المصدر فارغ ، انقر بزر الماوس الأيمن على الصورة أو استخدم الضغط لفترة طويلة لحفظ موضع المصدر.",
|
||||
"Sprites": "العفاريت",
|
||||
"Square": "مربع",
|
||||
"Stream:": "مجرى:",
|
||||
"Strength:": "قوة:",
|
||||
"Strict": "صارم",
|
||||
"TINYPNG - Compress PNG and JPEG": "TINYPNG - ضغط PNG و JPEG",
|
||||
"Tab": "فاتورة غير مدفوعة",
|
||||
"Tag Image File Format": "تنسيق ملف صورة العلامة",
|
||||
"Tahoma": "تاهوما",
|
||||
"Target:": "استهداف:",
|
||||
"Theme": "سمة",
|
||||
"There": "هناك",
|
||||
"There are no layers behind.": "لا توجد طبقات خلف.",
|
||||
"There is only 1 layer.": "هناك طبقة واحدة فقط.",
|
||||
"This layer must contain an image. Please convert it to raster to apply this tool.": "يجب أن تحتوي هذه الطبقة على صورة. يرجى تحويله إلى نقطية لتطبيق هذه الأداة.",
|
||||
"Tilt Shift": "تحول الإمالة",
|
||||
"Times New Roman": "تايمز نيو رومان",
|
||||
"Toaster": "محمصة",
|
||||
"Toggle": "تبديل",
|
||||
"Toggle Color Channels": "تبديل قنوات الألوان",
|
||||
"Toggle Color Picker": "تبديل منتقي الألوان",
|
||||
"Toggle Menu": "تبديل القائمة",
|
||||
"Toggle Swatches": "تبديل العينات",
|
||||
"Tools": "أدوات",
|
||||
"Top": "قمة",
|
||||
"Top to Bottom": "من اعلى لاسفل",
|
||||
"Total pixels:": "إجمالي وحدات البكسل:",
|
||||
"Translate": "ترجمة",
|
||||
"Translate Layer": "طبقة الترجمة",
|
||||
"Translate error, can not find dictionary:": "خطأ في الترجمة ، لا يمكن العثور على القاموس:",
|
||||
"Transparency background:": "خلفية الشفافية:",
|
||||
"Transparent:": "شفاف:",
|
||||
"Trim": "تقليم",
|
||||
"Trim Layers": "طبقات القطع",
|
||||
"Trim borders:": "تقليم الحدود:",
|
||||
"Trim layer:": "طبقة القطع:",
|
||||
"Trim white color?": "تقليم اللون الأبيض؟",
|
||||
"Type:": "اكتب:",
|
||||
"Türkçe": "Türkçe",
|
||||
"Undo": "الغاء التحميل",
|
||||
"Unique colors:": "ألوان فريدة:",
|
||||
"Up": "فوق",
|
||||
"Update": "تحديث",
|
||||
"Update Brush Layer": "تحديث طبقة الفرشاة",
|
||||
"Update Pencil Layer": "تحديث طبقة القلم الرصاص",
|
||||
"Update guides": "أدلة التحديث",
|
||||
"Use Ctrl+V keyboard shortcut to paste from Clipboard.": "استخدم اختصار لوحة المفاتيح Ctrl + V للصق من الحافظة.",
|
||||
"V Radius:": "نصف القطر الخامس:",
|
||||
"V. Align:": "V. محاذاة:",
|
||||
"Valencia": "فالنسيا",
|
||||
"Verdana": "فيردانا",
|
||||
"Version:": "الإصدار:",
|
||||
"Vertical": "رأسي",
|
||||
"Vertical Alignment": "انحياز عمودي",
|
||||
"Vertical blur:": "التمويه العمودي:",
|
||||
"Vertical:": "رأسي:",
|
||||
"Vibrance": "حيوية",
|
||||
"View": "رأي",
|
||||
"Vignette": "المقالة القصيرة",
|
||||
"ViliusL": "ViliusL",
|
||||
"Vintage": "كلاسيكي",
|
||||
"Webcam": "كاميرا ويب",
|
||||
"Webcam #": "كاميرا ويب #",
|
||||
"Website:": "موقع الكتروني:",
|
||||
"Weppy File Format": "تنسيق ملف Weppy",
|
||||
"Width (%):": "عرض (٪):",
|
||||
"Width:": "عرض:",
|
||||
"Windows Bitmap": "Windows Bitmap",
|
||||
"Word": "كلمة",
|
||||
"Word + Letter": "كلمة + حرف",
|
||||
"Wrap At:": "التفاف في:",
|
||||
"Wrap:": "لف:",
|
||||
"Wrong dimensions": "أبعاد خاطئة",
|
||||
"Wrong file type, must be image or json.": "نوع الملف غير صحيح ، يجب أن يكون صورة أو json.",
|
||||
"X end:": "نهاية X:",
|
||||
"X position:": "المركز العاشر:",
|
||||
"X start:": "بداية X:",
|
||||
"X-Pro II": "اكس برو الثاني",
|
||||
"Y end:": "نهاية ص:",
|
||||
"Y position:": "موقف ص:",
|
||||
"Y start:": "بداية Y:",
|
||||
"You can also drag and drop items into browser.": "يمكنك أيضًا سحب العناصر وإفلاتها في المتصفح.",
|
||||
"Your browser does not support canvas or JavaScript is not enabled.": "لا يدعم المستعرض الخاص بك اللوحة القماشية أو لم يتم تمكين JavaScript.",
|
||||
"Your browser does not support this format.": "متصفحك لا يدعم هذا التنسيق.",
|
||||
"Your search did not match any images.": "بحثك لم يطابق أي صور.",
|
||||
"Zoom": "تكبير",
|
||||
"Zoom Blur": "زووم بلور",
|
||||
"Zoom In": "تكبير",
|
||||
"Zoom Out": "تصغير",
|
||||
"Zoom blur": "زووم طمس",
|
||||
"Zoom in": "تكبير",
|
||||
"Zoom out": "تصغير",
|
||||
"Zoom:": "تكبير:"
|
||||
}
|
||||
@ -1,4 +1,5 @@
|
||||
{
|
||||
"11px Arial": "",
|
||||
"1em": "",
|
||||
"24-Points star": "",
|
||||
"2d": "",
|
||||
@ -49,6 +50,7 @@
|
||||
"Can not animate 1 layer.": "",
|
||||
"Can not find previous layer.": "",
|
||||
"Cancel": "",
|
||||
"Canvas size": "",
|
||||
"Center": "",
|
||||
"Center x:": "",
|
||||
"Center y:": "",
|
||||
@ -130,6 +132,7 @@
|
||||
"Emboss": "",
|
||||
"Empty selection": "",
|
||||
"Empty selection or type not image.": "",
|
||||
"Enable guides:": "",
|
||||
"Enable snap:": "",
|
||||
"End": "",
|
||||
"English": "",
|
||||
@ -139,6 +142,7 @@
|
||||
"Erase on rotate object is disabled. Sorry.": "",
|
||||
"Error": "",
|
||||
"Error connecting to service.": "",
|
||||
"Error registering service worker": "",
|
||||
"Error: can not find filter:": "",
|
||||
"Error: can not find layer with id:": "",
|
||||
"Error: missing details event target": "",
|
||||
@ -148,6 +152,7 @@
|
||||
"Español": "",
|
||||
"Expand edges": "",
|
||||
"Exponent:": "",
|
||||
"Export": "",
|
||||
"External": "",
|
||||
"Factor:": "",
|
||||
"File": "",
|
||||
@ -163,6 +168,7 @@
|
||||
"Font": "",
|
||||
"Français": "",
|
||||
"Full HD, 1080p": "",
|
||||
"Full Screen": "",
|
||||
"Full layers data": "",
|
||||
"Gap:": "",
|
||||
"Gaussian Blur": "",
|
||||
@ -179,6 +185,8 @@
|
||||
"Greyscale:": "",
|
||||
"Grid": "",
|
||||
"Grid on\/off": "",
|
||||
"Guides": "",
|
||||
"Guides enabled.": "",
|
||||
"H Radius:": "",
|
||||
"H. Align:": "",
|
||||
"Heatmap": "",
|
||||
@ -194,6 +202,7 @@
|
||||
"Horizontal": "",
|
||||
"Horizontal Alignment": "",
|
||||
"Horizontal blur:": "",
|
||||
"Horizontal:": "",
|
||||
"Hue": "",
|
||||
"Hue Rotate": "",
|
||||
"Hue:": "",
|
||||
@ -203,6 +212,8 @@
|
||||
"Increase": "",
|
||||
"Information": "",
|
||||
"Inkwell": "",
|
||||
"Insert": "",
|
||||
"Insert guides": "",
|
||||
"Insert:": "",
|
||||
"Instagram Filters": "",
|
||||
"Invalid Hex Code": "",
|
||||
@ -210,6 +221,7 @@
|
||||
"JPG\/JPEG Format": "",
|
||||
"Kerning:": "",
|
||||
"Key-Points": "",
|
||||
"KeyU": "",
|
||||
"Keyboard Shortcuts": "",
|
||||
"Keyword:": "",
|
||||
"Lanczos": "",
|
||||
@ -303,6 +315,7 @@
|
||||
"Placeholder comment for color swatches": "",
|
||||
"Portable Network Graphics": "",
|
||||
"Português": "",
|
||||
"Position:": "",
|
||||
"Power:": "",
|
||||
"Preview": "",
|
||||
"Previous": "",
|
||||
@ -319,6 +332,7 @@
|
||||
"Red": "",
|
||||
"Red channel:": "",
|
||||
"Redo": "",
|
||||
"Remove all": "",
|
||||
"Rename": "",
|
||||
"Rename Layer": "",
|
||||
"Rendered with errors.": "",
|
||||
@ -345,11 +359,12 @@
|
||||
"Rotate is not supported on this type of object. Convert to raster?": "",
|
||||
"Rotate left": "",
|
||||
"Rotate:": "",
|
||||
"Ruler": "",
|
||||
"SQUOOSH - Compress and Compare Images": "",
|
||||
"Saturate": "",
|
||||
"Saturation": "",
|
||||
"Saturation:": "",
|
||||
"Save": "",
|
||||
"Save (Export)": "",
|
||||
"Save As": "",
|
||||
"Save As Data URL": "",
|
||||
"Save as": "",
|
||||
@ -399,6 +414,7 @@
|
||||
"Strict": "",
|
||||
"TINYPNG - Compress PNG and JPEG": "",
|
||||
"Tab": "",
|
||||
"Tag Image File Format": "",
|
||||
"Tahoma": "",
|
||||
"Target:": "",
|
||||
"Theme": "",
|
||||
@ -428,12 +444,15 @@
|
||||
"Trim borders:": "",
|
||||
"Trim layer:": "",
|
||||
"Trim white color?": "",
|
||||
"Type:": "",
|
||||
"Türkçe": "",
|
||||
"Undo": "",
|
||||
"Unique colors:": "",
|
||||
"Up": "",
|
||||
"Update": "",
|
||||
"Update Brush Layer": "",
|
||||
"Update Pencil Layer": "",
|
||||
"Update guides": "",
|
||||
"Use Ctrl+V keyboard shortcut to paste from Clipboard.": "",
|
||||
"V Radius:": "",
|
||||
"V. Align:": "",
|
||||
@ -443,11 +462,12 @@
|
||||
"Vertical": "",
|
||||
"Vertical Alignment": "",
|
||||
"Vertical blur:": "",
|
||||
"Vertical:": "",
|
||||
"Vibrance": "",
|
||||
"View": "",
|
||||
"Vignette": "",
|
||||
"ViliusL": "",
|
||||
"Vintage": "",
|
||||
"Visible:": "",
|
||||
"Webcam": "",
|
||||
"Webcam #": "",
|
||||
"Website:": "",
|
||||
|
||||
@ -12,6 +12,7 @@ $SOURCE_DIRS = [
|
||||
];
|
||||
|
||||
$LANGUAGES = [
|
||||
'ar',
|
||||
'de',
|
||||
'es',
|
||||
'fr',
|
||||
@ -22,7 +23,7 @@ $LANGUAGES = [
|
||||
'pt',
|
||||
'ru',
|
||||
'tr',
|
||||
'zh',
|
||||
'zh',
|
||||
];
|
||||
|
||||
$LANG_DIR = __DIR__ . '/../../src/js/languages/';
|
||||
|
||||
@ -10,14 +10,17 @@ $translator = new Translator();
|
||||
<title>Translator</title>
|
||||
</head>
|
||||
<body>
|
||||
<h3 style="margin: 10px 0px;"><a href="">Translator</a></h3>
|
||||
<h3 style="margin: 10px 0;"><a href="">Translator</a></h3>
|
||||
<form action="" method="post">
|
||||
<b>Helpers</b>:
|
||||
<input type="submit" name="action" value="Import" />
|
||||
<input type="submit" name="action" value="Filter" />
|
||||
<input type="submit" name="action" value="Translate manually" />
|
||||
<input type="submit" name="action" value="Merge" />
|
||||
<br /><br />
|
||||
<b>Actions</b>:
|
||||
<input type="submit" name="action" value="Generate empty.json" />
|
||||
<input style="font-weight:bold;" type="submit" name="action" value="Auto Tanslate" />
|
||||
<input style="font-weight:bold;" type="submit" name="action" value="Auto Translate" />
|
||||
<br /><br />
|
||||
<?php
|
||||
if (count($_POST) > 0) {
|
||||
@ -25,13 +28,13 @@ $translator = new Translator();
|
||||
if ($_POST['action'] == 'Import') {
|
||||
$translator->scan();
|
||||
$translator->extract();
|
||||
echo "<xmp>"; print_r($translator->strings); echo "</xmp>\n";
|
||||
echo "<pre>"; print_r($translator->strings); echo "</pre>\n";
|
||||
}
|
||||
if ($_POST['action'] == 'Filter') {
|
||||
$translator->scan();
|
||||
$translator->extract();
|
||||
$translator->filter();
|
||||
echo "<xmp>"; print_r($translator->strings); echo "</xmp>\n";
|
||||
echo "<pre>"; print_r($translator->strings); echo "</pre>\n";
|
||||
}
|
||||
if ($_POST['action'] == 'Translate manually') {
|
||||
//show form
|
||||
@ -51,7 +54,7 @@ $translator = new Translator();
|
||||
if ($_POST['action'] == 'Merge') {
|
||||
$translator->merge();
|
||||
}
|
||||
if ($_POST['action'] == 'Auto Tanslate') {
|
||||
if ($_POST['action'] == 'Auto Translate') {
|
||||
//prepare
|
||||
$translator->scan();
|
||||
$translator->extract();
|
||||
|
||||
@ -13,10 +13,11 @@ class Translator {
|
||||
public $files;
|
||||
public $strings;
|
||||
public $translations;
|
||||
public $lang;
|
||||
|
||||
/**
|
||||
* scan external resources
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public function scan() {
|
||||
global $SOURCE_DIRS;
|
||||
@ -51,6 +52,8 @@ class Translator {
|
||||
|
||||
/**
|
||||
* extracts strings from files
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public function extract() {
|
||||
$this->strings = array();
|
||||
@ -64,6 +67,9 @@ class Translator {
|
||||
//drop svg
|
||||
$content = preg_replace('|<path.*/>|i', '', $content);
|
||||
|
||||
//drop exceptions
|
||||
$content = preg_replace('|\/\/no-translate BEGIN[\s\S]+?\/\/no-translate END|mi', '', $content);
|
||||
|
||||
//drop
|
||||
$content = stripslashes($content);
|
||||
|
||||
@ -179,8 +185,6 @@ class Translator {
|
||||
continue;
|
||||
}
|
||||
|
||||
//$string = $this->my_mb_ucfirst(mb_strtolower($string));
|
||||
|
||||
$this->strings[] = $string;
|
||||
}
|
||||
$this->strings = array_unique($this->strings);
|
||||
@ -189,6 +193,8 @@ class Translator {
|
||||
|
||||
/**
|
||||
* prepare strings for translating for user
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public function prepare() {
|
||||
$this->scan();
|
||||
@ -201,10 +207,6 @@ class Translator {
|
||||
if (isset($_POST['in']))
|
||||
$in_content = $_POST['in'];
|
||||
|
||||
$lang = '';
|
||||
if (isset($_POST['lang']))
|
||||
$lang = $_POST['lang'];
|
||||
|
||||
echo '<textarea name="out" style="width:100%;height:25vh;">' . implode("\n", $data) . '</textarea><br /><br />';
|
||||
echo 'Translate text above with <a href="https://translate.google.com/">translator</a> and paste result below:<br /><br />';
|
||||
echo '<textarea name="in" style="width:100%;height:25vh;">' . $in_content . '</textarea><br />';
|
||||
@ -214,8 +216,9 @@ class Translator {
|
||||
/**
|
||||
* combines source strings and manually translated strings to json format
|
||||
*
|
||||
* @param array $translation
|
||||
* @param string $lang 2 lang cde
|
||||
* @param string $translation
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public function add_translation($translation) {
|
||||
$translation = trim($translation);
|
||||
@ -237,6 +240,11 @@ class Translator {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* translates everything automatically
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public function auto_translate() {
|
||||
global $LANGUAGES, $LANG_DIR;
|
||||
|
||||
@ -308,6 +316,8 @@ class Translator {
|
||||
|
||||
/**
|
||||
* saves current data as empty file
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public function save_empty() {
|
||||
global $LANG_DIR_EMPTY;
|
||||
@ -342,6 +352,8 @@ class Translator {
|
||||
|
||||
/**
|
||||
* merge two translations
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public function merge() {
|
||||
echo 'Old translations: <b>(priority on same keys)</b><br />';
|
||||
@ -386,9 +398,4 @@ class Translator {
|
||||
echo '</textarea>';
|
||||
}
|
||||
|
||||
private function my_mb_ucfirst($str) {
|
||||
$fc = mb_strtoupper(mb_substr($str, 0, 1));
|
||||
return $fc . mb_substr($str, 1);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user