我試圖用pixman_image_create_linear_gradient()
函數用libpixman繪製線性漸變。它可以很好地繪製從左到右和從上到下運行的漸變,但我沒有看到如何以特定角度(0-360度)繪製漸變,就像它們在CSS中可能的那樣。例如,旋轉45度的線性漸變。以一定的角度畫線性漸變
我認爲必須使用參數p1
和p2
這是因爲它們定義了漸變方向,但根本沒有文檔,我也無法弄清楚如何使用這兩個參數來旋轉漸變。
對於垂直梯度,我只是將它們設置爲
p1.x = 0; p1.y = 0;
p2.x = 0; p2.y = height - 1;
而對於水平梯度我用
p1.x = 0; p1.y = 0;
p2.x = width - 1; p2.y = 0;
但我應該使用哪個值任意旋轉?簡單地將2D旋轉矩陣應用於點看起來並不正確,例如,繪製的梯度是640×480和旋轉45度這樣的時候我結束與點
p1.x = 81; p1.y = 560;
p2.x = 559; p2.y = 559;
其中提請梯度在正確的方向,但也有大約80像素的空白空間在梯度的任一側,以便我一定做錯了什麼。
有人能告訴我如何得到這個權利?
謝謝!
對,它真的好像是一樣的。我現在正在工作。非常感謝! – Andreas