Отлично! Для запуска из Wine получается только вот с таким пакетом библиотек.Вложение:cairoLibs.7z[978.01 КБ]
Скачиваний: 618


Все работает, но вот следующий вопрос возник.
Как рисовать Cairo в окне BB?

Пытался разобраться сам, но самое лучшее до чего додумался вот, но не рисует
## Код:
```
PROCEDURE (rd: Rider) DrawOval* (l, t, r, b, s: INTEGER; col: Ports.Color);
      VAR
         res, h: INTEGER; p: Port; dc, oldb, oldp: WinApi.HANDLE; pt: WinApi.POINT; rect: WinApi.RECT;
         surface: CairoApi.Pcairo_surface_t;
          cr: CairoApi.Pcairo_t;
         res2: WinApi.BOOL;
   BEGIN
      ASSERT(rd.port # NIL, 100);
      p := rd.port; dc := p.dc;
      IF p.wnd = 0 THEN res := WinApi.SaveDC(dc)
      ELSE res := WinApi.SelectClipRgn(dc, 0);
      END;      
      res := WinApi.IntersectClipRect(dc, rd.l, rd.t, rd.r, rd.b);
      IF col = Ports.defaultColor THEN col := textCol END;
         
      dc := WinApi.BeginPaint(p.wnd, NIL);
      surface := CairoApi.cairo_win32_surface_create(dc);
      cr := CairoApi.cairo_create(surface);
      CairoApi.cairo_set_source_rgb (cr, 0, 0, 1);
      CairoApi.cairo_arc(cr, 10, 10, 20 / 4.0, 0.0, 2.0 * 3.14);
      CairoApi.cairo_destroy(cr);
      res2 := WinApi.EndPaint(p.wnd, NIL);
      
   END DrawOval;
```
