Community影像github.com

Logomarks/logomarks

設計新的幾何 Logo 標誌(符號、字母組合和字母標誌),製作成符合 logomarks.ai 上免費 Logomarks 集標準的乾淨單色 SVG:包含 512 網格、精確貼合、建構套件、內部檢查與該系列的風格。適用於設計新的幾何標誌、繪製或迭代 Logo 標誌、品牌符號、字母標誌或字母組合,檢查 SVG 標誌是否符合內部規則,或編輯、重新混合、改造現有的 Logomarks。

logomarks 是什麼?

這是一個專門為 AI 代理(如 Claude Code、Cursor)設計的技能,用於建立、檢查和編輯幾何 Logo 標誌。它強制遵循一套嚴格的標準:所有標誌必須在 512x512 的畫布上,最長邊精確為 448 像素且居中,僅使用單色填充的 SVG 路徑,並符合 'logomarks.ai' 免費系列的美學風格。該技能提供了一個完整的建構套件(kit.mjs),其中包含用於建立幾何形狀、執行真實布林運算、編織圖案以及處理等角立方體和立體的函式。它還包含一個自動化腳本(fit.mjs),用於將任何 SVG 標誌調整為標準尺寸並驗證其合規性。支援的工作流程包括:閱讀設計簡報、選擇一個設計系列(例如粗體負空間、瑞士網格、等角立體)、起草 4-6 個點子、使用建構套件建立 2-3 個最佳方案、擬合尺寸並根據檢查清單進行審查,以確保標誌在 32 像素和 512 像素下均能清晰辨識,且不會被誤認為通用圖示。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Logomarks/skills/tree/HEAD/skills/logomarks

Installed? Explore more 影像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

logomarks 是做什麼的?

由 David Sherlock 繪製的 3,797 個免費幾何 Logo 標誌,全部遵循同一標準: https://logomarks.ai (CC0,公有領域)。此技能說明如何設計屬於該系列的新標誌,以及如何檢查、編輯和重複使用現有標誌。(若要為專案挑選現有標誌並進行設定,請使用 Logomarks 挑選器技能。)

此資料夾的內容:

  • SKILL.md:本檔案。
  • scripts/kit.mjs:建構該系列所使用的幾何套件(形狀、真實布林運算、編織、等角立方體和等角立體)。需要執行 npm install polygon-clipping(附有 package.json)。
  • scripts/fit.mjs:將任何 SVG 標誌調整為標準尺寸並進行檢查。無依賴項。
  • scripts/examples.mjs:來自該系列的六個真實標誌,使用套件重建。
  • examples/:它們的輸出,已經過擬合。

使用現有標誌

該網站兼作靜態 API。無需安裝:

  • https://logomarks.ai/marks.json:每個標誌的 name、slug、file、tags(round、square、letter、number、symmetric、radial、solid、light、wide、tall、new)和繪製尺寸。
  • https://logomarks.ai/svg/<slug>.svg:標誌本身。
  • https://logomarks.ai/marks/<slug>:其頁面,提供 PNG、favicon 和品牌模擬下載。
  • https://logomarks.ai/logomarks.zip:所有標誌。

在從頭開始設計之前,請檢查現有標誌(或其重新混合版本)是否符合需求。取得 marks.json 並按標籤和名稱進行篩選。

標準(不可協商)

  • viewBox="0 0 512 512"。

  • 標誌的最長邊精確為 448,居中:邊距為 32,基於真實輪廓測量。寬標誌寬度為 448,高度較短;高標誌高度為 448。切勿憑目測調整大小:請執行 fit.mjs。

  • **測量幾何形狀,而非畫布。**在構建過程中,標誌可以超出 0-512 的範圍(等角立體和高堆疊通常會如此)。只要擬合步驟測量的是真實輪廓,這就沒問題。請勿透過在 viewBox 內渲染來尋找標誌的邊界:任何超出範圍的內容對該渲染都是不可見的,接著「擬合」會將其留在外部,最終檔案在邊緣處被截斷。fit.mjs 會測量每個點和曲線,因此它能處理在任何位置繪製的標誌;fit.mjs --check 會將任何仍超出畫布的標誌標記為失敗。

  • 整個檔案:

    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" fill="currentColor">
      <path fill-rule="evenodd" d="…"/>
    </svg>
    
  • 僅使用 currentColor 的填充路徑。無筆畫(將其展開)、<g>、transform、style、遮罩、裁切路徑、ID 或文字。孔洞是真實的孔洞(採用 evenodd 或反繞線方向),絕非以背景色繪製的形狀。

  • 座標精確到小數點後一位。

