簡體   English   中英

如何保存用戶繪制的畫布內容?

[英]how can I save a content of a canvas drawn by a user?

我遇到以下問題:

我正在嘗試保存應用程序的內容。 內容通過用戶繪制在畫布上。 例:

用戶可以單擊按鈕以繪制橢圓形等。

單擊按鈕后,圖形將顯示在畫布上。

我想將用戶繪制的內容保存在畫布上。 任何人都可以給我提示。 如果我使用序列化和反序列化會很好嗎?

該代碼是使用Visual Studio 2012,Windows 8應用程序以C#編寫的

有幾種解決方法:

  1. 保存用戶的每個操作-就像撤消/重做堆棧一樣。 非常靈活,但是文件可能很大。 在這種情況下,您將序列化一系列命令。 要加載該命令,必須重新播放。

  2. 保存圖形的邏輯結構-就像HTML或SVG一樣。 沒有撤消/重做支持,但文件較小。 在這種情況下,您將序列化文檔模型。

  3. 操作后保存每個結果位圖-比1.和2.易於實現,但更難支持元素編輯。 .NET對象沒有序列化,只是很多位圖。

每種方法都有其優點和缺點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM