方法論 · 工作怎麼做

IconFlow 如何
製作圖示。

不是一句提示詞加一張圖。而是產品簡報、相互競爭的構想、一份 1024 格上可編輯的 SVG、按人們實際看見的尺寸做精確算圖、機械檢查、由設計師計分的審查,以及把核准綁定到精確原始檔的 receipt(簽收檔)。每一步都用白話說明,說法旁邊就是真實產物。

  • 此頁展示的每一份產物都在儲存庫裡
  • 16px 校樣以 16px 顯示
  • 不暗示任何廠商背書
標本 · Petal Haypile目前標誌
出自可編輯 SVG 的 IconFlow 標誌:一隻矮耳鼠兔銜著三片花瓣,走回乾草堆
master.svg(主檔)· 由瀏覽器算圖
IconFlow 標誌的精確 128×128 像素算圖 IconFlow 標誌的精確 16×16 像素算圖,以實際尺寸顯示 同一張 16 像素算圖放大五倍,像素保持銳利
精確 128px · 精確 16px · 16px 放大
check0 則警告
review6 軸 ≥ 4/5
ship23 個檔案

真正的管線

九個階段。
其中兩個是判斷。

每個階段都會留下檔案:簡報、概念縮圖、SVG、警告清單、PNG、計分的 receipt、一次建置、一份案例紀錄。點選階段即可閱讀做法。

  1. 簡報使用者任務、本質、陳腔濫調、目標
  2. 發散4+ 個概念、陳腔濫調過濾、一個手法
  3. SVG1024 格上的可編輯幾何
  4. 檢查安全、格線、筆畫、對比、裁切
  5. 算圖16 與 128 的精確 Chromium 像素
  6. 審查六軸,由設計師計分 — 人或代理程式
  7. Receipt核准綁定到原始檔 hash
  8. 交付每個目標皆失敗即關閉的建置
  9. 學習案例紀錄與提煉規則

機械階段設計判斷

階段 01 · 簡報

從任務開始,
不是從圖像。

只給名詞的提示詞(「幫我做一個聊天圖示」)做出來的是裝飾。IconFlow 的簡報記錄的是使用產品的人想完成什麼。

使用者任務優先

設計手冊在動筆前要求五件事:圖示是什麼(app、favicon、系統匣)、一個字的本質、品牌色、性格路線,以及圖示會以小尺寸出現的位置。案例集提煉出的規則很直白:選使用者的任務,不是類別名詞。「導航」、「決策」、「比較」與「偵察」做出來的標誌,會比「遊戲」、「會議」或「旅遊」好,因為陳腔濫調就住在類別名詞裡。

然後是一個具體名詞

在這套系統裡,辨識度就是具體。案例集裡最強的標誌就是一件具體、可獨有的東西 — 價簽、切面寶石、摺好的路線圖、招財貓 — 其塗黑剪影叫出的是物件,不是類別。文件把漸層色塊上一個光禿字首,點名為 AI 圖示看起來稱職又立刻被忘掉的最常見做法。

對隱私敏感的產品,簡報會收束成中性的任務動詞;公開的案例紀錄保留視覺證據,但不含類別名詞、儲存庫名稱或本機路徑。

階段 02 · 發散

四個構想,
然後一個手法。

這是多數 AI 製作的圖示跳過的階段,所以它們長得都一樣。IconFlow 把它設為必做,並附上可以不及格的測試。

用不同視角發散

一份簡報,設計師(人或代理程式)至少用不同視角草擬四個概念 — 字面物件、隱喻、核心動詞、把字形熔進物件、抽象系統,或負空間雙讀。兩個共用同一個剪影的概念算一個。

過濾陳腔濫調

一份寫下來的陳腔濫調表,把每個產品類別配上用濫的符號,以及該改往哪推。規則很簡單:概念落在「避開」那格,就不算完成。內部清單也拒絕用大腦、機器人、閃光、魔杖、神經節點,或預設的藍到紫漸層來代表「AI」。

加上一個標誌性手法並測試

一個手法 — 雙重讀法、可獨有的幾何、熔接字形、意外裁切、可獨有的配色,或單一強調。打磨前先過四道硬測試:128px 與 16px 的叫出名字測試(及格答案是具體名詞)、去掉色彩的剪影測試maskable 測試(關鍵細節落在中央 40% 半徑安全圓內),以及對上 8 個競品 favicon 的並排測試。決選再以 iconflow compare 並排比稿,贏家看形狀,不看 128px 的色彩。