工作流程

  1. **閱讀簡報。**名稱、業務內容、感受(冷靜、技術性、有趣、高級)以及標誌將出現的位置(應用程式圖示、favicon、標示牌)。小尺寸使用傾向於採用零件少的粗體標誌。
  2. 選擇一個系列(如下)。請勿在一個標誌中混合不同系列。
  3. **寫下 4-6 個一句話點子。**每個點子必須是一個想法:「一個被 S 形通道分割的圓盤」,而非「一個帶有 S、一個點和射線的圓盤」。字母標誌使用名稱的首字母。
  4. 使用套件建立最佳的 2-3 個方案:一個簡短的腳本,結合基本形狀與布林運算,並呼叫 write()。僅對非常簡單的標誌手寫路徑資料(參見「手寫路徑」)。
  5. 擬合:node scripts/fit.mjs out/ 將它們全部調整為標準尺寸。
  6. 審查根據檢查清單。分別在 32 像素和 512 像素下查看每個渲染結果。刪除任何不符合條件的方案,並對倖存者進行疊代。
  7. 交付每個標誌,附上簡短獨特的名稱(一兩個詞:「Cube Window」、「Moonrise」)、其一句話點子和 SVG。

該系列偏好的風格

根據擁有者審查:具有一個負空間想法和厚實均勻間隙的粗體實心標誌;等角立體和立方體;由一個重複元素構成的細節豐富的標誌;極簡點陣和像素標誌;可愛的陶瓷小動物。最重要的是,任何看起來像現代科技、AI 或科技機能品牌風格的東西:精確、工程感、略帶未來感。連鎖帶、模組化磚塊(最愛)、單線和多線繪圖、倒角和斜切、精密環圈和軌道、網格系統、模板和實用字母、故障切片、字母組合。但絕不能是 UI、網路、晶片或電路圖示、神經網路節點圖、大腦,或任何接近已知 AI 標誌的東西(六角形結、星號、四角星芒)。

系列

該系列中的每個標誌都屬於一個系列。一旦你選擇了一個(工作流程的第 2 步),請在構建之前閱讀 references/families.md 中關於該系列的章節:它的建構方式、在 512 畫布上的數字,以及哪些嘗試已被刪除。此檔案中以引號命名的章節(例如「Iso solids」、「Glitch editions」)也在那裡。

系列:粗體負空間;瑞士網格;模板字母;字母組合;襯線字母和字母組合(批次 230);字母徽章;編織;等角立方體;等角立體;重疊(XOR);線條(單線);多線(軌道);斜切;點陣;動物;居家風格動物;葉子和種子;半色調實體;抖動漸淡(批次 167、186);精細;充氣;故障切片;剪切和線框字母(批次 112–113);內嵌字母(批次 124);軌跡和描邊字母(批次 166);迴響字母(批次 202);科技品牌標誌(批次 213);模組化;軌道;字母符號、符號、隱藏生物和形式(批次 168);科技機能(批次 107);工業標誌(批次 95–97);嘗試並放棄(批次 51);摺疊(摺紙);摺痕和繫帶(批次 170);等角 · 平面(批次 215);粗體 · 徽章(批次 216);粗體 · Y2K(批次 232);字母 · 黑體字和粗體 · 破碎(批次 231)。

套件 (scripts/kit.mjs)

形狀是 512 畫布上的多邊形集合(y 軸向下,C = 256 為中心)。

