Gyorsítótárazás (internacionalizáció)
Az Uniscribe unicode-to-glyph (cmap) leképezéseket, karakterjelszélességeket és OpenType-szkriptalakítási táblázatokat ment. Egy adott méretű betűtípus tábláira vonatkozó fogantyút "szkriptgyorsítótárnak" nevezzük. Számos Uniscribe függvény egy eszközkörnyezeti kezelőparamétert és egy SCRIPT_CACHE struktúrára mutató mutatót is meghív. Ezek a függvények először a szkriptgyorsítótáron keresztül keresnek információkat, és csak akkor használják az eszközkörnyezetet, ha a szükséges táblák még nincsenek gyorsítótárazva. A ScriptShape, ScriptPlacevagy ScriptTextOut függvény meghívásakor az alkalmazásnak egy mutatót kell átadnia egy SCRIPT_CACHE struktúrának. A fogantyút a NULL értékre kell inicializálni, mielőtt az alkalmazás először továbbítja azt egy Uniscribe függvénynek. Az alkalmazásnak soha nem szabad ugyanazt a fogópontot átadni különböző betűtípusokhoz vagy különböző méretekhez.
Az alkalmazások bármikor felszabadíthatnak egy szkriptgyorsítótárat. Az Uniscribe megtartja a hivatkozásszámokat a betűtípusban és az alakzatgyorsítótárakban, csak akkor szabadít fel betűtípusadatokat, ha a betűtípus minden méretének felszabadítása történik, és csak akkor szabadít fel alakzatadatokat, ha az alakzatkezelő által támogatott összes betűtípus felszabadul. Amikor az alkalmazás végzett egy stílusával, meg kell hívnia a ScriptFreeCache függvényt, hogy felszabadítsa a stílus gyorsítótár szkriptjét.
ScriptShape és ScriptPlaceesetén az alkalmazás null értékű eszközkörnyezetet adhat át. A hívás leggyakrabban sikeres lesz, mivel a szükséges táblák már gyorsítótárazva vannak. Ha az átalakítás vagy elhelyezés eszközkörnyezethez való hozzáférést igényel, ScriptShape vagy ScriptPlace azonnal visszatér az E_PENDING hibakóddal. Ezután az alkalmazásnak ki kell választania a betűtípust az eszközkörnyezetben. A legtöbb alkalmazás esetében ez javítja a teljesítményt azáltal, hogy elkerüli az eszközkörnyezet-kezelő ismételt előkészítését a SelectObjecthívásaival.
Kapcsolódó témakörök
-
Uniscribe használata