# FontChooserWidget (Python)

Marta Maria Casetti
mmcasetti@gmail.com 2012
En komponent för att välja ett typsnitt
Sebastian Rasmussen
sebras@gmail.com 2019
Anders Jonsson
anders.jonsson@norsjovallen.se 2021

# FontChooserWidget

En FontChooserWidget med en återanropsfunktion.

# Kod som använts för att generera detta exempel

from gi.repository import Gtk import sys

class MyWindow(Gtk.ApplicationWindow):

def __init__(self, app): Gtk.Window.__init__(self, title="FontChooserWidget", application=app)

# en typsnittsväljare self.font_chooser = Gtk.FontChooserWidget() # ett standardtypsnitt self.font_chooser.set_font("Sans") # en text för att förhandsvisa typsnittet self.font_chooser.set_preview_text( "Detta är ett exempel på förhandsvisningstext!")

# anslut signal från typsnittsväljaren till återanropsfunktionen self.font_chooser.connect("notify::font", self.font_cb)

# lägg till typsnittsväljaren till fönstret self.add(self.font_chooser)

# återanropsfunktion: def font_cb(self, event, user_data): # skriv i terminalen print("Du valde typsnittet " + self.font_chooser.get_font())

class MyApplication(Gtk.Application):

def __init__(self): Gtk.Application.__init__(self)

def do_activate(self): win = MyWindow(self) win.show_all()

def do_startup(self): Gtk.Application.do_startup(self)

app = MyApplication() exit_status = app.run(sys.argv) sys.exit(exit_status)

# Användbara metoder för en FontChooserWidget

På rad 16 ansluts signalen `"notify::font"` från komponenten till återanropsfunktionen `font_cb()` med `komponent.connect(signal, återanropsfunktion)`. Se för en utförligare förklaring.

För att ställa in typsnittet som initialt är valt, använd `set_font(font)` (där `font` är typsnittsnamnet) eller `set_font_desc(font)` (där `font` är dess PangoFontDescription).

För att få det valda typsnittet, använd `get_font()` eller `get_font_desc()`.

För att ändra texten som visas i förhandsvisningsområdet, använd `set_preview_text()`.

# API-referenser

I detta exempel använde vi följande:

GtkFontChooserWidget