<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.inkscape.org/wiki/index.php?action=history&amp;feed=atom&amp;title=FontSelection</id>
	<title>FontSelection - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.inkscape.org/wiki/index.php?action=history&amp;feed=atom&amp;title=FontSelection"/>
	<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=FontSelection&amp;action=history"/>
	<updated>2026-06-02T11:10:28Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.36.1</generator>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=FontSelection&amp;diff=109926&amp;oldid=prev</id>
		<title>Tavmjong: /* GTK's Font Widget and Dialog */</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=FontSelection&amp;diff=109926&amp;oldid=prev"/>
		<updated>2018-04-15T20:17:44Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;GTK&amp;#039;s Font Widget and Dialog&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 20:17, 15 April 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l23&quot;&gt;Line 23:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 23:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Inkscape renames some weights to match CSS: &amp;quot;Book&amp;quot; -&amp;gt; &amp;quot;Normal&amp;quot;, etc.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Inkscape renames some weights to match CSS: &amp;quot;Book&amp;quot; -&amp;gt; &amp;quot;Normal&amp;quot;, etc.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Inkscape has separate sections for family and style. The style options are updated when a new family is selected.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Inkscape has separate sections for family and style. The style options are updated when a new family is selected.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* Inkscape does not show &lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Inkscape's FontLister ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Inkscape's FontLister ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key inkscape_wiki-mw01_:diff::1.12:old-109921:rev-109926 --&gt;
&lt;/table&gt;</summary>
		<author><name>Tavmjong</name></author>
	</entry>
	<entry>
		<id>https://wiki.inkscape.org/wiki/index.php?title=FontSelection&amp;diff=109921&amp;oldid=prev</id>
		<title>Tavmjong: Created page with &quot;A page to track font selection issues:  == Inkscape's Font Selection ==  Inkscape has two ways of selecting a new font: # Through drop-down menus (ComboBoxText) in the Text to...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.inkscape.org/wiki/index.php?title=FontSelection&amp;diff=109921&amp;oldid=prev"/>
		<updated>2018-04-15T20:17:22Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;A page to track font selection issues:  == Inkscape&amp;#039;s Font Selection ==  Inkscape has two ways of selecting a new font: # Through drop-down menus (ComboBoxText) in the Text to...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;A page to track font selection issues:&lt;br /&gt;
&lt;br /&gt;
== Inkscape's Font Selection ==&lt;br /&gt;
&lt;br /&gt;
Inkscape has two ways of selecting a new font:&lt;br /&gt;
# Through drop-down menus (ComboBoxText) in the Text toolbar.&lt;br /&gt;
# Through a special widget in the Text and Font dialog.&lt;br /&gt;
&lt;br /&gt;
The Glyph panel also allows a font to be selected but this only effects which glyphs are shown in that dialog.&lt;br /&gt;
&lt;br /&gt;
All selection methods rely on the Inkscape FontLister class for generating the list of fonts to be shown.&lt;br /&gt;
&lt;br /&gt;
== GTK's Font Widget and Dialog ==&lt;br /&gt;
&lt;br /&gt;
Gtk has it's own font selection widget and dialog. These differs from Inkscape's font selection widget in the following ways:&lt;br /&gt;
&lt;br /&gt;
* Inkscape disables Faux Font Face selection. Designers would rarely would want a synthesized face.&lt;br /&gt;
* Inkscape lists fonts used in a document first. This includes CSS font fallback lists (e.g. &amp;quot;Times New Roman&amp;quot;, Times, serif).&lt;br /&gt;
* Inkscape shows fonts used in a document but are not found on the system appear with a strike-through.&lt;br /&gt;
* Inkscape displays the names of generic CSS fonts using their CSS values (&amp;quot;Sans&amp;quot; appears as &amp;quot;sans-serif&amp;quot;).&lt;br /&gt;
* Inkscape includes only one entry for faces that cannot be distinguished uniquely by CSS (and Pango). The GTK font selector shows all faces but the rendering of some are incorrect.&lt;br /&gt;
* Inkscape shows both the CSS name and the Display name for font faces.&lt;br /&gt;
* Inkscape renames some weights to match CSS: &amp;quot;Book&amp;quot; -&amp;gt; &amp;quot;Normal&amp;quot;, etc.&lt;br /&gt;
* Inkscape has separate sections for family and style. The style options are updated when a new family is selected.&lt;br /&gt;
* Inkscape does not show &lt;br /&gt;
&lt;br /&gt;
== Inkscape's FontLister ==&lt;br /&gt;
&lt;br /&gt;
A class for listing fonts.&lt;br /&gt;
&lt;br /&gt;
FontLister is a singleton... but it also tracks fonts used by a document. There really should be one instance per document.&lt;br /&gt;
FontLister contains a Gtk::TreeModel for font family and one for font style. The style model is updated to match the selected font.&lt;br /&gt;
&lt;br /&gt;
Three widgets use FontLister:&lt;br /&gt;
# FontSelector (TextEdit.cpp) [ListView]&lt;br /&gt;
# FontSelector (Glyphs.cpp) [ListView]&lt;br /&gt;
# Widget in Text Toolbar [ComboBoxText]&lt;br /&gt;
&lt;br /&gt;
Each widget updates FontLister when selection is changed. FontLister should be updated once after which the three widgets should update the selected font/style. FIXED&lt;br /&gt;
&lt;br /&gt;
One possible solution is to only update on document read and if a new font is added via the toolbar (the only place a new document font can be added).&lt;/div&gt;</summary>
		<author><name>Tavmjong</name></author>
	</entry>
</feed>