跳至主要內容
Lizely

SVG 轉 JPG 轉換工具

將安全且自包含的 SVG 檔案轉換為不透明的 JPG 檔案,並在本機進行,並具備明確的尺寸與品質控制。

隱私權:你的檔案不會離開裝置,所有處理均在瀏覽器本機完成。

使用方式

  1. 1.選擇一個不超過 5 MiB 的自包含 .svg 檔案,並等待其安全與尺寸檢查。
  2. 2.選擇一個不透明的背景顏色與 JPEG 品質;任一更改將清除舊結果。
  3. 3.轉換 SVG,將 JPG 預覽與原始檔對比,並下載新的位元圖檔。

關於SVG 轉 JPG 轉換工具

SVG 轉 JPG 轉換工具可將一個自包含的向量檔案轉換為不透明的 JPEG 圖片,並在當前瀏覽器中執行。選擇一個 .svg 檔案,檢視偵測到的像素尺寸,從 JPEG 到 1.00 間選擇一個 0.60 品質,並選擇應取代透明度的實體背景顏色。瀏覽器會解碼接受的 SVG,將其以宣告的尺寸繪製於畫布上,先填滿畫布再繪製內容,並匯出獨立的 .jpg 下載檔。SVG 文字、渲染像素、檔名以及 JPG 皆不會上傳至 Lizely。

JPG 沒有透明度通道,因此透明 SVG 區域無法保持透明。這個工具總是先繪製一個不透明的背景;預設是白色,顏色控制可以提供另一種實體顏色。形狀隨後會按照原來的順序在該背景之上進行渲染。品質控制 JPEG 的壓縮,而非輸出尺寸。較高的值通常能保留更多細節並產生較大的檔案,而較低的值可能會在尖銳的向量邊緣、小字、漸層以及高對比度邊界周圍產生可見的雜訊。結果是一個點陣圖,無法保留可以無限縮放的路徑或可編輯的 SVG 物件。

輸出尺寸來自明確的正數根寬度與高度,以無單位的 CSS 像素或 px 值表示。若任一可用的尺寸缺失,轉換器會使用 viewBox 中的正數寬度與高度。它不會對百分比尺寸、物理單位、缺失的 viewBox 或無效值進行猜測。分數尺寸會四捨五入為整數畫布像素。任一邊長最多為 8,192 像素,總輸出最多為 32,000,000 像素,輸入檔案最多為 5 MiB。超過這些限制的檔案會出現錯誤;它們絕不會被靜默調整、部分讀取或截斷。

SVG 可能包含可執行或會連接網路的功能,因此此轉換器刻意只接受比完整瀏覽器 SVG 轉譯器更小的子集。在解碼圖片前,共用稽核邏輯會拒絕 script、foreignObject、iframe、object、embed、image、audio、video 與 style 元素,也會拒絕事件處理常式屬性、行內 style 屬性、xml:base、文件類型與實體宣告、非 XML 處理指令,以及不是本機片段參照的連結或資源屬性。CSS url() 參照僅接受 url(#gradient) 這類本機片段。第二道以 DOM 為基礎的檢查會驗證 XML 格式正確、根元素是 SVG 命名空間中的 SVG,並檢查禁用元素與不安全屬性。

保守的 style 限制代表某些由設計軟體匯出的普通向量圖檔即使 style 區塊無害,也會被拒絕。若要轉換這些檔案,請在原始製作應用程式中將外觀展開為呈現屬性與路徑、移除嵌入圖片、移除指令碼與事件處理常式,並使用片段 ID 將漸層、遮罩、裁切與濾鏡封裝在同一個 SVG 中。此工具不會擷取遠端圖片、Web 字型、樣式表、連結的 SVG 檔案或 data-URL 圖片。它不會清理不安全內容後繼續處理,而會停止並說明不支援的部分,讓使用者檢查原始檔。

透過文字審核並不保證每個 SVG 功能都能被每個瀏覽器正確呈現。字型可用性、過濾器實現、色彩管理、遮罩、裁剪以及 SVG 版本支援可能會有所不同。目前的瀏覽器必須成功解析並解碼檔案後才能進行畫布繪製。格式錯誤的檔案或不支援的功能會導致解碼錯誤,並清除任何先前的下載紀錄。畫布匯出也可能返回無 blob 或丟擲錯誤;這些失敗會被報告,而不是保留舊的成功 JPG 紀錄。請選擇當前瀏覽器並比較預覽與權威向量來源。

來源檔案與結果檔案使用不同的暫時物件網址。選擇另一個檔案會撤銷兩個舊網址;變更品質或背景會撤銷舊 JPG;再次產生會替換結果 URL;離開頁面則會釋放所有剩餘 URL。請求及已掛載狀態防護可避免較慢的解碼或畫布匯出覆蓋較新的設定。每次選擇後都會重設隱藏的檔案輸入,因此可以再次選擇相同檔案。這些生命週期規則可避免把過期預覽誤認為目前的轉換結果,也能避免大型本機 Blob 被保留超過必要時間。

此轉換器適合一般 Web 圖形、簡單圖表、由本機路徑構成的標誌、自包含圖示,以及其他符合文件所述子集的可信作品。請勿將它當成處理惡意向量圖檔的通用清理工具,也不能以此證明 SVG 可安全發布至其他位置。轉成 JPG 後不會保留向量、中繼資料、嵌入字型、動畫、互動功能、無障礙結構、連結、圖層或來源編輯歷程。若用於封存、印刷、色彩要求嚴格或不受信任內容的工作流程,請使用持續維護的桌面轉換工具,或採用具備明確 SVG 安全政策的隔離式伺服器管線,並在散布前檢查輸出。

方法與來源

瀏覽器會驗證 SVG 檔案名稱或 MIME 型別以及 5 MiB 的上限,讀取文字,為指令碼、動畫、樣式表面、CSS 的混淆、外部內容以及替代字首資源屬性執行保守的共用審計,從正數像素寬度和高度或 viewBox 匯出整數點陣圖尺寸,並確認具有良好名稱空間的 SVG 名稱與 DOMParser。它會用所選背景填滿一個有界畫布,繪製解碼後的 SVG,從 畫布.toBlob 請求 image/jpeg 在品質 0.60-1.00,並驗證回傳的 Blob 是否為 JPEG。在替換、設定變更、錯誤與解除安裝時,會無效化過時的工作與物件 URL。

常見問題

為何一個普通的 SVG 被拒絕?
此工具使用保守的子集,拒絕樣式區塊或屬性、內嵌圖片、指令碼、動畫元素、CSS 跳脫或註解混淆、foreignObject、事件處理以及外部資源,即使特定檔案可能無害地使用這些功能。
透明的 SVG 區域會如何處理?
JPEG 沒有 alpha 通道。整個畫布會先以選擇的實體背景顏色填滿,再繪製 SVG。
JPG 的尺寸是如何決定的?
首先使用以像素為單位的正數根寬度與高度;若無則使用 viewBox 的尺寸。不支援或缺失的尺寸將被拒絕,不會被猜測。
此工具會載入遠端圖片或字型嗎?
不會。影象元素、樣式表面、非片段的 href 或 src 值,以及非片段的 CSS url() 參考,在解碼前都會被拒絕。
我的檔案會上傳嗎?
不會。檔案讀取、審核、SVG 解碼、畫布繪製、JPEG 匯出、預覽與下載皆在當前瀏覽器本機完成。

圖片工具 使用指南

查看全部