IconFlow 概念比稿表,以原生尺寸與剪影比較三個候選標誌
一份真實的比稿表。三個決選以實際尺寸與剪影算圖,讓色彩藏不住泛用形狀。
Keepsake Knot 圖示:兩條不等寬的青綠與珊瑚色帶子,繞著一個偏移開口交織
Keepsake Knot — 留下來的手法。「兩條不等寬的帶子共用一個偏移開口。」第一輪因交叉讀成電源符號而被退回。
Keepsake Knot 精確 128 像素算圖Keepsake Knot 精確 16 像素算圖,實際尺寸
兩條帶子在 16px 仍讀得出。16px 小片是精確的原生 PNG,1:1,從來不是放大圖。

階段 03 · SVG

幾何是編寫的,
不是從雜訊生成。

單一真實來源是一份小而可編輯的 SVG。隨時可讀、可 diff、可 hash,並重建成每個目標。

在 1024 格上直接編寫

每份主檔都畫在 viewBox="0 0 1024 1024"。在 16 像素時,約 64 格等於一顆輸出像素,所以預算是明示的:每個承載想法的強調大約分到兩像素(≈128 單位),每道必要間隔至少一像素,細於邊長約 2.3% 的筆畫預期會消失。關鍵內容留在中央約 80% 的安全區;必須撐過自適應裁切的東西留在中央安全圓內。16px 圖示恰好只容一個想法,兩個不透明前景元素絕不可交叉。

二十個技法鷹架,零個完成標誌

iconflow new <preset>會從二十種結構不同的執行語法起手 — flat-geometric、line-mark、duotone-cut、pixel-grid、stained-glass、woodcut 等等 — 各有 16px 存活規則與單色系統匣策略。它們刻意共用同一套內建骨架;真正的圖示仍要換成產品專屬物件,再跑完整道關卡。

確定性 Python,用在需要規模的系列

系列不改方法;它們把可重複的部分寫成腳本。20 題 Social Signals 套件用有種子的 random.Random(seed).shuffle 指定風格,算圖前先對照目錄核對,並把每題的路徑幾何留在建置腳本裡。400 格 Emoji Matrix 由 scripts/build_emoji_matrix.py 建置,對每格重跑 check、為每張校樣取指紋,缺一份 receipt、digest 或審查決定就失敗即關閉。規模買到的是可重複與可稽核 — 從來不是過關。

一張表上的全部二十個 IconFlow 技法鷹架,各帶原生 16 像素校樣
二十技法表。由與建置相同、網路隔離的 Chromium 算圖;每一格都帶著自己的原生 16px 校樣。

階段 04–05 · 檢查與算圖

精確像素,
機械警告。

IconFlow 用釘選版本的 Playwright Chromium 算圖,再對所見畫面跑一份明確的檢查清單。

算圖是隔離且可重複的

算圖器把 SVG 當不可信輸入。Chromium 封鎖網路與 service worker,停用頁面 JavaScript,移除或凍結動態與動畫內容,並固定 sRGB、地區設定與時區。輸入上限為 4 MiB、50,000 個元素、128 層巢狀,DTD 或實體宣告一律拒絕。本頁的 16px 與 128px PNG 就是那些精確算圖,不是大圖重採樣。

check 真正在測什麼

  • SVG 安全: script、iframe、object、embed、audio、video 與 animation 元素、事件處理器、外部 href/src、CSS url()@import
  • 格線:缺少 viewBox,或不是正方形。
  • 筆畫下限:任何細於 viewBox 寬度 2.3% 的筆畫。
  • 16px 覆蓋率:低於畫布 6% 太小;不透明四角的硬正方形會被圓形裁切剪掉。
  • 對比:16px 在白底與暗底上的亮度跨度,以及 32px 在中灰上的亮度跨度。
  • Maskable 稽核:512px maskable 資產上,超過 8% 的偵測細節落在 40% 半徑安全圓外。
  • 辨識度提示:即時 字形 — 通常是打字的字母組合,並經建置機的字型算圖。