函式功能
circle(cx, cy, r), ellipse(cx, cy, rx, ry, deg)圓盤
rect(x, y, w, h), rr(x, y, w, h, r | [tl, tr, br, bl])矩形,圓角或部分圓角
squircle(cx, cy, R, n)超橢圓:徽章的柔和方形(n 4.5)
regular(cx, cy, r, sides, deg), roundPoly(points, cut)正多邊形;任何帶圓角的多邊形
poly([[x, y], …])任何多邊形
annulus(cx, cy, r, w)寬度為 w 的環;r 是中心線,而非外緣
sector(cx, cy, r, a0, a1), arcBand(cx, cy, r, w, a0, a1, round)扇形;厚弧,可選圓形端點
lens(cx, cy, length, width, deg)透鏡/葉片
drop(centre, r, tip)淚滴
pill(a, b, w), bar(a, b, w)帶圓形或方形端點的線條,用於形狀或切割間隙
stroke(points, w), sample(f, t0, t1, n)厚折線(允許可變寬度)和沿曲線的點
weave(strands, w, gap), ring(cx, cy, r)上下交錯的股線
iso(edge), cubes(list, edge, ox, oy, gap)等角點;立方體排列
isoPrism, isoBlock, isoRing, isoPile等角立體(參見「等角立體」)
dedupe(points)在 stroke() 之前移除重複的點
grow(shape, d), soften(shape, r1, r2)真實的圓角偏移(負值縮小);向內圓角 r1 和向外圓角 r2(蓬鬆形狀)
robust()在腳本頂部呼叫一次:當 polygon-clipping 拋出錯誤時,每個布林運算都會使用微小抖動重試
grown(shape, w), over(back, front, w)形狀加上一個 2w 的頻寬(減去它可切出一個獨立部分);front 在 back 前面,由 w 切開
egg(cx, cy, rx, ry, deg, k)蛋形,用於小雕像身體
slices(shape, cuts, shifts, { deg, g })故障切片:按間隙 g 切成帶狀,每個帶狀沿切口滑動
BADGE, knockout(kind, letter), clearance()七種徽章形狀;居中鏤空的字母,如果距離邊緣小於 50 則縮小
PIX7, pixels(rows, p), checker(rows)粗體 8 位元字母表;一個像素字形合併為一個實體;任何僅角點接觸的部分
dsegs(segments, t, g)顯示段,帶有尖頭端點,由均勻間隙分開
SKEL, skelSolid(k, H, T)一個幾何無襯線字體作為中心線;使用方頭端點筆畫填充
tracks(pts, { n, pitch, w }), fillet(pts, r), balloon(pts, w0, w1)平行軌道;帶圓角的折線;氣球筆畫
filletClosed(pts, r), trackLoop(pts, { n, pitch, w })每個角都經過圓角處理的封閉多邊形(允許每個角不同 r);圍繞封閉輪廓的三條軌道(動物用間距 42)
walk(at, deg, steps)海龜路徑:['L', length] 和 ['A', turn°, radius] 步驟,精確半徑的弧(開放式軌道動物)
seeded(str)種子化的 Math.random:為每個標誌設定,以便 robust() 的抖動和批次能夠逐位元組重新產生
svgShape(svgText), pathRings(d)將標誌的 SVG(或路徑資料)讀回形狀:曲線和弧線取樣,支援 evenodd 或 nonzero 孔洞
glitchMark(svgText, { kind, cuts, shift, deg })現有標誌的故障版本(參見「故障版本」)
U, D, I, X聯集、減集、交集、排除
rot(shape, deg, cx, cy), rotN(shape, n), move, scale, flipX變換;rotN 圍繞中心重複
polar(r, deg, cx, cy)以某個角度的一個點(0° = 右,90° = 下)
segmentLines(lines, { t, box }), segments(nodes, strokes, o)分段字母:每個筆畫自己的分段,接合處沿角平分線分開
isoPieces(pieces, u)單位立方體零件,帶無縫面,僅在零件之間和摺痕處有間隙(Iso Lock)
blocks(list, W, H), nest(W, H, n, sides, cut)由實心區塊拼貼而成的矩形,帶均勻間隙(Golden 和 Blocks);一個剝離細分
linkage(bars, pins)連接在一起的膠囊,每個覆蓋在前一個之上
write(file, shape), svg(shape)輸出

