Tôi đã đi qua tất cả các chủ đề về nhúng phông chữ trong AS3 tôi có thể tìm thấy, một thứ thử tất cả các giải pháp. Tôi có thể thiếu một cái gì đó hiển nhiên, nhưng tôi không hoàn toàn hiểu những gì tôi đang làm như vậy xin vui lòng hướng dẫn tôi đi đúng hướng. Nhiều câu trả lời liên quan đến Flash Builder hoặc công cụ khác nhưng tôi sử dụng FlashDevelop. Không có ý tưởng cho dù đó là vấn đề.Tại sao tôi không thể hiển thị các phông chữ được nhúng trong AS3?
Tôi có dòng này trong Main.as tôi:
[Embed(source = "assets/SKA_75_marul_CE_extended.ttf",
fontName = "SKA_75_marul_CE_extended",
fontWeight = "bold",
advancedAntiAliasing = "true",
mimeType = "application/x-font")]
public static var SKA_75_marul_CE_extended:String;
Và này tồn tại trong các nhà xây dựng của một Sprite mở rộng gọi là Pointer.as:
var format:TextFormat = new TextFormat();
format.font = "SKA_75_marul_CE_extended";
format.color = 0xFFCCCC;
format.size = 20;
var label:TextField = new TextField();
label.defaultTextFormat = format;
label.text = "test";
label.embedFonts = true;
label.antiAliasType = AntiAliasType.ADVANCED;
//label.setTextFormat(format); --> I tried this too, didn't work...
label.defaultTextFormat = format;
label.x += img.width + 50;
this.addChild(label);
Cách duy nhất tôi đã tìm thấy để làm cho nó hiển thị bất cứ điều gì là nếu tôi tắt embedFonts. Tôi đã thử nhúng C: /windows/fonts/arial.ttf mà không thành công.
Dường như việc nhúng phông chữ là một tác phẩm tối như không có người nào khác và tôi phải thừa nhận sau 1 giờ đấu tranh. Vui lòng gửi trợ giúp.
UPDATE:
Dưới đây là đoạn code làm việc, hóa ra đó là do có đúng trật tự của hoạt động ...:
[Embed(source="assets/SKA_75_marul_CE_extended.ttf",
fontName = "myFont",
mimeType = "application/x-font",
fontWeight="normal",
fontStyle="normal",
unicodeRange="U+0020-U+007E",
advancedAntiAliasing="true",
embedAsCFF="false")]
private var myEmbeddedFont:Class;
var tf:TextFormat = new TextFormat("myFont", 20,0xffffff);
var t:TextField = new TextField;
t.embedFonts = true; // very important to set
t.defaultTextFormat = tf;
t.text = text;
t.x += img.width + 50;
t.width = 700;
this.addChild(t);
Cảm ơn bạn đã trả lời của bạn. "Thứ tự chính xác của hoạt động" hóa ra là chìa khóa –