www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - List of Pango-available Fonts on a Mac?

reply Ron Tarrant <rontarrant gmail.com> writes:
I don't have access to a Mac, but I'd like to get a list of fonts 
available to OSX Pango/Cairo.

I also haven't sorted out getting a FreeBSD (or any other BSD) 
machine set up with X11, D, and GtkD, etc. either, so if someone 
could cover that base for me, too...

I've written a little GtkD utility that'll do the job, so if you 
have GtkD installed on a Mac or BSD system, all you have to do is 
compile and run it in a terminal, redirect the list to a text 
file, post it back here, and Bob's yer uncle... well, maybe My 
uncle since I'm the one who wants this done.

This is for a post about GTK MVC that I'm working on for the 
gtkDcoding blog and if you don't know what that is...

It's my little contribution to the furtherance of D and GTK, a 
blog giving examples of as many aspects of GtkD as I can manage 
to squeeze out before I go stark, raving mad or run out of things 
GTK to cover, whichever comes first.

Here's the code:

---------------

// Test Rig Foundation for Learning GtkD Coding

import std.stdio;

import gtk.MainWindow;
import gtk.Main;
import gtk.Box;
import gtk.Widget;
import pango.PgCairoFontMap;
import pango.PgFontMap;
import pango.PgFontFamily;

void main(string[] args)
{
	Main.init(args);

	TestRigWindow myTestRig = new TestRigWindow("Test Rig");
	
	Main.run();
	
} // main()


class TestRigWindow : MainWindow
{
	AppBox appBox;
	PgFontMap pgFontMap;
	PgFontFamily[] pgFontFamilies;
	PgFontFamily font;
	
	this(string title)
	{
		super(title);
		addOnDestroy(&quitApp);
		
		appBox = new AppBox();
		add(appBox);

// this becomes part of MVC IX - TreeView with a list of system 
fonts (may even have font samples)
		pgFontMap = PgCairoFontMap.getDefault();
		pgFontMap.listFamilies(pgFontFamilies);
		
		writeln("A list of all fonts available to Pango on this 
computer:");

		foreach(font; pgFontFamilies)
		{
			writeln(font.getName());
			
		}
		
		showAll();

	} // this() CONSTRUCTOR
	
		
	void quitApp(Widget widget)
	{
		writeln("Bye.");
		Main.quit();
		
	} // quitApp()

} // class myAppWindow


class AppBox : Box
{
	// add child object definitions here
	
	this()
	{
		super(Orientation.VERTICAL, 10);
		
		// instantiate child objects here
		
		// packStart(<child object>, false, false, 0); // LEFT justify
		// packEnd(<child object>, false, false, 0); // RIGHT justify
		
	} // this()

} // class AppBox

---------------

Thanks for even just thinking about doing this.
May 27
next sibling parent Nemanja Boric <dlang nemanjaboric.com> writes:
On Monday, 27 May 2019 at 18:07:10 UTC, Ron Tarrant wrote:
 I don't have access to a Mac, but I'd like to get a list of 
 fonts available to OSX Pango/Cairo.

