أداة الترجمة اليابانية إلى الإنجليزية لملفات SWF (Flash)
يمكن استخدام أداة Python هذه لاستخراج الأوتار من أصول SWF للترجمة ، والقيام بالترجمة نفسها (قائمة على السحابة أو دون اتصال) ، واكتب الأوتار المترجمة إلى الأصول. ستحتاج أيضًا إلى Decompiler JPEXS المفتوح المصدر لنقل الأصول داخل وخارج ملف SWF.
Pytranslateswf مرخصة بموجب ترخيص معهد ماساتشوستس للتكنولوجيا (انظر LICENSE.txt ).
ستحتاج إلى Python 3.6+ والمكتبات التالية:
... إذا كنت ترغب في استخدام خدمة ترجمة Microsoft Azure (موصى بها):
pip install regex uuid requests... إذا كنت ترغب في استخدام المترجم غير المتصل بالإنترنت:
pip install regex jamdict stanza سوف نستخدم Decompiler JPEXS Flash و translateSfw.py البرنامج النصي للتفاعل مع المكتبة. يمكنك استخدام -h للحصول على مساعدة: translateSfw.py -h أو translateSfw.py translate -h .
texts والبرامج scripts وانقر فوق زر Export Selection في الشريط أعلاه. تأكد من تصدير النص على أنه "نص عادي" والبرامج النصية كـ "ActionScript".texts وبرامج scripts ).في دليل العمل الخاص بك ، قم بتشغيل ما يلي:
translateSfw.py gatherسيؤدي ذلك إلى إنشاء ملف JSON مع جميع السلاسل المستخرجة (الفريدة) ، جاهزة للترجمة. لاحظ أنه من غير المرجح أن يستخرج هذا 100 ٪ من النصوص ، لا سيما النصوص المحفوظة كرسومات نقطية/متجه وأي حرفية سلسلة في ActionScript التي فاتتها الإرشادية.
إذا كنت تستخدم Microsoft Azure (موصى بها) ، فتشغيل ما يلي:
translateSfw.py translate azure --azure-subscription-key < YOUR-KEY > --azure-subscription-region < YOUR-REGION >يمكنك أيضًا استخدام الواجهة الخلفية للترجمة في وضع عدم الاتصال (والتي ستولد نص جودة أقل):
translateSfw.py translate offlineفي دليل العمل الخاص بك ، قم بتشغيل ما يلي:
translateSfw.py export هذا سوف يعدل الأصول مع الأوتار الجديدة. لا تقم بتشغيل gather أو export مرة أخرى بعد القيام بذلك ، لأن البرنامج النصي سيشعر بالارتباك من الأوتار الجديدة في الأصول. إذا كنت ترغب في القيام بشيء مختلف ، فقم بحذف الأصول والبدء من جديد عن طريق تصديرها (انظر الخطوة 1).
Import Text Import Scripts في الشريط أعلاه لتحميل الأصول المعدلة من دليل العمل.Save As... في الشريط وإنشاء ملف SWF المترجم. حاليًا ، هناك نوعان من الخلفية المتاحة للترجمة الآلية: مترجم الخدمات المعرفية Microsoft Azure (ترجمة آلية "قائمة على السحابة ،" المناسبة ") والحل المخصص للإنترنت (القائم على القاموس ، قابل للاستخدام بشكل هامشي). يوصى باستخدام Microsoft Azure إن أمكن - ستحتاج إلى مفتاح اشتراك للقيام بذلك.
| نص الإدخال | ترجمة (Microsoft Azure) | ترجمة (مترجم غير متصل) |
|---|---|---|
| こんにちは世界 | مرحبا بالعالم | Konnichi ها العالم |
بالإضافة إلى ذلك ، يمكنك تخطي خطوة الترجمة الآلية وترجمة السلاسل المستخرجة بنفسك. يتم تخزينها كـ JSON.
يتم استخدام الفئات الفرعية Translator على النحو التالي:
from pyTranslateSwf import OfflineTranslator , MicrosoftAzureTranslator
translator = OfflineTranslator ()
input_strings = [ "こんにちは世界" ]
output_strings = translator . translate_all ( input_strings )
print ( output_strings [ 0 ]) يتم استخدام الفئات Parser على النحو التالي:
from pyTranslateSwf import JPEXSActionScriptParser , JPEXSPlainTextParser
parser = JPEXSActionScriptParser ( "./scripts/test.as" )
input_strings = parser . get_extracted_strings ()
output_strings = [ my_translate_function ( s ) for s in input_strings ]
parser . replace_strings ( output_strings )
parser . save ()الرجوع إلى الوحدة النمطية والفئة docstrings لمزيد من المعلومات.