KiegészítÅ‘k a jobbról olvasandó nyelvekhez írta bahramm, fordító a Perzsa (fa-IR) nyelvre
A perzsa egy jobbról balra olvasandó nyelv. Nem elég a nyelvi fájlok kitöltése. A felhasználói felület megjelenítése is másmilyen.
Normális esetben egy angol html weboldal alapértelmezetten balról jobbra van megjelenítve, mert az univerzális attribútumok, mint pl. a "dir" és a "text-align" is így működnek. Ha jobbról balra olvasandó szöveg vagy kép van jelen, akkor az igazítást meg kell változtatni jobbra, például:
<div style="direction:rtl; text-align: right;"> egy Perzsa szöveg </div> ezt az attribútumot beállíthatja globálisan, de csak akkor, ha biztos abban, hogy nem lesz közötte angol szöveg. Ha pl. angol és Perzsa szöveg keveredik, akkor az angol szöveget balra kell igazítania, például:
<body style="direction: rtl; text-align: right;"> perzsa szöveg <div style="direction: ltr; text-align: left;">
angol szöveg </div> ismét perzsa szöveg!!
</body>
A kérdés tehát az, honnan tudom, hogy milyen a nyelv, pontosabban az, honnan tudom annak irányát? A válasz a global.dtd fájlban keresendÅ‘:
chrome://global/locale/global.dtd
az entitást beolvashatja a kiterjesztés inicializációs részében, például
MyOverlay.js
function getDirection() { var myLocalBundleService = Components.classes ["@mozilla.org/intl/stringbundle;1"]
.getService(Components.interfaces.nsIStringBundleService); var myLocalStrings = myLocalBundleService .createBundle("chrome://global/locale/global.dtd"); return myLocalStrings.GetStringFromName("locale.dir");
}
Az angol nyelvi fájlnak (en-US), a getDirection funkció értéke "ltr", a perzsa nyelvnek (fa-IR) pedig "rtl".
Amit tennie kell csak annyi, hogy definiál két osztályt, melyet a szövegekre használ majd fel:
style.css
.r2l { direction: rtl; text-align: right; } .l2r {
direction: ltr; text-align: left; } --------- További információk: http://www.i18nguy.com/temp/rtl.html
|