Frage

Ich verwende eine externe swf eine Reihe von Schriftklassen enthalten, die Schriftarten für meine Flash-Site zur Laufzeit laden und zu registrieren. (Exportierte in der Bibliothek Platte Flash-IDE dann im Rahmen Skript registriert)

In diesem speziellen Fall die swf eine Reihe von unterschiedlichen Gewichten der gleichen Familie enthalten. z.B. font römisch, Schrift kursiv, Schrift Licht, Schrift schwer, etc ...

Die Schriften erscheinen fein zu registrieren, aber wenn ich versuche, die Schriften sind identisch einige der Schriftname Eigenschaften dieser Schriftart zu verwenden. Drei zeigen als Roman und zwei als Licht und ist Licht sc ... Also ging ich für einige dumme Codierungsfehler suchen, aber zu meinem Entsetzen fand ich nicht irgendwelche. Die richtigen Schriftart Objekte wurden in der richtigen Reihenfolge geladen werden.

Nach ziemlich viel Testen ich meine Fonts-Ordner (Vista) überprüft. Wenn ich die Datei für Schwer der Titel in Font Viewer geöffnet zeigt Roman; die Titel in font viewer abgestimmt, was ich in Flash zu bekommen. Dieses Verhalten scheint diese Schrift eindeutig zu sein.

Da Schriftname ist der einzige Weg, ich weiß, wie man eine Schriftart ein Textfeld zuweisen ich ratlos bin, wie ich diese schöne schwere Schrift für meine dynamischen Schriften verwenden kann!

Es ist ein Typ-1-Schrift

Kann jemand empfehlen, eine Ursache, eine Lösung oder eine Abhilfe?

War es hilfreich?

Lösung

Danke, ich denke, Ihr Recht.

ich aber fand einen Weg, um die Schrift einzubetten und den Namen zu setzen.

Als erstes habe ich Cross verwendet, um den Typ-1-Postscript-Schriftart zu einem OTF zu konvertieren

Mit dem [einbetten ()] Feature jetzt in cs4 konnte ich das Attribut family verwenden, um die Schriftname-Eigenschaft des eingebetteten Schriftart einzustellen.

In dem folgenden Code können Sie sehen, ich den Namen auf „BlaaDeeBlaa“ und das Textformat wird es übernehmen und die eingebettete Schriftart angezeigt werden soll.

[Embed(source="assets/FontFileName.otf",
                            fontFamily="BlaaDeeBlaa",
                            mimeType="application/x-font")]
var BlaaDeeBlaa:Class;

var CH:Font = new BlaaDeeBlaa();

var testTxt:TextField =  new TextField();
testTxt.defaultTextFormat = new TextFormat("BlaaDeeBlaa",28,0x000000,true);
testTxt.embedFonts = true;
testTxt.text = Font.enumerateFonts(false)[0].fontName;
testTxt.autoSize = "left";
addChild(testTxt);

N. B. Nur Opentype (.OTF) und Truetype (.ttf) können mit dieser Methode eingebettet werden

ich auf diese Technik setzen von Lee Brimelows' Tutorial bei gotoandlearn

Andere Tipps

Es klingt wie, dass ein Problem mit der Schrift ist eher, dass Ihre Software (Flash).

Wenn es sich um eine kostenlose Schriftart ist, ist es durchaus möglich, dass der Autor der font-family verwendet eine Schriftart als Basis und bearbeitete Kopien davon für verschiedene Arten des Gesichts. Sie können nur den Dateinamen geändert haben, und vergessen Sie den internen Namen zu ändern.

Sie könnten in der Lage sein, die Namen zu bearbeiten, sie irgendwie, aber ich bin nicht sicher, ob dies.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top