FreeBASIC マニュアルのトップに戻る

FreeBASIC ExtLibcairo

目次→その他→ライブラリ・ヘッダー索引Cairo←オリジナル・サイト

Cairo


複数の出力装置をサポートする 2D 描画ライブラリ。
これは、FB 描画ウィンドウ、インメモリ・ピクセル・バッファー、GTK+ ウィジェット、あるいは Win32 ウィンドウや、デバイス・コンテキストのような、複数の異なる表面に描画するために、使うことができます。

注:下記サイトで dll をダウンロードして、プログラムと同じフォルダに保存してコンパイルします。
https://github.com/preshing/cairo-windows/releases
DLL は x86 と x64 の両方があるので、お使いの環境に合った方を使って下さい。
DLL が無いと下記のエラーが表示されます。
FreeBASIC\bin\win32\ld.exe: cannot find -lcairo

ウエブ・サイト: http://www.cairographics.org
利用できる環境: Win32, Linux
include するヘッダー: cairo/cairo.bi
ヘッダー・バージョン: 1.14.2
使用例: examples/graphics/cairo/

例:
'' FB 描画ウインドウに描くために cairo を使う例
#include once "cairo/cairo.bi"

Const SCREEN_W = 400
Const SCREEN_H = 300

ScreenRes SCREEN_W, SCREEN_H, 32

'' 表面として FB 画面を使って、cairo で描く背景を作ります。
Var surface = cairo_image_surface_create_for_data(ScreenPtr(), CAIRO_FORMAT_ARGB32, SCREEN_W, SCREEN_H, SCREEN_W * SizeOf(ULong))

Var c = cairo_create(surface)

ScreenLock()

'' 全背景を白で描きます。
cairo_set_source_rgba(c, 1, 1, 1, 1)
cairo_paint(c)

'' 赤い線を描きます
cairo_set_line_width(c, 1)
cairo_set_source_rgba(c, 1, 0, 0, 1)
cairo_move_to(c, 0, 0)
cairo_line_to(c, SCREEN_W - 1, SCREEN_H - 1)
cairo_stroke(c)

ScreenUnlock()

Sleep

'' cairo 背景を消去します
cairo_destroy(c)


ライブラリ・ヘッダー索引に戻る
←リンク元に戻る プログラム開発関連に戻る

最新レビュー:MrSwiss、2018-05-05 -- 変更:SizeOf(Integer)から SizeOf(ULong)に。変更理由:32/64互換性

ページ歴史:2018-05-05 07:10:47
日本語翻訳:WATANABE Makoto、原文著作者:SirMud

ホームページのトップに戻る

表示-非営利-継承