AMIGA-RESISTANCE https://forum.amiga-resistance.info/ |
|
Anfänger: Fonts unter Linux https://forum.amiga-resistance.info/viewtopic.php?f=38&t=3623 |
Seite 1 von 1 |
Autor: | snurf.T [ 23 Okt 2019, 11:33 ] |
Betreff des Beitrags: | Anfänger: Fonts unter Linux |
Hallo liebe Leute im Hollywood-Forum! Vor Kurzem habe ich mir Hollywood gekauft und möchte nun anfangen damit zu programmieren. Da ich (noch) keinen PPC-Amiga habe (warte auf das A1222 ) bin ich meistens auf MorphOS und AROS unterwegs. Anyway, hier meine Frage: Kennt sich jemand mit Fonts unter Linux aus? Mit Code: Alles auswählen @FONT 1, "/usr/share/fonts/xmind/fonts/IndieFlower.ttf", 98, {Engine = #FONTENGINE_INBUILT} kann ich eine Schriftart einbinden. Ich habe es aber nicht geschafft eine Schriftart nur über ihren Namen ansprechen zu können. Hat jemand eine Idee? Code: Alles auswählen @FONT 1, "Indie Flower", 98 {Engine = #FONTENGINE_INBUILT} Eigentlich ist das Ganze nicht so wild, die Schriftart kann ja beim Kompilieren mit eingebunden werden. Aber wenn ich ein Skript sowohl unter MorphOS, Linux, AROS testen möchte, dann müsste ich jedes Mal an der Stelle den Code anpassen (z.B. auskommentieren / einkommentieren). - Es geht also um reine Bequemlichkeit / Faulheit. Vielen Dank und viele Grüße |
Autor: | Tipsi [ 23 Okt 2019, 18:37 ] |
Betreff des Beitrags: | Re: Anfänger: Fonts unter Linux |
Salli snurf.T Herzlich willkommen bei Amiga-Resistance. Da stellst Du eine nette Frage, die ich als ohne Linuxbesitzer versuche zu beantworten. Die zwei Möglichkeiten, eine Schriftart aufzurufen, kennst Du ja bereits. Beim direkten Aufruf über den Dateipfad (Dein erstes Beispiel) muss die Schriftart nicht installiert sein. Hingegen wenn Du sie über den Namen (Dein zweites Beispiel) aufrufen möchtest, muss sie vorher installiert worden sein. Falls sie bereits installiert ist und es doch nicht über den Namen funktioniert, dann wechsle mal das Schriftartenmodul; in Deinem Fall verwende #FONTENGINE_NATIVE. Wenn dann die Schriftart geladen wird, dann kann das in Hollywood integrierte Schriftartenmodul Deine gewünschte Schrift nicht laden. Um rauszufinden, ob eine bestimmte Schriftart installiert ist, verwende den Befehl GetAvailableFonts(). Ich hoffe, Du kommst einen Schritt weiter. Griessli Tipsi |
Autor: | snurf.T [ 24 Okt 2019, 12:47 ] |
Betreff des Beitrags: | Re: Anfänger: Fonts unter Linux |
Hallo Tipsi! Vielen Dank für die Antwort! Ich habe den Hinweis auf GetAvailableFonts() in ein kleines Skript gegossen und festgestellt, dass ich unter Linux keine Fonts zurückbekomme. Möhp! Why ever!? Bin kein Schriftenexperte unter Linux . Es gibt unter Linux (ich nutze derzeit Arch Linux) ein kleines Programm, das die (installierten!?) Schriften anzeigt. Dort hatte ich mir den Namen rauskopiert. Und unter LibreOffice kann ich die Schrift auch nutzen. Aber irgendwo ist da noch ein Haken . - Wenn ich noch etwas rausfinde - es pressiert ja nicht so - dann werde ich es hier posten. Cheers, snurf.T |
Autor: | Tipsi [ 24 Okt 2019, 22:28 ] |
Betreff des Beitrags: | Re: Anfänger: Fonts unter Linux |
Salli snurf.T Es ist komisch, wenn GetAvailableFonts() gar keine Schriftarten rausspuckt. Es könnte auch möglich sein, dass dieser Befehl unter Arch Linux nicht funktioniert. Ein weiterer Versuch wäre noch, zu schauen, was der Befehl FontRequest() auflisten würde. Wenn dieser Befehl Dir Schriftarten zur Auswahl zeigt, dann hat GetAvailableFonts() irgendwo einen "Bug", so dass er mit Arch Linux nichts anfangen kann. Damit Du den Code nicht immer wieder an eine Plattform anpassen musst, gäbe es folgende Möglichkeit: Code: Alles auswählen @IF #HW_LINUX @FONT 1, "/usr/share/fonts/xmind/fonts/IndieFlower.ttf", 98, {Engine = #FONTENGINE_INBUILT} @ELSEIF #HW_AROS @FONT 1, Pfad zur Schriftart und so @ELSEIF #HW_MORPHOS @FONT 1, Pfad zur Schriftart und so @ENDIF @IF @ELSE @ELSEIF @ENDIF Griessli Tipsi |
Autor: | snurf.T [ 25 Okt 2019, 15:52 ] |
Betreff des Beitrags: | Re: Anfänger: Fonts unter Linux |
Hallöle Tipsi! Bäm! Das is'es! FontRequest() listet fein alle Schriften auf, die auch in LibreOffice zur Verfügung stehen! - Tja, also entweder habe ich Murks bei der Anwendung von GetAvailableFonts() gemacht oder da steckt tatsächlich irgendwo ein Fehler in dem Befehl. - Was die Anwendung des Befehls angeht, habe ich mich an das Beispiel in der Hilfe gehalten und dieses um die Ausgabe in eine Liste erweitert. Code: Alles auswählen t = GetAvailableFonts() For Local k = 0 To ListItems(t) - 1 DebugPrint("Family:", t[k].Family, "Weight:", t[k].Weight, "Slant:", t[k].Slant, "Bitmap:", t[k].Bitmap) moai.DoMethod("listView_Fonts", "Insert", "Bottom", t[k].Family) Next Anyway, die Hinweise mit Code: Alles auswählen @IF #HW_LINUX Also, besten Dank an dieser Stelle!!! LG, snurf.T |
Autor: | Tipsi [ 25 Okt 2019, 19:36 ] |
Betreff des Beitrags: | Re: Anfänger: Fonts unter Linux |
Salli snurf.T Ich stellte vorhin fest, dass DebugPrint() bei mir kein Fenster öffnet. Vielleicht ist das bei Dir auch der Fall. Versuche doch mal den folgenden Code. Vielleicht musst Du noch die Display-Grösse anpassen: Code: Alles auswählen @DISPLAY {Width = 800, Height = 600} t = GetAvailableFonts() For Local k = 0 To ListItems(t) - 1 NPrint("Family:", t[k].Family, "Weight:", t[k].Weight,"Slant:", t[k].Slant, "Bitmap:", t[k].Bitmap) Next Wait(200) Griessli Tipsi |
Autor: | snurf.T [ 25 Okt 2019, 20:32 ] |
Betreff des Beitrags: | Re: Anfänger: Fonts unter Linux |
Hi Tipsi! DebugPrint() öffnet bei mir ebenfalls kein Fenster. Ich nahm an, das liegt an der leeren Rückgabe von GetAvailableFonts(). - In der Liste ist schließlich auch kein Eintrag aufgetaucht. Anyway, der Versuch mit dem Display / NPrint() zeigt bei mir auch nur ein leeres Display. Es werden keine Schriften ausgegeben. Hmmm... Beste Grüße, snurf.T |
Autor: | Tipsi [ 26 Okt 2019, 20:48 ] |
Betreff des Beitrags: | Re: Anfänger: Fonts unter Linux |
Salli snurf.T Vielleicht ist es doch ein Fall für Andreas, denn bei mir mit Windows 10 wurden Schriften in Hülle und Fülle aufgelistet. Griessli Tipsi |
Seite 1 von 1 | Alle Zeiten sind UTC |
Powered by phpBB® Forum Software © phpBB Limited Deutsche Übersetzung durch phpBB.de |