diff options
author | xengineering <me@xengineering.eu> | 2023-01-03 21:49:22 +0100 |
---|---|---|
committer | xengineering <me@xengineering.eu> | 2023-01-06 14:23:55 +0100 |
commit | 10a48fdff83668229f18413c7b30827c2596108d (patch) | |
tree | 2ed4d594a6ec658e4ad909e4d3472895c4224f32 | |
parent | c1ab3b92c596694b760ca6d9a86ef6b50e5564e3 (diff) | |
download | phonelock-cairo.tar phonelock-cairo.tar.zst phonelock-cairo.zip |
Add minimal cairo samplecairo
cairo [1] should be used to implement phonelock. This is just some
example code to get started.
[1]: https://www.cairographics.org/
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | main.c | 24 |
2 files changed, 23 insertions, 3 deletions
@@ -2,7 +2,7 @@ all: build/phonelock build/phonelock: main.c mkdir -p build - gcc -Wall -o build/phonelock main.c + gcc -o build/phonelock -Wall `pkg-config --cflags --libs cairo` main.c clean: rm -rf build @@ -1,9 +1,29 @@ +#include <cairo.h> #include <stdio.h> -int main(void) { - printf("Hello world!\n"); +int main(void) +{ + printf("Starting phonelock ..."); + + cairo_surface_t *surface = + cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 240, 80); + cairo_t *cr = cairo_create (surface); + + cairo_select_font_face(cr, "serif", CAIRO_FONT_SLANT_NORMAL, + CAIRO_FONT_WEIGHT_BOLD); + cairo_set_font_size(cr, 32.0); + cairo_set_source_rgb(cr, 0.0, 0.0, 1.0); + cairo_move_to(cr, 10.0, 50.0); + cairo_show_text(cr, "Hello, world"); + + cairo_destroy(cr); + cairo_surface_write_to_png(surface, "hello.png"); + cairo_surface_destroy(surface); + + printf(" done!\n"); + return 0; } |