加上 --tray-svg tray.svgcheckreview 會多一道建議性的系統匣範本稽核:它會回報一份沒留下彩色標誌任何特徵的 macOS template。它刻意不納入預設的 check,也從不管控 ship,因為稽核的是連結變體,不是主檔。

剪影與相似度是分開的證明

每個已審查案例也會得到 128px 視覺剪影,因為辨識度是去掉色彩來評的。400 格矩陣的相似度報告會加上精確 PNG hash,以及 64-bit alpha 與亮度差異 hash;alpha 加亮度的合計 Hamming 距離在 12 以內(同義)或 6 以內(異義)的配對會標成高風險,完全重複則阻擋整合。腳本稱這段距離為「視覺檢查的分流訊號,不是錄取分數」。

Catnap Focus 精確 128 像素算圖:一隻蜷曲的睡貓Catnap Focus 精確 16 像素算圖,實際尺寸
精確算圖。Catnap Focus 的 128px 與 16px,直接出自釘選的 Chromium。
Catnap Focus 去掉色彩的視覺剪影,仍讀成一隻蜷曲的貓
剪影校樣。去掉色彩;名詞必須活下來。辨識度分數就是從這條帶來讀的。
終端機一次乾淨的 check
$ python -m iconflow check master.svg
OK — no automated warnings. Still do the visual review.

警告是要修的原始內容,不是要重新啟用的算圖器功能。ship 拒絕帶警告記錄的 receipt。

階段 06–09 · 審查、receipt、交付、學習

由人打分。
由 hash 記住。

機械檢查抓住機械風險。標誌好不好,由眼睛看真實像素決定,並記在建置可核對的 receipt 裡。

人眼視覺審查

審查者打開樣張表與 Review Lab:白、暗、中灰為列;16px 到 256px 實際尺寸為欄;像素放大帶;alpha 足跡;視覺剪影;自適應裁切預覽;每個選定目標的變換。六軸以 1–5 計分:16px 可讀性、辨識度、平衡與格線、色彩與對比、可縮放性、工藝。任一軸低於 4 不得交付,辨識度是明示關卡 — 泛用剪影再好看的色彩最多也只得 3。

退回與迭代是常態

任一軸低於 4,審查者點出最弱軸,做一個影響最大的改動,再重新算圖。文件預期兩到三輪。100 案例藝廊版從 111 個候選收錄 100 個,並明示退回 11 個較弱、較難讀或重複的方向案;Keepsake Knot 的 receipt 記錄第一輪因讀成電源符號而被退回。

綁定原始檔的 receipt,失敗即關閉的交付

匯出的 receipt 帶有精確 SVG 的 source_sha256,以及綁定專案、目標集合、色彩、Electron 半徑、配色、系統匣模式與系統匣來源 hash 的 contract_sha256iconflow ship 核對兩者,要求警告清單為空、status: ready,以及六軸分數至少 4,然後在寫入任何檔案前重跑自動化 QA。改了 SVG 內容 — digest 只忽略換行 — receipt 就過期。

案例集學習

每個已交付圖示以 iconflow case new 作結:第一輪與最終分數、避開的陳腔濫調、標誌性手法、一則可再利用的教訓。case stats 會點出反覆最弱的軸與內部陳腔濫調;這些教訓提煉成 docs/LEARNINGS.md 裡的編號規則(撰寫時為 54 條),下一份簡報必須先讀。沒記錄的圖示,系統什麼也學不到。

keepsake-knot-review.json摘錄
"source_sha256": "f27c303a…0aaf305",
"contract_sha256": "14d5aeb4…261de76",
"user_job": "keep a small shared ritual
             tangible over time",
"essence": "together",
"signature_device": "two unequal bands
             share one offset opening",
"cliches": ["heart", "chat bubble",
            "linked circles"],
"warnings": [],
"scores": {"legibility": 4,
  "distinctiveness": 4, "balance": 4,
  "color": 5, "scalability": 4, "craft": 4},
"notes": "Pass 1 rejected the power-sign
  reading. …",
"status": "ready"

完整檔案是公開的:keepsake-knot-review.json。其 hash 與 keepsake-knot.svg 相符;網站測試在每次建置時重新核對。

