使用 JavaScript 創建交互式 SVG 圖標
已發表: 2023-01-27SVG 是一種矢量圖形圖像格式,支持交互性和動畫。 W3C 萬維網聯盟是互聯網的主要國際標準組織。 要創建交互式 SVG 圖標,您需要使用 JavaScript。 這允許您更改圖標的外觀以響應用戶輸入或其他事件。 首先,您需要創建一個 SVG 圖標。 您可以在任何矢量繪圖程序中執行此操作,例如 Adobe Illustrator。 有了圖標後,您需要將其保存為 SVG 文件。 接下來,您需要將 SVG 文件添加到您的 HTML 文檔中。 您可以通過使用標籤或標籤來做到這一點。 最後,您需要添加使您的圖標具有交互性的 JavaScript 代碼。 在此代碼中,您需要使用 SVG DOM 界面來訪問圖標的元素。 然後,您可以向這些元素添加事件偵聽器以響應用戶輸入。
您將需要使用 SVG 文件作為 andlt;img> 的 src 單獨覆蓋這些文件。 使用相對 em 單位時,default.icon 類是理想的。 與文本內聯的圖標。 如果要控製圖標和文本之間的間距,請將.with-icon–before 或.with-icons–after 類添加到父元素。 沒有緩存版本。 Internet Explorer 中的 VJ 文件。 您可以使用文件的 >use> 元素從外部源生成代碼。 即使有一些限制,CSS 樣式仍然是可能的。 如果圖標在標記模式的主體中不可見,則可以使用以下標記模式為其提供名稱。
因為它們是矢量圖形、可縮放矢量圖形或 SVG,所以是在您的網站上用作圖標的絕佳選擇。 您可以在不降低質量的情況下放大或縮小矢量圖形的大小。 這些文件很小並且壓縮得很好,使您的網站加載速度很快。
如果svg 源代碼中不包含屬性值,它將不會在 Chrome 瀏覽器中顯示 svg 圖像。 將 SVG 源代碼中的寬度屬性更改為您的首選值。
將 SVG 轉換為 PNG 後,您可以單擊此鏈接:https://svgtopng.com/。 通過單擊鏈接 https://makeappicon.com/,您可以為 Android 和 iOS 製作一個PNG 圖標。
如何調用 Svg 文件?
svg 文件是可用於創建基於矢量的圖像的文件。
可縮放矢量圖形 (SVG) 是最新形式的圖像格式。 與其他類型的圖形不同,您不需要找到獨特的像素來使用 SVG 構成圖像。 他們不使用“矢量”數據,而是使用特定的大小和方向。 理論上可以使用向量集合生成幾乎任何類型的圖形。 可以從頭開始創建它們或合併現有圖像。 有許多支持 sva 文件的現代圖形設計工具。 如果您不想下載任何軟件,您可能還想使用在線轉換工具。
因為內容管理系統 (CMS) 不支持它,所以您無法將它與 WordPress 一起使用。 從頭開始創建 SVG 或將圖像轉換為格式是最困難的部分。 Adobe Illustrator 和 GIMP 是可用於組合它們的最通用的兩種工具。
如果您使用的是 Adobe Illustrator,則可以使用該程序打開 SVG 文件。 Adobe Photoshop、Photoshop Elements 和 InDesign 都提供 SVG 文件支持。 Adobe Illustrator 可以創建SVG 文件,這是一種功能強大的文件格式。 您可以使用 SVG 文件創建可在 Web 上使用的矢量圖,SVG 文件是可擴展的並且可以使用任何程序創建。 如果您想將 SVG 文件保存為其他格式,可以將其保存為 PDF 或 JPEG 格式。 在 Adobe Illustrator 中創建 SVG 文件後,您可以使用其他 Adobe 程序,例如 Photoshop、Photoshop Elements 和 InDesign。 使用這些程序,您可以編輯和保存各種格式的文件。 使用 SVG 文件是創建可以在 Web 上以多種方式編輯和使用的矢量圖稿的有效方式。 如果您使用 Adobe Illustrator 創建 SVG 文件,請確保它們以不同的格式保存,以便它們可以在其他程序中使用。
屏幕閱讀器和 Svg 文件
如果您使用的是屏幕閱讀器,則應查看有關您所使用的 SVG 文件的文檔,以了解您可以使用哪些標籤。
如何獲取圖標的 Svg 代碼?
獲取圖標SVG 代碼的最簡單方法是使用像 Icons8.com 這樣的網站。 在網站上,您可以通過關鍵字搜索圖標或瀏覽類別。 一旦你找到你想要的圖標,你可以點擊它來查看代碼。
掌握了基礎知識後,您將能夠立即手動編寫 SVG 圖標代碼。 我們將繪製大量圖標供您練習 SVG 技能。 本教程的內容會讓您保持更新,但我已經制定了一個結構,以便該過程的每個步驟都建立在以前的知識之上。 Inkscape 是一種允許您在紙上繪製 SVG 的程序。 這些程序帶有基本形狀、顏色選擇器、繪圖工具和路徑操作等。 當您理解 SVG 的工作原理時,您將能夠理解它們的 XML 標記。 SVG 的最終寬度和高度未指定,而是根據其與 viewBox 坐標系的相對距離計算得出。
因此,您繪製的任何形狀都將限制在畫布大小上的基本 576 像素坐標空間內。 如果需要,您可以縮放矢量圖像。 SVG 的每個屬性指定每條線的起點和終點,可以是 x1、y1、x2 或 y2。 使用SVG畫線,首先要確定如下要求: 一個坐標系,從0開始,到(24×2, 4.2x)結束,然後是0, 0, 24×2, 4.2x。 最後,在設置筆觸顏色後,我們對線條有了一個感覺: 當您將其調整為較小的尺寸時,線條可能會顯得有點細。 這是因為筆劃寬度設置為一個單位。
訣竅是在使用硬編碼顏色(例如十六進制值)或使用神奇的 currentColor 之間進行選擇。 如果您要使用它們,請繪製自然水平的線條。 此外,您可以繪製具有完全垂直表面的線條:這可以使用任意數量的線條來完成。 當我們的瀏覽器播放點連接時,我們可以準確地看到節點之間發生了什麼。 Point 是可用於定義 A >polyline 的屬性。 我之前解釋瞭如何通過組合基本形狀和下圖所示的多段線形狀來繪製文本圖標。 正確繪製的 T 字母有兩個左邊緣和上邊緣; 然而,兩者之間的奇怪填充創造了一個三角形。
在大多數形狀中,填充可以默認設置為黑色。 但是如果我們使用 SVG 元素中的 fill 屬性或同名的 CSS 屬性,我們可以將填充設置為零。 將前一頁的標記複製粘貼到您自己的文本圖標,它將是一個圓滑的圖標,在左上角和右上角有尖角(參見下面的示例)。 在本節中,我們將學習如何繪製三個圓形 SVG 圖標。 以下 CSS 示例將在其餘示例中使用。 在這裡,我們將引導您完成創建多邊形的步驟,多邊形是一種可以自閉合的形狀。 SVG 可以提供的最強大的元素之一是路徑。
路徑可以是任何路徑,從直線到圓再到弧。 路徑可用於復制我們見過的幾乎任何形狀。 通過在屬性中輸入命令列表來繪製形狀。 SVG 命令可用於指定絕對路徑或相對路徑。 在絕對命令中,指定坐標移動到,而在相對命令中,指定特定位移以移動到特定位置。 L/l,與 H/h 和 V/v 不同,可用於在任何方向繪製線條。 使用 ClosePath 工具,Z 用於繪製自閉合路徑。
弧線可以用來畫彎曲的路徑,每一條都是絕對的(A/a)或者相對的(A/a)。 最難掌握的命令是橢圓弧曲線命令,但一旦你理解了它,你幾乎可以創建任何你能想到的圖標。 如果您想以任何其他方式繪製這些線條,您可以使用路徑來完成。 如果您從 Inkscape 等繪圖工具將壓縮的圖像導入到壓縮的 SVG 文件中,通常會遇到這種語法。 這種性質的緊湊路徑符號在野外更為常見。 我們在這裡學到的語法可能看起來很奇怪,但它仍然是一樣的。 我們可以刪除一個沒有出現在每個命令之前或之後的對象,以便以明確正確的方式刪除每個命令前後的空間。
如何將圖標保存為 Svg 文件?
在 Adobe Illustrator 中,您可以另存為文件 * 另存為。 當“另存為”窗口出現時,為您的圖標輸入一個名稱,然後按底部的“格式”按鈕將圖標的文件類型更改為 svg。 為您的圖標創建一個描述性名稱並將其設置為 SVG。
什麼是 Svg 代碼?
可縮放矢量圖形 (SVG) 是一種基於 XML 的標記語言,用於描述二維矢量圖形。
我如何從 W3 組織獲取 Svg?
有幾種方法可以從 W3.org 獲取 SVG。 一種方法是訪問他們的網站並單擊“圖形”部分下的“SVG”鏈接。 這會將您帶到一個包含所有可用 SVG 文件列表的頁面。 另一種方法是轉到他們網站的“圖形”部分,然後單擊“SVG”鏈接。
可縮放矢量圖形 (SVG) 規範的原始版本於 2000 年發布,之後才轉變為基於 XML 的規範。 此後,發布了最新版本 SVG 2.0,共進行了七次更新。 SVG 規範最初旨在提供免版稅的圖形格式,可以縮放到大尺寸並支持廣泛的設備。 由於其成熟,它已成為一種廣泛使用的格式,用於創建矢量圖形和基於圖形的動畫。 今天,個人、組織和政府機構都使用 SVG 進行交互。 矢量圖形和基於圖形的動畫在網站和其他基於 Web 的應用程序中也以 SVG 的形式流行。 SVG 標準已經存在了很長時間,並且隨著時間的推移而發展。 我們希望 SVG 規範將繼續發展和改進,並最終成為創建矢量圖形和基於圖形的動畫的標準。
如何在 Html 中引用 Svg 文件?
您可以通過幾種不同的方式在 HTML 中引用 SVG 文件。 一種方法是使用元素。 該元素允許您在 HTML 文檔中嵌入 SVG 文件。 另一種方法是使用
除了 Microsoft Windows 和 Internet Explorer 之外,矢量圖形還可以在多種設備和瀏覽器上顯示。 無需安裝插件即可將SVG 元素直接嵌入到 HTML 頁面中。 這使您可以創建精美的圖形和動畫。 使用 SVG 的原因有很多。 該應用程序非常適合創建徽標、圖標和其他需要在各種設備上被用戶看到的圖形。 矢量圖形也受 SVG 支持,是創建插圖和圖表的絕佳選擇。 如果你想創建高質量的圖形,SVG 是最好的使用平台。 憑藉其產生令人驚嘆的視覺效果的能力,SVG 支持矢量圖形,使其可以用於網站和應用程序。 SVG 使用簡單,並且由於其嵌入式功能可以集成到任何 Web 項目中。
HTML 中的 Svg
svg> 標籤可用於將 SVG 添加到 HTML 頁面。 *use* 標籤也可用於引用整個 .vga 格式的文檔。