[ANSI] ANSI繪圖軟體 AAC 1.8.1

作者: poewar (☺☻)   2024-07-02 02:08:04
趁半夜沒人來發個更新文
之前累積的許多修正跟調整放太久都沒上
這次順便更新上去
最主要是效能優化跟新增功能
***
本軟體用於繪製ANSI圖
介紹頁面:
https://aac.iverv.com/
MicrosoftStore頁面:
https://www.microsoft.com/store/apps/9N3FQG7SDVW4
ms-windows-store://pdp/?productid=9N3FQG7SDVW4
相關的介紹請看之前的說明介紹以及進度更新文章
***
文字重新整理
- 新增功能:網格格線自訂顏色
- 新增功能:補充完整16色的ansi碼,偏好設定新增啟用選項
- 新增功能:新增閃爍符號的提示Mask
- 新增功能:繪製圖層的顯示前景/背景 的切換也製作出來
- 系統調整:繪製工具架構重新修改,效能優化
- 系統調整:ansi碼輸出優化
- 系統調整:修改跳出視窗base結構,新增deactive的處理
- 功能調整:符號大小提示線重新調整
- 功能調整:文字輸入一個字一個動作改為按鍵放開後才算一個動作
- 功能調整:圖章工具改為滑鼠右鍵的方式插入繪製
- 功能調整:選擇框工具圈選範圍後按 BackSpace/Delete 清除區塊的功能補上
- 功能調整:顏色替換的視窗多一個選擇替換目標的選項
- 介面調整:隱藏空白的黃色提示選擇座標的文字框線
- 介面調整:圖章工具透明背景的狀況下,滑鼠的顯示圖的背景,改為半透明格子圖
- 介面調整:pmore拆圖工具,開啟後在空白處點滑鼠右鍵跳出未初始化的context menu
- 介面調整:繪製重播的介面,顯示文字被裁切的問題
- 介面調整:圖層介面區塊,打開參數設定的按鈕,介面調整
- 錯誤修正:閃爍的ansi碼,存讀檔以及輸出時ansi的錯誤
- 錯誤修正:修正筆刷記錄檔新建的db沒有初始化造成錯誤無法存檔的問題
- 錯誤修正:主繪製畫面的設定調整 透明度/切換顯示 閃爍符號的部分不會受到影響
- 錯誤修正:修正選色器RGB picker的Hue 第一次點會回跳頂端,第二次之後點就沒問題
- 錯誤修正:修正選色器RGB初始顯示為黑白漸層,點選Hue顏色後才會脫離黑白漸層
- 錯誤修正:修正半個全形符號,在複製貼上產生筆刷紀錄出錯的問題
- 錯誤修正:匯入.ans檔案後未設定初始layer index造成繪製crash的問題
***
新增功能:
網格格線變更顏色的功能
圖例:
https://i.imgur.com/6Xz00Yt.png
點選網格層的顏色方塊,就會跳出選色器
選擇顏色後確認可變更網格格線的顏色
因應這個功能的需求
所以還先製作了獨立的跳出式選色器工具
這張參考圖其中的紅色線是導線(測試,尚未實作)
未來可能會新增相關參數,例如切換顯示、每幾個單位出現等
至於實體背景色層的部分,還再思考是否要跟輸出有關
所以目前還未實作調整這邊的功能
新增功能:
基於ansi escape code的資料以及xterm的文件
把完整16色的ansi碼補充進來
基本上就是把 前景亮色90~97 / 背景亮色100~107
這個範圍的新增進來
圖例:
https://i.imgur.com/uFn0Cdq.png
此範圍的碼依據xterm的文件說明,vt100沒有支援
PTT也無法顯示
不過一些新的終端是可以顯示的
圖例:
https://i.imgur.com/SiYYY9l.png
雖然PTT無法使用,還是把這部分的邏輯實做
而這邊的90~97,100~107跟 256色的碼是不同的意義
舉例來說 暗黃色前景+亮黃色背景 的16色碼
*[33;103m
但如果是256色則會是
*[38;5;3;48;5;11m
同時在偏好設定新增選項可啟用
啟用後16色選色器也會顯示該顏色組,關閉則隱藏
預設是關閉的
圖例:
https://i.imgur.com/DkqEDSW.png
新增功能:
新增閃爍符號的提示Mask
主要就是閃爍有時把顯示打開也不太好發現,如果前景只有一個點的話
所以加一個可切換顯示的提示遮罩
圖例:
https://i.imgur.com/78Jarcb.png
主要就是當勾選後,會把有設定閃爍的區塊
使用半透明格子來標記
新增功能:
繪製圖層的顯示前景/背景 的切換也製作出來
隱藏前景
圖例:
https://i.imgur.com/6adKb9E.png
隱藏背景
圖例:
https://i.imgur.com/uWL3Ggm.png
當然如果把符號繪製一個圖層,背景繪製另一個圖層
然後分別切換,也可以達到相同的效果
不過這個功能只是方便察看
只會影響繪圖的顯示而已,對於實際的輸出不會造成影響
也就是這邊如果取消繪製前景or取消繪製背景
這個狀態下複製ansi資料,資料還是完整的有前景跟背景資料
但是圖層那邊如果取消,複製ansi的時候該圖層的資料就不會出現了
系統調整:
繪製工具效能優化
修改前
https://youtu.be/lR-BomBBEPI
每次筆刷下去一格,就會進行符號資料疊合
該行的疊合、整個畫面繪製的更新
因此當畫面越複雜、圖層越多的時候
繪製的延遲就會越嚴重
修改後
https://youtu.be/vKlzNflKhRM
整體明顯提升
改用一暫時繪製層來先繪製將進行變動的資料
此時資料都還未寫入筆刷繪製的圖層
系統調整:
ansi碼輸出優化,亮色錯誤修正後
當兩個符號都相同背景跟前景色
前面的符號是暗色,例如37;40m
後面的符號是亮色的,例如1;37;40m
原本的輸出會是: *[37;40mA*[1;37mB*[m
調整後輸出為: *[37;40mA*[1mB*[m
系統調整:
修改base結構,新增deactive的處理
讓一些較不重要的跳出視窗,再點選視窗範圍外的時候如同關閉視窗
例如上方的單次選色、以及偏好設定新增自型跳出挑選自型的視窗
之後再評估看看有哪些也適合套用此設定
減少點到畫面外系統會發出咚咚聲
功能調整:
符號大小提示線之前是只會顯示滑鼠指標當前的符號
這在選擇框工具的時候,只會顯示最後的一個符號大小
圖例:
https://i.imgur.com/Ph7ptqv.png
改為左右邊界有受影響的符號都會顯示大小的提示線
圖例:
https://i.imgur.com/M85CdwJ.png
https://i.imgur.com/y6m3KkU.png
原本圖章若是全形符號,只有左半邊蓋到的符號會有範圍提示
右半邊不會有,目前是正確可以左右邊蓋到的符號都有提示
功能調整:
文字輸入的邏輯也有調整
原本按著一個輸入按鍵不放(例如:A)
會一直連續輸入,而每一個文字輸入都會有一筆UndoRedo
圖例:
https://i.imgur.com/ZQwnPQf.png
這在恢復上一步動作會有些不方便
現在改為放開按鍵後才會送出紀錄
圖例:
https://i.imgur.com/LiOoSKG.png
這邊a跟backspace都是按著不放
ctrl+z只要兩次即可恢復原狀
功能調整:
圖章工具原本的操作方式為
滑鼠左鍵取代的方式繪製符號
Ctrl+滑鼠左鍵用插入的方式繪製
改為
滑鼠左鍵取代的方式繪製符號(不變動)
滑鼠右鍵用插入的方式繪製,按一下插入符號一次
功能調整:
選擇框工具下
圈選範圍後按 BackSpace/Delete 原本是沒有作用的
新的工具結構也把清除區塊的功能補上
功能調整:
顏色替換的視窗多一個選擇替換目標的選項
https://i.imgur.com/xxkJys8.png
上方 Menu->圖層->顏色替換 (或是快捷 Ctrl+Shift+F)
如果當前是圈選工具,則會預設帶 [選擇範圍] ,其餘則預設帶 [圖層]
當然帶入後也還是可以切換,只是沒有選擇範圍的使用這個選項,換下去會沒有動作
功能就是替換選擇的範圍或是全圖層
介面調整:
隱藏空白的黃色提示框線
原本建立新檔的時候,左上會出現空白的黃色框線
改為隱藏起來,有文字的時候才顯示
圖例:
https://i.imgur.com/A73TO9T.png
介面調整:
圖章工具使用透明背景的狀況下
在滑鼠的顯示圖的背景,改為半透明格子圖
圖例:
https://i.imgur.com/a6sh1lj.png
因原本是透明的,所以當使用透明背景的狀況下
而前景符號的顏色又跟繪製區塊的顏色相同時,會看不到是什麼圖案
改用半透明格子圖代替後
可以在不完全遮蔽背後圖案下,又可以讓圖章符號更容易辨識
圖例:
https://i.imgur.com/FurUs45.png
介面調整:
pmore拆圖工具的介面,剛開啟後在空白列表處點滑鼠右鍵
會跳出未初始化的context menu
圖例:
https://i.imgur.com/6rXbw96.png
修正此部分介面的問題
介面調整:
繪製重播的介面,顯示文字被裁切的問題
圖例:
https://i.imgur.com/5FNEvN0.png
此部分的介面重改,讓使用者可自行調整大小
介面調整:
圖層介面區塊,打開參數設定的按鈕,介面調整
圖例:
https://i.imgur.com/vN1NppE.png
把style整理至共用resource,打開的顏色改為紅色
錯誤修正:
閃爍的ansi碼,在存讀檔以及輸出ansi的錯誤
例如都是高亮、相同前景背景色的兩個符號
前方設定閃爍後方沒有,ansi輸出或存檔會是兩個都閃爍
事實是後方所有符號都有可能變閃爍
錯誤修正:
修正之前版友所回報筆刷記錄檔錯誤的問題
因為新建的db沒有初始化相關的資料而造成錯誤
錯誤修正:
當符號設定閃爍,並且讓閃爍顯示下
主繪製畫面的設定調整 透明度/切換顯示
閃爍的部分卻不會受到影響
修正後,閃爍層的透明度跟顯示也可跟主繪製同步
錯誤修正:
選色器RGB picker的Hue
第一次點會回跳頂端的問題,第二次之後點就沒問題
原因為非RGB的黑白色筆刷,第一次切換成RGB的黑白色筆刷
觸發介面重新更新所造成的狀況
錯誤修正:
修正選色器RGB初始為黑白漸層,點選Hue顏色後才會脫離黑白漸層
因初始value為NaN造成的問題
錯誤修正:
在開啟錄製的狀態下
水平繪製幾個全形符號,使用圈選工具選擇後ctrl+c複製
接著往左一格半形再ctrl+v貼上,會造成crash
修正複製貼上產生筆刷紀錄出錯的邏輯
錯誤修正:
匯入.ans檔案後,初始layer index未設定
造成一繪製就crash的錯誤
作者: smallreader (小讀者)   2024-07-02 02:09:00
ANSI大文藝復興!李奧納多‧poewar!!
作者: Shigeru777 (茂茂)   2024-07-02 02:10:00
先推再睡 太強大了!
作者: Mikufans   2024-07-02 02:11:00
作者: shlee (冷)   2024-07-02 02:14:00
文藝復興!
作者: CaterpillarK (RotaXane)   2024-07-02 02:51:00
推 大佬
作者: silveryiris (= =)   2024-07-02 03:01:00
先推再說
作者: inte629l   2024-07-02 07:14:00
作者: mkcg5825 (比叡我老婆)   2024-07-02 07:21:00
作者: gsp4006 (逼逼停停)   2024-07-02 07:28:00
作者: spfy (spfy)   2024-07-02 07:41:00
原來還有人繼續開發ANSI繪圖工具 給尊重
作者: lolicon (三次元滾開啦)   2024-07-02 09:29:00
文藝復興
作者: greg90326 (虛無研究所)   2024-07-02 09:59:00
作者: SaberTheBest (Saber最高!)   2024-07-02 11:05:00
推一個
作者: yam276 ('_')   2024-07-02 11:13:00
:O

Links booklink

Contact Us: admin [ a t ] ucptt.com