2012-06-16 7 views
9

Ich möchte arabische Schriftarten (me_quran Schriftarten) in meiner App anzeigen. Ich habe arabischen Text in meiner Datenbank.iPhone: Arabische Schriftarten können nicht korrekt angezeigt werden. Wie man Glyphen benutzt, um es anzuzeigen?

Beispiel für arabischen Text: "بسم ٱلله ٱلرحمن ٱلرحيم"

Ich habe folgende Dinge ausprobiert.

1) Versuchen:

In info.plist Datei habe ich .ttf Datei in der fonts provided by application Option hinzugefügt.

[UIFont fontWithName:@"me_quran" size:20.0]; 

2) Versuchen:

Versuchte mit dem ArabicConverter Demo-Code.

Ergebnisse in dem obigen Versuch:

App ist nicht die richtigen arabischen Schriftarten angezeigt werden. Zum Beispiel wird es verwendet, um einen Kreis anzuzeigen, wo angenommen wird, dass er halbkreisförmig wie eine Mondform ist. und oft verwendet es nur Linien anstelle von Linien mit einigen Kurven.

Ich habe einige Links, die sind: link1, link2. Aber diese Links enthalten nicht viele Informationen zur Lösung des Problems. Die interessante Sache, die ich bekam, ist glyphs, um das Problem zu lösen. Aber ich weiß nicht, wie man es benutzt?

Kann mir jemand eine Idee oder einen Link zur Verwendung von glyphs in iOS geben? oder irgendein Beispielprojekt?

+0

Bitte akzeptieren Sie die hilfreichste Antwort, indem Sie auf das Häkchen neben jeder Antwort klicken. – Neeku

+0

@Neeku: Nicht die Antwort löste mein Problem, ich habe spezielle Schriftarten und sein Skript, Kombination dieser gibt perfekte arabische Schrift in iOS. Ich schätze deine Hilfe sehr, aber es hat mir nicht geholfen. – Devang

+0

Ah, ok. Wie wäre es, wenn Sie Ihr Skript mit uns teilen? Ich hatte einen und es hat nie mit iOS 7 funktioniert! – Neeku

Antwort

0

Ziehen Sie Ihre Schriftart in den Ressourcenbereich. Fügen Sie diesen Dateinamen dann in die von der Anwendung bereitgestellten info.plist-Schriftarten ein. Dieser Schriftname kann sich von dem im .ttf-Namen unterscheiden. Überprüfen Sie den korrekten Namen der Schriftart.

überprüfen Sie Ihre Schrift korrekt in der Liste

// List all fonts on iPhone 
    NSArray *familyNames = [[NSArray alloc] initWithArray:[UIFont familyNames]]; 
    NSArray *fontNames; 
    NSInteger indFamily, indFont; 
    for (indFamily=0; indFamily<[familyNames count]; ++indFamily) 
    { 
     NSLog(@"Family name: %@", [familyNames objectAtIndex:indFamily]); 
     fontNames = [[NSArray alloc] initWithArray: 
        [UIFont fontNamesForFamilyName: 
         [familyNames objectAtIndex:indFamily]]]; 
     for (indFont=0; indFont<[fontNames count]; ++indFont) 
     { 
      NSLog(@" Font name: %@", [fontNames objectAtIndex:indFont]); 
     } 

    } 
+0

Ja, ich habe dies bereits getan und es ist ein passender Fontname. – Devang

+0

Ihr Schriftartname wurde angezeigt, gefolgt von dem obigen Code "Font name" NSLog Abschnitt. – Senthilkumar

+0

Yup .. Wenn Sie richtig wissen, dann iOS mit einem Fehler mit arabischen Schriftarten. Aber eine der App hat richtige arabische Fonts. Es muss also eine Möglichkeit geben, arabische Fonts in iOS zu verwenden. Lassen Sie es mich wissen, wenn Sie eine andere Möglichkeit haben. – Devang

3

Arabisch/Persisch Schriftarten sind nicht gut definiert in Xcode, und der einzige Standard-Schriftart für sie zur Verfügung Schriftart angepasst wurde, ist die „Geeza“ Schriftart. Ich habe keine Glyphen verwendet, aber here ist eine API für persische Schriftarten, und das muss auch für arabische Schriftarten funktionieren. Überprüfen Sie es und sehen Sie, ob das hilft.

+0

Es funktioniert nicht für mich_quran !! – Devang

+0

Sie meinen, es funktioniert für andere Schriftarten? – Neeku

+0

Ich habe nicht außer me_quran und der Demo mit den Schriftarten versucht. – Devang

1

Salam,

Ich habe dein Beispiel mit ArabicConverter versucht, und es hat funktioniert bei mir, kann man eine andere Schriftart als me_quran

vor der Verwendung ArabicConverter verwenden:

nach der Verwendung von ArabicConverter:

+0

Nop ist nicht perfekt Ausgang. Es sollte Halbmond statt Kreise sein. – Devang