כל מי שיצא לו לעבוד עם אפליקציות פלאש שאמורות להכיל טקסט בעברית בוודאי יודע עד כמה התמיכה היא מוגבלת ובעייתית ולעיתים נדירות התוצאה משביעה רצון.
נכון להיום, למיטב הבנתי, יש שלוש דרכים לכתוב בעברית בתוך קובץ פלאש, אף אחת מהן לא נוחה במיוחד.
הראשונה – שימוש בגרפיקה – ע"י ציור של האותיות במקום כתיבה שלהן. זה נוח בשביל משחק פשוט או ממשק בסיסי, אבל מתחיל להיות מסורבל ברגע שמשתמשים באפליקציה טקסטואלית.
השניה – שימוש בפונטים של המשתמש – כתיבה פשוטה בעברית, ולכאורה הפיתרון המתבקש – אבל בגלל התמיכה המחורבנת – מספיק סימן פיסוק או תו לועזי בתוך הטקסט כדי לשבש את התוצרת. חיסרון אחר לבעיה מתבטא בתצוגה הפוכה של הטקסט במערכות שאינן חלונות – קצת כמו להיכנס לאתר עם עברית לוגית כשהדפדפן מכוון על עברית וויזואלית.
האופציה השלישית – היא האידאלית מבחינת תצוגה אבל בעייתית מבחינת "הכנה". בשיטה הזו, מטמיעים את הפונט בתוך אפליקציית הפלאש ובכך נמנעים ממצב שבו מחשב טוען את האפליקציה אך התצוגה לקויה כי הוא אינו מצוייד בפונט המתאים. העלות, לרוע המזל, מתבטאת בכך שהטקסט צריך להגיע הפוך – דהיינו כעברית לוגית ולא כעברית וויזואלית. .
אז נכון, שלכתוב םולש במקום שלום זה פשוט, אבל מה קורה כשרוצים להפוך משפט ארוך יותר? איך מתמודדים עם עם טקסט שמכיל אנגלית ועברית ביחד? סימני פיסוק? מספרים ותאריכים?
בפועל, יש בשוק לא מעט תוכנות ואתרים שמספקים שירות הפיכת טקסט מעברית לוגית לוויזואלית ולהפך, וזה די פשוט כשיוצרים אפליקציה עם תוכן קבוע, אבל מה קורה במקרים בהם האפליקציה צריכה לשאוב תוכן חיצוני – כגון אפליקציית פלאש שאמורה להציג עדכוני RSS?
ביומיים האחרונים ניסיתי למצוא אלגוריתם שממיר טקסטים שכאלה, לצערי ללא הצלחה מרובה, מצאתי סקריפט VB שאמור לעשות את זה והיה חלש למדי וכמובן שרוב התוכנות / אתרים שבדקתי לא ממש שמחו לשתף את הקוד.
וכך, החלטתי לשבת ולנסות לבנות אלגוריתם שמבצע את ההמרות הללו בעצמי ודי נראה לי שעמדתי במשימה – אם כי אני די משוכנע שלא עברתי על כל האפשרויות, ובטוח יש צירופים שמהם התעלמתי.
אז הנה הקוד ב java ומי שרוצה לנסות מוזמן. הערות והארות יתקבלו בברכה כמו גם מחשבות לגבי כיצד להפיל / להתקיל את האלגוריתם.
כתיבת תגובה