ship 核對什麼在寫入檔案之前
  1. Receipt 綱要與目前 SVG 的完整 SHA-256。
  2. 契約 digest:專案、精確目標集合、色彩、半徑、配色、系統匣模式、系統匣來源 hash。
  3. 空白警告清單與 status: ready
  4. 每個評分軸都有分數,且至少為 4。
  5. 立刻再對原始檔跑一次自動化 QA。

要緊的區別

AI 撰寫的向量,
不是提示詞轉點陣。

兩者都可以有 AI 參與。產出的物件不同、失敗方式不同,留下的證據也不同。

問題提示詞轉點陣產生器IconFlow 的 AI 撰寫向量工作流程
原始檔是什麼?從模型取樣的點陣圖。提示詞不是檔案。可編輯的 SVG,畫在 1024 格網上,並在系統匣變體需要處帶語意分組。檔案就是設計。
能只改一件事嗎?重新產生,然後祈禱;小改動會帶偏整張圖。移動節點、拉開空隙、重塗色帶,重建每個目標。
16px 看起來如何?事後再降採樣;細節變成糊或雜訊。由小往上設計:像素預算優先,核准前先檢查精確的 16px 渲染。
辨識度從哪裡來?模型的先驗,會把結果拉向類別平均值。強制發散步驟、陳腔濫調過濾,以及可能失敗的剪影測試。
證據是什麼?一張圖、一句提示詞,也許一個 seed。設計綱要、決選案、警告清單、精確渲染、綁定原始檔雜湊且帶分數的 receipt(審查憑證)、案例紀錄。
引擎會呼叫模型嗎?一定會;那就是產品。不會。渲染與建置是本機 Python 加上 Chromium;只有設計用的代理程式(若有使用)才會消耗模型用量。

界線

潔淨室界線
以及它不保證的事。

IconFlow 的圖示集把熟悉的工作與含義轉成原創幾何。那是設計方法與溯源紀律,不是法律保證。

這裡的潔淨室是什麼意思

  • 預設與圖庫不含任何第三方 SVG 路徑、程式碼、圖像、字型、色盤、文案、品牌標誌或商業外觀;上游圖示集只研究其教訓,並未複製。
  • 對 Emoji Matrix 而言,不複製、修改、描摹、取樣或嵌入任何廠商表情符號圖稿;碼位與短名稱只作語意參照。
  • Social Signals 習作從通用使用者工作與平台商業外觀之外的具體名詞出發;不以官方剪影搭配官方品牌色,公開文案從不把平台名稱與習作標誌配在一起。
  • 原創故事、角色與遊戲案例不得模仿具名藝術家、工作室、作品系列、在世創作者或商標。

它明確不主張的事

  • 這些圖示集獨立且無隸屬關係;本站任何內容皆未經任何平台或表情符號廠商背書,亦無關聯。
  • 練習樣本不是已交付的識別形象,也不能取代官方標誌。
  • 視覺距離不是法律上的權利確認。殘餘風險包含未發現的第三方標誌、特定法域的混淆分析,以及未來的品牌變更。
  • 會承載商業重量的產品標誌,採用前應做正式商標檢索與專業法律審閱。IconFlow 讓設計工作可被檢視;但並不代為完成權利確認。

關於 IconFlow 自己的標誌。 Petal Haypile(花瓣乾草堆)——低耳鼠兔叼著三片花瓣返回乾草倉——是目前選用的暫時產品標誌,刻意保留日後更換的空間,永久識別尚未定案。程式碼為 Apache-2.0;IconFlow 名稱與標誌受專案商標政策約束。文件:SOCIAL_SIGNALS.mdEMOJI_MATRIX.mdGALLERY.md

透明的成本模型

運算很便宜。
判斷才是真正的成本。

這裡刻意不放金額。確切數字取決於你的代理程式用哪個模型或 API、託管在哪,以及當天專業服務的行情。以下說明什麼會隨規模變動,以及為什麼。

  • 本機 / 離線渲染、檢查、建置

    一次性下載 Python 相依套件與 Playwright Chromium 之後,comparecheckreviewship 都在你的機器上執行,無需 API 金鑰、不呼叫圖像模型,渲染期間也不連網。重建只需數秒本機運算。

  • 可能產生模型用量設計代理程式

    若由 AI 代理程式撰寫設計綱要、發散概念並撰寫 SVG,該對話由你選的用戶端與模型計費——IconFlow 本身不呼叫模型。迭代輪次、評比與閱讀審查表會增加 token;含糊的設計綱要也一樣。

  • 可能花錢部署與權利確認

    託管產出通常是最小的一筆:靜態網站或應用程式套件,放在你本來就在付費的主機上。商業標誌的商標檢索與法律審閱是另一筆專業費用,沒有任何工具包能取代。