 [...]
I wanted to help you, but I couldn't find the way or definite manual how to install Gtk(D) on MacOs when I looked into it yesterday :(.
May 28
prev sibling parent reply Jacob Carlborg <doob me.com> writes:
On 2019-05-27 20:07, Ron Tarrant wrote:
 I don't have access to a Mac, but I'd like to get a list of fonts 
 available to OSX Pango/Cairo.
I don't want to install GTK, but these are the system fonts on macOS 10.13: Academy Engraved LET Adobe Arabic Adobe Hebrew Adobe Ming Std Adobe Myungjo Std Adobe Song Std Al Bayan Al Nile Al Tarikh American Typewriter Andale Mono Apple Braille Apple Chancery Apple Color Emoji Apple SD Gothic Neo Apple Symbols AppleGothic AppleMyungjo Arial Arial Black Arial Hebrew Arial Hebrew Scholar Arial Narrow Arial Rounded MT Bold Arial Unicode MS Avenir Avenir Next Avenir Next Condensed Ayuthaya Baghdad Bangla MN Bangla Sangam MN Bank Gothic Baskerville Beirut Big Caslon Blackmoor LET BlairMdITC TT Bodoni 72 Bodoni 72 Oldstyle Bodoni 72 Smallcaps Bodoni Ornaments Bodoni Ornaments ITC TT Bodoni SvtyTwo ITC TT Bodoni SvtyTwo OS ITC TT Bodoni SvtyTwo SC ITC TT Bordeaux Roman Bold LET Bradley Hand Bradley Hand ITC TT Brush Script MT Capitals Chalkboard Chalkboard SE Chalkduster Charter Cochin Comic Sans MS Copperplate Corsiva Hebrew Courier Courier New Damascus DecoType Naskh Devanagari MT Devanagari Sangam MN Didot DIN Alternate DIN Condensed Diwan Kufi Diwan Thuluth Euphemia UCAS Farah Farisi Futura GB18030 Bitmap Geeza Pro Geneva Georgia Gill Sans Guitar Pro 5 Gujarati MT Gujarati Sangam MN Gurmukhi MN Gurmukhi MT Gurmukhi Sangam MN Heiti SC Heiti TC Helvetica Helvetica Neue Herculanum Hiragino Kaku Gothic StdN Hiragino Maru Gothic ProN Hiragino Mincho ProN Hiragino Sans Hiragino Sans GB Hoefler Text Impact InaiMathi ITF Devanagari ITF Devanagari Marathi Jazz LET Kailasa Kannada MN Kannada Sangam MN Kefa Khmer MN Khmer Sangam MN Kohinoor Bangla Kohinoor Devanagari Kohinoor Telugu Kokonor Kozuka Gothic Pro Kozuka Mincho Pro Krungthep KufiStandardGK Lao MN Lao Sangam MN Letter Gothic Std Lucida Grande Luminari Malayalam MN Malayalam Sangam MN Marker Felt Menlo Microsoft Sans Serif Minion Pro Mishafi Mishafi Gold Mona Lisa Solid ITC TT Monaco Mshtakan Muna Myanmar MN Myanmar Sangam MN Myriad Pro Nadeem New Peninim MT Noteworthy Noto Nastaliq Urdu Optima Oriya MN Oriya Sangam MN Palatino Papyrus Party LET Phosphate PingFang HK PingFang SC PingFang TC Plantagenet Cherokee PortagoITC TT Princetown LET PT Mono PT Sans PT Sans Caption PT Sans Narrow PT Serif PT Serif Caption Raanana Rockwell Sana Santa Fe LET Sathu Savoye LET SchoolHouse Cursive B SchoolHouse Printed A Shree Devanagari 714 SignPainter Silom Sinhala MN Sinhala Sangam MN Skia Snell Roundhand Songti SC Songti TC STIXGeneral STIXIntegralsD STIXIntegralsSm STIXIntegralsUp STIXIntegralsUpD STIXIntegralsUpSm STIXNonUnicode STIXSizeFiveSym STIXSizeFourSym STIXSizeOneSym STIXSizeThreeSym STIXSizeTwoSym STIXVariants Stone Sans ITC TT Stone Sans Sem ITC TT STSong Sukhumvit Set Symbol Synchro LET Tahoma Tamil MN Tamil Sangam MN TeamViewer12 TeamViewer13 Telugu MN Telugu Sangam MN Thonburi Times Times New Roman Trattatello Trebuchet MS Type Embellishments One LET Verdana Waseem Webdings Wingdings Wingdings 2 Wingdings 3 Zapf Dingbats Zapfino -- /Jacob Carlborg
May 28
parent reply Ron Tarrant <rontarrant gmail.com> writes:
On Tuesday, 28 May 2019 at 18:56:17 UTC, Jacob Carlborg wrote:

 I don't want to install GTK, but these are the system fonts on 
 macOS 10.13:
Thanks, Jacob. These fonts—except for the Adobe ones—are bundled with Mojave?
May 28
parent reply Jacob Carlborg <doob me.com> writes:
On 2019-05-28 21:17, Ron Tarrant wrote:

 Thanks, Jacob. These fonts—except for the Adobe ones—are bundled with 
 Mojave?
These are from High Sierra, the version before Mojave. -- /Jacob Carlborg
May 29
parent reply Ron Tarrant <rontarrant gmail.com> writes:
On Wednesday, 29 May 2019 at 21:02:09 UTC, Jacob Carlborg wrote:
 On 2019-05-28 21:17, Ron Tarrant wrote:

 Thanks, Jacob. These fonts—except for the Adobe ones—are 
 bundled with Mojave?
These are from High Sierra, the version before Mojave.
Okay, thanks. I remember reading somewhere that Mojave didn't add or take away any fonts.
May 30
parent reply Jacob Carlborg <doob me.com> writes:
On 2019-05-30 11:06, Ron Tarrant wrote:

 Okay, thanks. I remember reading somewhere that Mojave didn't add or 
 take away any fonts.
Actually, there are a few more (in High Sierra) than the above list. I copied this from the Font Book application. For some reason fonts in /System/Library/Fonts don't show up there. I can give you the filenames but I don't know the names of the actual fonts. -- /Jacob Carlborg
May 30
parent Ron Tarrant <rontarrant gmail.com> writes:
On Thursday, 30 May 2019 at 15:04:30 UTC, Jacob Carlborg wrote:
 On 2019-05-30 11:06, Ron Tarrant wrote:

 Okay, thanks. I remember reading somewhere that Mojave didn't 
 add or take away any fonts.
Actually, there are a few more (in High Sierra) than the above list. I copied this from the Font Book application. For some reason fonts in /System/Library/Fonts don't show up there. I can give you the filenames but I don't know the names of the actual fonts.
I think I'm good with what I have. I was mostly interested in fonts that are common to Windows, Linux, and OSX. As it turns out, Windows and OSX have quite a few Microsoft fonts in common, but even though they're available for Linux, they aren't installed by default for (I assume) licensing reasons. Anyway, I did get what I needed from what you supplied already. Thanks for following up, Jacob. Have a great weekend.
May 31