トップ «前の日記 最新 次の日記»

2020-03-08 (Su) [長年日記]

_ gpicann のハンドルを修正

白っぽい背景だと黒いハンドルじゃないと困るし、 でも黒っぽい背景だと黒いハンドルは見づらい...

しばらく白と黒の二重の四角にしてたんだけど、 それだとサイズが違って見える。

ん〜〜〜〜 と悩んだ結果、

そうか、白黒交互の点線にすればいいんじゃん。

で、作ろうとしたんだけど、なかなかうまくいかず…

cairo_set_dash() の dashes には、ON の長さ、OFF の長さ、ON の長さ、OFF の長さ… を与えるのね。 これでどんな点線でも(一点鎖線でも)描けるってか。 特別な場合として、長さを一つしか与えなければ、その長さの ON と OFF が交互に現れる、と。

でも、長さ 1 にすると、灰色になる… これは anti-alias のせいだった。 cairo_set_antialias()CAIRO_ANTIALIAS_NONE にすればきれいに白黒交互の点線が描けた。

これで、白背景でも黒背景でもちゃんと見えるものができた。

白黒交互

↓コード。

https://github.com/masm11/gpicann/blob/54ea2259b9391fb09bfd6dddb7f2af2c3fff196a/src/handle.c#L6-L24


編集 パスワード変更