切割間隙 透過減去 bar()(或細的 annulus())且寬度等於間隙寬度。讓零件在護城河中浮動 透過減去其放大副本,然後加回零件(Hex Gem)。如果 polygon-clipping 拋出「Unable to complete output ring」,表示形狀共用一個精確邊緣:將其中一個移動 0.01。如果這還不夠,使用微小抖動(從 1e-4 到約 0.02 嘗試幾次)在輪廓和深度上重試整個建構,或者將面重繪為一個乾淨輪廓而非矩形的聯集。「Degenerate segment at [NaN, NaN]」表示折線有一個重複點:對其使用 dedupe()。套件輔助函式(stroke()、pill()、grown())也呼叫布林運算,因此你程式碼中的抖動無法影響它們:只需呼叫一次 robust(),它們內部的失敗會自行重試。

grow() 在批次 64 之前無任何作用:它簡化了每個重複其第一個點於結尾的環,導致環崩潰到該點,因此它只在那裡添加或移除一個圓。已修復;如果套件副本早於此版本,grow(rect(0, 0, 100, 100), -10) 會顯示問題。

**在兩種背景下以放大尺寸檢查。**小的淺底深色縮圖會誤導:開口可能看起來被填滿,或者細縫可能隱藏。在裁切或發送標誌之前,請在 400 像素、淺底深色的情況下渲染。

手寫路徑

對於簡單的標誌,你可以直接寫入路徑:

  • 一個圓是兩個弧:M cx-r cy a r r 0 1 0 2r 0 a r r 0 1 0 -2r 0 z。
  • 一個環是同一條路徑中的兩個圓,帶有 fill-rule="evenodd"。內圓變成一個孔洞。
  • 使用 evenodd 時,**重疊部分也會變成孔洞。**對於重疊的實體,要么在套件中合併它們,要么使用預設的 nonzero 規則,每個實體順時針繪製,每個孔洞逆時針繪製。
  • 然後執行 fit.mjs。不要試圖手動達到 448,也不要裁切到畫布:如果繪圖的一部分位於 0-512 之外,fit.mjs 會將其帶回。

審查檢查清單

刪除或重做任何未通過以下檢查的標誌:

  • 一個想法,可以用一個不含「和」的句子描述。
  • 在 32 像素下可讀:間隙不會閉合,沒有任何東西變成一團。沒有任何東西窄於 10 個單位。
  • 全篇保持一種間隙寬度和一種筆畫粗細(或清晰的 1:2 比例)。保持該系列的間隙(獨立零件之間為 22 個單位):網站的 Gap、Weight 和 Soften 控制項會測量每個標誌的零件和間隙,並在它們均勻時效果最佳。唯一的例外是摺疊或重疊的 SEAM 為 11(Crease 和 Strap 標誌,位於「摺痕和繫帶」下),且僅在僅輪廓在 32 像素下可讀時適用。
  • **絕不看起來像圖示。**這是標誌最常失敗的規則。問:它是否能舒適地放在一個圖示集(Material、Lucide、SF Symbols)中?如果是,無論畫得多好,都要刪除。一個 Logo 標誌是屬於一個品牌的抽象或風格化標誌,而不是事物或動作的象形圖。具體來說,不能是 UI 圖示:沒有箭頭、播放、主頁、齒輪、堅果、鈴鐺、鎖、下載、複製、聊天氣泡、地圖釘、Wi-Fi 弧線、圖表(也包括扇形圖)、圖像/山和太陽、「禁止進入」斜線、類似旋轉器的點環、包裹盒。日常物品的線條畫很容易滑入圖示領域:杯子、瓶子、眼鏡、獎盃、高帽、火箭、自行車和寶石都會被解讀為圖示。
  • 不是意外形成的身體部位:注意重疊環之間的杏仁形和透鏡形。
  • 不是具有意義的符號:沒有宗教、政治或神秘符號(六角星、五角星、十字架、新月星、三曲枝圖、鳥居、巴紋、任何方向的萬字元

相關技能