2014-02-14 54 views
1

假設我們使用XDrawLine API在Xlib中繪製一條線,刪除或刪除該線的最佳方法是什麼?是否有任何專用的API,或者我們是否需要使用相同的XDrawLine API的特殊實現?使用Xlib庫刪除或刪除一條線

在此先感謝您的回覆。

回答

0

您可以畫一條線的背景(例如,白色)在另一條線「抹掉」它的頂部的顏色,但有沒有辦法恢復在那裏你畫的第一行之前的原始圖形 - Xlib不保留歷史記錄。但是,一般來說,您的應用程序應該能夠隨時對窗口進行完整的「重繪」(例如,如果窗口被調整大小或最小化,或者如果它被另一個窗口交叉「損壞」它)。你所問的事情聽起來像你的應用程序可能無法立即做到這一點,這將阻止它在某些情況下正常工作。

1

在繪製線條之前,最好的方法是繪製到屏幕外像素圖並記住狀態(或像素圖副本)。刪除線==將離線pixmap繪製到該狀態(或僅將保存的pixmap複製回屏幕)