Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.postscript > #2647
| Newsgroups | comp.lang.postscript |
|---|---|
| Date | 2016-06-12 01:38 -0700 |
| References | (1 earlier) <5b7781ce-c685-4a4b-bd22-4b78a0adccfe@googlegroups.com> <bf67649d-e33f-4b90-863d-e4f42e08be47@googlegroups.com> <522a0ac9-1197-4967-9185-320d6ffa2e7a@googlegroups.com> <slrnnlpqk2.2fk.peter@box8.pjb.com.au> <834e9c8f-0e48-4d15-8575-7e799bbd524f@googlegroups.com> |
| Message-ID | <2dc2020b-9f1e-4d13-abe8-92f643aeb26e@googlegroups.com> (permalink) |
| Subject | Re: How can we evangelize PostScript? |
| From | luser- -droog <mijoryx@yahoo.com> |
On Sunday, June 12, 2016 at 2:49:35 AM UTC-5, Lawrence D’Oliveiro wrote:
> On Sunday, June 12, 2016 at 4:52:19 PM UTC+12, Peter Billam wrote:
> > So, eg in Lua (my current favourite language :-)):
Since we're sharing. Here's my C+Cairo+Xcb Hello World.
A little more long-winded in C.
http://codegolf.stackexchange.com/a/20475/2381
//xcr.c
//cc -o xcr $(pkg-config --cflags --libs cairo xcb xcb-icccm) xcr.c -lcairo -lxcb -lxcb-icccm
#include <stdlib.h>
#include <string.h>
#include <cairo.h>
#include <cairo-xcb.h>
#include <xcb/xcb.h>
#include <xcb/xcb_image.h>
#include <xcb/xcb_aux.h>
#include <xcb/xcb_icccm.h>
int main (int argc, char *argv[])
{
int width = 300, height = 400;
int scrno;
xcb_screen_t *scr;
xcb_connection_t *connection;
xcb_screen_iterator_t iter;
xcb_drawable_t win;
unsigned int white;
xcb_visualtype_t *visual_type;
xcb_depth_iterator_t depth_iter;
connection = xcb_connect(NULL,&scrno);
iter = xcb_setup_roots_iterator(xcb_get_setup(connection));
for (; iter.rem; --scrno, xcb_screen_next(&iter))
if (scrno == 0)
{
scr = iter.data;
break;
}
win = xcb_generate_id(connection);
white = scr->white_pixel;
xcb_create_window(connection, XCB_COPY_FROM_PARENT,
win, scr->root,
0, 0,
width, height,
5,
XCB_WINDOW_CLASS_INPUT_OUTPUT,
scr->root_visual,
XCB_CW_BACK_PIXEL,
&white);
xcb_icccm_set_wm_name(connection, win, XCB_ATOM_STRING, 8, strlen("xcr"), "xcr");
xcb_map_window(connection, win);
xcb_flush(connection);
depth_iter = xcb_screen_allowed_depths_iterator(scr);
for (; depth_iter.rem; xcb_depth_next(&depth_iter)) {
xcb_visualtype_iterator_t visual_iter;
visual_iter = xcb_depth_visuals_iterator(depth_iter.data);
for (; visual_iter.rem; xcb_visualtype_next(&visual_iter)) {
if (scr->root_visual == visual_iter.data->visual_id) {
visual_type = visual_iter.data;
goto visual_found;
}
}
}
visual_found: ;
{
cairo_surface_t *surface =
cairo_xcb_surface_create (connection, win, visual_type, width, height);
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_surface_flush(surface);
xcb_flush(connection);
sleep(100);
cairo_destroy (cr);
//cairo_surface_write_to_png (surface, "hello.png");
cairo_surface_destroy (surface);
}
xcb_disconnect(connection);
return 0;
}
Back to comp.lang.postscript | Previous | Next — Previous in thread | Next in thread | Find similar
How can we evangelize PostScript? luser- -droog <mijoryx@yahoo.com> - 2015-02-11 22:04 -0800
Re: How can we evangelize PostScript? tlvp <mPiOsUcB.EtLlLvEp@att.net> - 2015-02-12 03:09 -0500
Re: How can we evangelize PostScript? zupftom@googlemail.com - 2015-02-26 03:58 -0800
Re: How can we evangelize PostScript? jdaw1 <jdawiseman@gmail.com> - 2015-02-26 14:43 -0800
Re: How can we evangelize PostScript? Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-01 16:43 -0700
Re: How can we evangelize PostScript? jdaw1 <jdawiseman@gmail.com> - 2015-02-12 01:36 -0800
Re: How can we evangelize PostScript? James <jjpuzzles@wowway.com> - 2015-02-12 04:29 -0800
Re: How can we evangelize PostScript? Bogus@Embarq.com (Steve) - 2015-02-12 13:50 +0000
Re: How can we evangelize PostScript? Mark Carroll <mtbc@bcs.org> - 2015-02-15 15:27 +0000
Re: How can we evangelize PostScript? tlvp <mPiOsUcB.EtLlLvEp@att.net> - 2015-02-15 19:20 -0500
Re: How can we evangelize PostScript? jdaw1 <jdawiseman@gmail.com> - 2015-02-16 01:54 -0800
Re: How can we evangelize PostScript? luser droog <luser.droog@gmail.com> - 2016-07-17 08:31 -0700
Re: How can we evangelize PostScript? luser- -droog <mijoryx@yahoo.com> - 2015-02-28 00:52 -0800
Re: How can we evangelize PostScript? Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-01 17:02 -0700
Re: How can we evangelize PostScript? luser- -droog <mijoryx@yahoo.com> - 2016-06-09 22:59 -0700
Re: How can we evangelize PostScript? Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-09 23:38 -0700
Re: How can we evangelize PostScript? Peter Billam <peter@www.pjb.com.au> - 2016-06-12 04:52 +0000
Re: How can we evangelize PostScript? Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-12 00:49 -0700
Re: How can we evangelize PostScript? luser- -droog <mijoryx@yahoo.com> - 2016-06-12 01:38 -0700
Re: How can we evangelize PostScript? Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-06-12 02:31 -0700
Re: How can we evangelize PostScript? luser droog <luser.droog@gmail.com> - 2016-11-02 08:22 -0700
Re: How can we evangelize PostScript? Lawrence D’Oliveiro <lawrencedo99@gmail.com> - 2016-11-05 18:21 -0700
Re: How can we evangelize PostScript? luser droog <luser.droog@gmail.com> - 2016-11-09 18:34 -0800
Re: How can we evangelize PostScript? Alan <alan.isaac@gmail.com> - 2016-07-10 15:48 -0700
csiph-web