diff --git a/ChangeLog b/ChangeLog index d0e3985ba..0a2b4df14 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,21 @@ +2006-01-26 Carl Worth + + * doc/tutorial/slides/cairo-blank.svg: + * doc/tutorial/slides/cairo-code.svg: + * doc/tutorial/slides/cairo.svg: Add Red Hat logos to slide + templates. + + * doc/tutorial/slides/cairo-separator.svg: Add header/footer-less + slide variant for slides needed an extra bit of space. + + * doc/tutorial/slides/tutorial.xml: Start getting slides ready for + linux.conf.au 2006 tutorial, updating for cairo 1.0 API, and + adding better organization. Verify and fix all the little example + shell programs. + + * doc/tutorial/src/Makefile: Really remove the building of the + -pdf programs this time. + 2006-01-25 Carl Worth * doc/tutorial/slides/tutorial.xml: A few random changes to the diff --git a/doc/tutorial/slides/cairo-blank.svg b/doc/tutorial/slides/cairo-blank.svg index 881198110..b2f3f829d 100644 --- a/doc/tutorial/slides/cairo-blank.svg +++ b/doc/tutorial/slides/cairo-blank.svg @@ -481,7 +481,7 @@ - http://cairographics.org + http://cairographics.org diff --git a/doc/tutorial/slides/cairo-code.svg b/doc/tutorial/slides/cairo-code.svg index 297d4c742..c005324d1 100644 --- a/doc/tutorial/slides/cairo-code.svg +++ b/doc/tutorial/slides/cairo-code.svg @@ -450,6 +450,368 @@ > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -470,6 +832,9 @@ + + + @@ -502,7 +867,7 @@ - http://cairographics.org + http://cairographics.org diff --git a/doc/tutorial/slides/cairo-separator.svg b/doc/tutorial/slides/cairo-separator.svg index 4fe417643..abee6c147 100644 --- a/doc/tutorial/slides/cairo-separator.svg +++ b/doc/tutorial/slides/cairo-separator.svg @@ -450,6 +450,368 @@ > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -470,6 +832,9 @@ + + + - http://cairographics.org + http://cairographics.org diff --git a/doc/tutorial/slides/cairo.svg b/doc/tutorial/slides/cairo.svg index 5a9449b76..133a31f26 100644 --- a/doc/tutorial/slides/cairo.svg +++ b/doc/tutorial/slides/cairo.svg @@ -450,6 +450,369 @@ > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -470,6 +833,9 @@ + + + @@ -502,7 +868,7 @@ - http://cairographics.org + http://cairographics.org diff --git a/doc/tutorial/slides/rendering-model.png b/doc/tutorial/slides/rendering-model.png new file mode 100644 index 000000000..900898417 Binary files /dev/null and b/doc/tutorial/slides/rendering-model.png differ diff --git a/doc/tutorial/slides/tutorial.xml b/doc/tutorial/slides/tutorial.xml index 6ccbbfb84..2f8a87598 100644 --- a/doc/tutorial/slides/tutorial.xml +++ b/doc/tutorial/slides/tutorial.xml @@ -15,19 +15,20 @@ http://cairographics.org/tutorial +
  • wget http://cairographics.org/tutorial.tar.gz
  • tar xzf tutorial.tar.gz
  • cd tutorial
  • make
  • - IRC help: freenode.net #cairo + IRC: irc.freenode.net #cairo Carl Worth Red Hat, Inc. - Ottawa Linux Symposium - 2005-07-22 + linux.conf.au + 2006-01-26 http://cairographics.org @@ -48,8 +49,14 @@ + +
  • Let application authors know there are options
  • +
  • Learn to use cairo—patch the applications
  • +
  • Write your own cairo-using applications
  • +
    + - Various shell cairo program + Various shell cairo programs @@ -92,8 +99,7 @@ gtk_container_add (GTK_CONTAINER (window), drawing_area); g_signal_connect (drawing_area, "expose-event", G_CALLBACK (handle_expose), NULL); - gtk_widget_show_all (window); - gtk_main (); + gtk_widget_show_all (window); gtk_main (); } @@ -107,7 +113,6 @@ surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, WIDTH, HEIGHT); - cr = cairo_create (surface); draw (cr); cairo_surface_write_to_png (surface, "foo.png"); @@ -122,13 +127,12 @@ #include <cairo.h> #include <cairo-pdf.h> - int main (void) { cairo_surface_t *surface; cairo_t *cr; - surface = cairo_pdf_surface_create (foo.pdf, WIDTH, HEIGHT); + surface = cairo_pdf_surface_create ("foo.pdf", WIDTH, HEIGHT); cr = cairo_create (surface); draw (cr); @@ -142,26 +146,26 @@ + #!/usr/bin/env python import gtk import cairo - import cairo.gtk - - def handle_expose (widget, event): - cr = cairo.gtk.gdk_cairo_create (widget.window) - draw (c) + def expose (widget, event): + cr = widget.window.cairo_create () + draw (cr) + win = gtk.Window () - win.connect ('destroy', lambda x: gtk.main_quit ()) + win.connect ('destroy', gtk.main_quit) + win.set_default_size(WIDTH, HEIGHT) drawingarea = gtk.DrawingArea () win.add (drawingarea) - drawingarea.connect ('expose_event', handle_expose) - drawingarea.set_size_request (WIDTH, HEIGHT) - drawingarea.set_double_buffered (False) + drawingarea.connect ('expose_event', expose) win.show_all () gtk.main () + #!/usr/bin/env python import cairo surface = cairo.ImageSurface (cairo.FORMAT_ARGB32, WIDTH, HEIGHT) @@ -179,11 +183,42 @@ draw (cr); - + +
  • C++ (cairomm)
  • +
  • Haskell (hscairo)
  • +
  • Java (CairoJava, cairo-java)
  • +
  • Common Lisp (cl-cairo)
  • +
  • Nickle (cairo-5c)
  • +
  • Objective Caml (cairo-ocaml)
  • +
  • perl (cairo-perl)
  • +
  • python (pycairo)
  • +
  • ruby (rcairo)
  • +
  • squeak (cairo-squeak)
  • +
    + + + + http://cairographics.org/tutorial + +
  • wget http://cairographics.org/tutorial.tar.gz
  • +
  • tar xzf tutorial.tar.gz
  • +
  • cd tutorial
  • +
  • make
  • + + IRC: irc.freenode.net #cairo +
    + + + + + + + + Here comes the fun part - +
    • Paths
      • @@ -193,15 +228,37 @@
      • Images
        • loading from disk
        • -
        • transforming
        • -
        • using as pattern
        • +
        • using as source
        • +
        • transforming/filtering
      • Text
        • -
        • Simple API example
        • +
        • “Toy” API
        • +
        • “Real” API
      - + + + +
        +
      • Paths
      • +
          +
        • cairo_stroke
        • +
        • cairo_fill
        • +
        +
      • Images
      • +
          +
        • cairo_paint
        • +
        • cairo_mask
        • +
        • cairo_paint_with_alpha
        • +
        +
      • Text
      • +
          +
        • cairo_show_text (“toy”)
        • +
        • cairo_show_glyphs (“real”)
        • +
        +
      +
        diff --git a/doc/tutorial/src/Makefile b/doc/tutorial/src/Makefile index 1ae54dfcc..2aeef4f02 100644 --- a/doc/tutorial/src/Makefile +++ b/doc/tutorial/src/Makefile @@ -3,7 +3,7 @@ MYCFLAGS=$(shell pkg-config --cflags --libs cairo gtk+-2.0) -Wall -g -Wpointer-a # If you don't want to/can't compile all of these targets, then trim # this list. # all: gtk xlib pdf png -all: gtk xlib pdf png +all: gtk xlib png GTK_EXAMPLES=$(patsubst %.c,%-gtk,$(wildcard *.c)) gtk: $(GTK_EXAMPLES)