Gelişmiş metin oluşturmaFlash Player 9 ve üstü, Adobe AIR 1.0 ve üstü ActionScript 3.0, flash.text package ile, gömülü fontlar, kenar yumuşatma ayarları, alfa kanal denetimi ve diğer belirli ayarlar da dahil olmak üzere, görüntülenen metnin özelliklerini denetlemek için çeşitli sınıflar sağlar. ActionScript 3.0 Başvurusu, CSMSettings, Font ve TextRenderer sınıfları da dahil olmak üzere, bu sınıfların ve özelliklerin ayrıntılı açıklamalarını sağlar. Gömülü fontları kullanmaUygulamanızdaki TextField için belirli bir font belirttiğinizde, Flash Player veya AIR aynı ada sahip bir aygıt fontu (kullanıcının bilgisayarında bulunan bir font) arar. Söz konusu fontu sistemde bulamazsa veya kullanıcı bu fontun aynı ada sahip olan biraz farklı bir sürümüne sahipse, metin görüntüsü amaçladığınızdan çok farklı görünebilir. Kullanıcının tam olarak doğru fontu gördüğünden emin olmak için, söz konusu fontu uygulama SWF dosyanıza gömebilirsiniz. Gömülü fontlar birkaç açıdan faydalıdır:
Gömülü fontları kullanmanın getirdiği en büyük sınırlama, uygulamanızın dosya boyutunu veya indirme boyutunu artırmasıdır. Uygulama SWF dosyanıza bir font dosyası gömmeye yönelik tam yöntem, geliştirme ortamınıza göre değişiklik gösterir. Bir fontu gömdükten sonra, TextField öğesinin doğru gömülü fontu kullandığından şu şekilde emin olabilirsiniz:
Flash'ta font gömmeFlash Professional, TrueType fontları ve Type 1 Postscript fontları dahil olmak üzere, neredeyse sisteminize yüklediğiniz tüm fontlardan herhangi birini gömmenize izin verir. Bir uygulamaya, aşağıdaki yöntemler de dahil olmak üzere birçok şekilde font gömebilirsiniz:
Uygulamalara font gömme hakkında daha fazla ayrıntı için, Flash'ı Kullanma bölümündeki "Dinamik metin alanları ve girdi metni alanları için gömülü fontlar" konusuna bakın. Flex'te font gömmeBir Flex uygulamasına, aşağıdaki yöntemler de dahil olmak üzere birçok şekilde font gömebilirsiniz:
Bir Flex uygulamasına yalnızca TrueType fontlarını doğrudan gömebilirsiniz. Type 1 Postscript fontları gibi diğer biçimlerdeki fontlar, ilk olarak Flash Professional kullanılarak bir SWF dosyasına gömülebilir ve daha sonra bu SWF dosyası, Flex uygulamanızda kullanılabilir. Flex'te SWF dosyalarından gömülü font kullanma hakkında daha fazla ayrıntı için, Flex 4'ü kullanma bölümündeki "SWF dosyalarından font gömme" başlığına bakın. Keskinliği, kalınlığı ve yumuşatmayı denetlemeVarsayılan olarak Flash Player veya AIR, keskinlik, kalınlık ve kenar yumuşatma gibi metin görüntüsü denetimlerinin ayarlarını, metin yeniden boyutlandırıldığında, renk değiştirdiğinde veya çeşitli arka planlar üzerinde görüntülendiğinde belirler. Çok küçük veya çok büyük metinle çalıştığınız ya da metinle çeşitli arka planlar üzerinde çalıştığınız durumlar gibi bazı durumlarda, bu ayarlar üzerindeki denetiminizi korumak isteyebilirsiniz. flash.text.TextRenderer sınıfını ve CSMSettings sınıfı gibi ilişkili sınıflarını kullanarak, Flash Player veya AIR ayarlarınızı geçersiz kılabilirsiniz. Bu sınıflar size, gömülü metnin oluşturma kalitesi üzerinde kesin denetim sunar. Gömülü fontlar hakkında daha fazla bilgi için, Gömülü fontları kullanma konusuna bakın. Not: flash.text.TextField.antiAliasType özelliği, keskinliği, kalınlığı veya gridFitType özelliğini ayarlayabilmeniz ya da TextRenderer.setAdvancedAntiAliasingTable() yöntemini kullanabilmeniz için AntiAliasType.ADVANCED değerine sahip olmalıdır.
Aşağıdaki örnek, myFont adında gömülü bir fontu kullanarak görüntülenen metne sürekli kontur modülasyonu (CSM) özellikleri ve formatlaması uygular. Kullanıcı görüntülenen metni tıklattığında, Flash Player veya Adobe AIR özel ayarlar uygular: var format:TextFormat = new TextFormat(); format.color = 0x336699; format.size = 48; format.font = "myFont"; var myText:TextField = new TextField(); myText.embedFonts = true; myText.autoSize = TextFieldAutoSize.LEFT; myText.antiAliasType = AntiAliasType.ADVANCED; myText.defaultTextFormat = format; myText.selectable = false; myText.mouseEnabled = true; myText.text = "Hello World"; addChild(myText); myText.addEventListener(MouseEvent.CLICK, clickHandler); function clickHandler(event:Event):void { var myAntiAliasSettings = new CSMSettings(48, 0.8, -0.8); var myAliasTable:Array = new Array(myAntiAliasSettings); TextRenderer.setAdvancedAntiAliasingTable("myFont", FontStyle.ITALIC, TextColorType.DARK_COLOR, myAliasTable); } |
|