hlfw.ca

x9dev

Download patch

ref: 97fabb5f3cc480745b5f9c788814f51de6658c04
parent: a6cca5245ff0a60ac9c4123a287c989c310f4958
author: halfwit <michaelmisch1985@gmail.com>
date: Thu Oct 15 09:43:16 PDT 2020

Add subfont

--- a/libdraw/meson.build
+++ b/libdraw/meson.build
@@ -12,6 +12,7 @@
     'init.c',
     'loadimage.c',
     'openfont.c',
+    'subfont.c',
     'subfontcache.c',
     'window.c',
 ]
--- /dev/null
+++ b/libdraw/subfont.c
@@ -1,0 +1,32 @@
+#include <stdlib.h>
+#include <string.h>
+#include <assert.h>
+#include "draw.h"
+
+Subfont*
+allocsubfont(char *name, int n, int height, int ascent, Fontchar *info, Image *i)
+{
+	Subfont *f;
+
+	assert(height != 0 /* allocsubfont */);
+
+	f = malloc(sizeof(Subfont));
+	if(f == nil)
+		return nil;
+	f->n = n;
+	f->height = height;
+	f->ascent = ascent;
+	f->info = info;
+	f->bits = i;
+	f->ref = 1;
+	if(name){
+		f->name = strdup(name);
+		if(f->name == nil){
+			free(f);
+			return nil;
+		}
+		installsubfont(name, f);
+	}else
+		f->name = nil;
+	return f;
+}