五層,相對成本

定價的是範圍,不是引擎時間。這把尺是各層級間的相對尺度;單靠運算成本永遠代表不了完成識別的成本。

  1. 快速練習樣本一份鷹架、一次檢查

    從技法預設開始,把內建骨架換成一個產品物件,跑 check。證明工具鏈與第一個構想。

    產出物

    一份 SVG、一份乾淨的警告清單、原生 16px 與 128px 渲染。

    審查深度

    在索引樣張上自檢;不匯出 receipt。

    迭代驅動

    筆畫下限與對比警告;一個在 16px 失敗的名詞。

    相對成本分鐘

    本機運算;若由代理程式驅動,模型用量可忽略。

  2. 原創正式圖示標準迴圈

    設計綱要、四個概念、評比、一份主檔 SVG、檢查、帶分數的審查、receipt、交付、案例紀錄——一個產品及其網頁目標。

    產出物

    iconflow.toml、決選案與評比表、master.svg(主檔)、審查表與 receipt、favicon/PWA 套組、案例集條目。

    審查深度

    6 條評分軸皆由設計者打分,看實際尺寸與剪影;通常兩到三輪。

    迭代驅動

    辨識度低於 4、與系統圖示碰撞、意外讀出第二義。

    相對成本小時

    設計判斷與審查時間為主,代理程式用量其次,運算可忽略。

  3. 多版面識別家族網頁、桌面、系統匣

    正式迴圈再加上一份連結的純標誌系統匣原始檔、平台裁切、桌面套件,以及把全部綁在一起的一份契約雜湊。

    產出物

    master.svg 與 tray.svg、系統匣範本稽核、ICO/ICNS/PNG 家族、manifest 片段、整組目標共用一份 receipt。

    審查深度

    檢查每個目標轉換:自適應裁切、桌面圓角、淺色與深色列上的選單列範本。

    迭代驅動

    系統匣範本留不住彩色標誌的任何特徵;細節落在 maskable 安全圓之外。

    相對成本數小時到一天

    多的是審查版面,不是運算;每個目標都多一次人眼檢查。

  4. 經過研究的品牌識別定位、輪次、權利確認

    產品研究、與利害關係人進行數輪概念、一份品牌系統文件,並在單一綁定原始檔的交易中把一個標誌推上網站與建置。

    產出物

    以上全部,外加品牌系統文件、色盤與淨空規則、歷史理據、商標審閱結果。

    審查深度

    多名審查者與多輪;明確否決先前標誌;標誌承載商業重量時做專業的權利確認。

    迭代驅動

    定位變更、利害關係人意見不合、權利確認的發現、可撤回要求。

    相對成本數天到數週

    專業時間與法律服務占大宗;模型與運算只是附註。

  5. 大型生成並策展的圖示集數百格

    以腳本、種子產生大量原始檔;每一格仍須通過檢查、渲染、剪影、相似度篩選與目視審查,才會以失敗即擋下的方式整合。

    產出物

    每格一份 SVG、渲染、剪影與 receipt;一份相似度報告;帶集合層摘要的目錄;一張合成總覽海報。

    審查深度

    每一格的索引樣張、一輪對抗式策展、替換弱格、一份集合層決策檔。

    迭代驅動

    知覺近重複、重複構圖、風格語法漂移、脆弱的 16px 格子。

    相對成本數天,多半是審查

    到數百格時模型用量會變明顯;策展時數仍超過它。

把這把尺當成比例,不是價格。 模型用量、託管與專業費用各自由別人按會變動的費率計費;IconFlow 不加收自己的費用,引擎在本機執行。無論哪個層級,完成識別的主要成本都是人用來決定與審查的時間——而這正是此方法拒絕省略的部分。

先看,再跑

這裡的每一項主張
背後都有一份檔案。

瀏覽已收錄案例及其原生校樣與 receipt,或在自己的機器上跑 5 分鐘引擎驗證,親自檢查像素。