INKSCAPE(1) | Inkscape Commands Manual | INKSCAPE(1) |
Inkscape - SVG (Scalable Vector Graphics) 編輯程式。
"inkscape [選項] [檔名_1 檔名_2 ...]"
選項:
-?, --help --help-all --help-gapplication --help-gtk -V, --version --debug-info --system-data-directory --user-data-directory -p, --pipe --pdf-page=頁數 --pdf-poppler --convert-dpi-method=方式 --no-convert-text-baseline-spacing -o, --export-filename=檔名 --export-overwrite --export-type=類型[,類型]* --export-extension=擴充模組識別碼 -C, --export-area-page -D, --export-area-drawing -a, --export-area=x0:y0:x1:y1 --export-area-snap -d, --export-dpi=DPI -w, --export-width=寬度 -h, --export-height=高度 --export-margin=間距 -i, --export-id=OBJECT-ID[;OBJECT-ID]* -j, --export-id-only -l, --export-plain-svg --export-png-color-mode=COLORMODE --export-png-use-dithering=BOOLEAN --export-ps-level=LEVEL --export-pdf-version=VERSION -T, --export-text-to-path --export-latex --export-ignore-filters -t, --export-use-hints -b, --export-background=COLOR -y, --export-background-opacity=VALUE -I, --query-id=物件識別碼[,物件識別碼]* -S, --query-all -X, --query-x -Y, --query-y -W, --query-width -H, --query-height --vacuum-defs --select=OBJECT-ID[,OBJECT-ID]* --actions=ACTION(:ARG)[;ACTION(:ARG)]* --action-list -g, --with-gui --display=DISPLAY --app-id-tag=TAG --batch-process --shell
Inkscape 是一款自由與開放原始碼的向量繪圖軟體。提供強大豐富的功能且能廣泛應用在藝術與技術用途插畫,諸如卡通、素材、圖標、設計原型、圖表和流程圖。使用向量圖形能構允許銳邊圖像輸出和無解析度限制的圖形繪算,而不會向點陣圖像有固定像素數量的限制。Inkscape 使用標準的 SVG 檔案格式昨為主要格式,其他許多應用程式包括網頁瀏覽程式都支援此種格式。
使用者介面以簡單易用且能讓專業人士有效率創作的方向設計,保留 GNOME 桌面標準的舒適性以確保使用者能以其他 GNOME 應用程式使用體驗快速學習操作方式。
SVG 是 W3C 針對 2D 向量繪圖制定的標準 XML 格式。 SVG 可於圖畫中使用點、路徑和基本形狀來定義物件。 顏色、字型、邊框寬度...等等可作為「樣式」屬性指定給這些物件。由於 SVG 的目標是成為標準格式,也因為 SVG 檔為純文字檔/xml,所以有相當多的程式可能使用 SVG 檔並有多種用途。
Inkscape 使用 SVG 作為內定文件格式,並且以成為在開放原碼社群中完整相容 SVG 格式的繪圖程式為目標。
Inkscape 預期的系統資料目錄位置可用 INKSCAPE_DATADIR 環境變數覆蓋。
設定檔目錄的預設位置可用 INKSCAPE_PROFILE_DIR 環境變數覆蓋。
特殊檔名 "-" 的用法可讓 Inkscape 將影像資料寫入到標準輸出 (stdout)。
注意 PostScript 格式不支援透明,所以原始 SVG 中的透明物件都會自動轉換成點陣圖。用到的字型會為子集合並嵌入。預設匯出範圍是頁面。你可以用 --export-area-drawing 將匯出範圍設定為繪圖。
備註 PDF 格式會保留原始 SVG 的透明度。
如果你用物件的分號分隔清單指定多個數值,每個會個別匯出。這裡匯出的檔案會用這種方式命名: [input_filename]_[ID].[export_type]
inkscape -i path231 -t 文件.svg
如果你將這個選項和 --export-dpi、--export-width 或 --export-height 一起使用,那麼 DPI 內定值會被忽略並使用命令列上的數值。 如果你將這個選項和 --export-filename 一起使用,那麼檔名內定值會被忽略並使用命令列上的檔名。
如果你用逗號分隔清單指定多個數值,使用 --query-id 任何幾何查詢 (例如 (e.g. --query-x)) 會回傳對應物件清單的用逗號分隔的數值清單。
只在動作有用到 --batch-process 時必須使用。
用 export-do 動作可在任何點執行匯出。這允許單個檔案執行多次匯出。
在殼層 (shell) 模式 Inkscape 會預期輸入一連串動作 (或動詞)。這些操作會逐行執行,表示模擬按 Enter 鍵的典型行為。可以將全部動作彙整到同一行 (但不一定是必須這樣)。
下面範例會開啟檔案並匯出為兩種不同格式,然後開啟其他檔案並匯出單一物件:
file-open:file1.svg; export-type:pdf; export-do; export-type:png; export-do file-open:file2.svg; export-id:rect2; export-id-only; export-filename:rect_only.svg; export-do
主要的組態設定檔放在 ~/.config/inkscape/preferences.xml; 組態設定檔儲存各種設定值,可在 Inkscape 中變更 (大部份在 Inkscape 偏好設定對話窗)。也可以在那裡的子目錄中放置你自己的組態設定檔:
$HOME/.config/inkscape/extensions/ - extensions.
$HOME/.config/inkscape/fonts/ - fonts.
$HOME/.config/inkscape/icons/ - icon sets.
$HOME/.config/inkscape/keys/ - 鍵盤對應。
$HOME/.config/inkscape/paint/ - patterns and hatches.
$HOME/.config/inkscape/palettes/ - palettes.
$HOME/.config/inkscape/symbols/ - symbol files.
$HOME/.config/inkscape/templates/ - 新增檔案的範本。
$HOME/.config/inkscape/ui/ - user interface files.
程式執行成功時會回傳零或者執行失敗時回傳不為零的值。
各種錯誤訊息和警告可列印到 STDERR 或 STDOUT。如果程式怪異地產生一個特殊的 SVG 檔案或不正常關閉,它是 查看這次輸出的有用線索。
雖然 Inkscape 很明顯地主要是作為一款圖形介面的應用程式,但同樣能在命令列上處理 SVG。
用圖形介面開啟一個 SVG 檔案:
inkscape 檔名.svg
將一個 SVG 檔以預設的解析度 96 dpi 匯出成 PNG (1 SVG 使用者單位轉變成 1 點陣圖像素):
inkscape --export-filename=filename.png filename.svg
相同,但強制 PNG 檔案為 600x400 像素:
inkscape --export-filename=filename.png -w 600 -h 400 filename.svg
相同,但匯出繪圖部份 (全部物件的外框邊界),不是頁面:
inkscape --export-filename=filename.png --export-area-drawing filename.svg
將兩個不同檔案分別匯出四種不同的檔案格式:
inkscape --export-type=png,ps,eps,pdf filename1.svg filename2.svg
將 id="text1555" 物件匯出成 PNG,當從圖形介面匯出時,使用輸出檔名和上次使用的解析度:
inkscape --export-id=text1555 --export-use-hints filename.svg
相同,但使用預設 96 dpi 解析度,指定檔名,並且向外捉取匯出範圍為最接近整個 SVG 使用者單位的值 (維持物件的像素校正,因此最小平滑化):
inkscape --export-id=text1555 --export-filename=text.png --export-area-snap filename.svg
將一個 Inkscape SVG 文件轉換成普通的 SVG:
inkscape --export-plain-svg --export-filename=filename2.svg filename1.svg
將 SVG 文件轉成 EPS,全部的文字轉換成路徑:
inkscape --export-filename=filename.eps --export-text-to-path filename.svg
查詢 id="text1555" 物件的寬度:
inkscape --query-width --query-id=text1555 filename.svg
再製 id="path1555" 和 id="rect835" 的物件,將再製物件旋轉 90 度後,儲存 SVG 並離開:
inkscape --select=path1555,rect835 --actions="duplicate;object-rotate-90-cw" --export-overwrite filename.svg
選取全部有橢圓標籤的物件,將物件旋轉 30 度後,儲存檔案並離開程式。
inkscape --actions="select-by-element:ellipse;transform-rotate:30" --export-overwrite filename.svg
將 ID 為 MyTriangle 的物件以半透明紫色背景匯出為 triangle_purple.png 檔案並以紅色背景匯出到 triangle_red.png 檔案。
inkscape --actions="export-id:MyTriangle; export-id-only; export-background:purple; export-background-opacity:0.5;export-filename:triangle_purple.png; export-do; export-background:red; export-background-opacity:1; export-filename:triangle_red.png; export-do" filename.svg
從標準輸入 (stdin) 讀取 SVG 並匯出成 PDF 格式:
cat filename.svg | inkscape --pipe --export-filename=filename.pdf
將 SVG 匯出成 PNG 格式並寫入到標準輸出 (stdout),然後用 ImageMagick 轉換程式轉成 JPG 格式:
inkscape --export-type=png --export-filename=- filename.svg | convert - filename.jpg
與上面的相同,但差別在於從管線讀取 (這裡可以省略 --export-filename)
cat filename.svg | inkscape --pipe --export-type=png | convert - filename.jpg
訪問此網址取得更多資訊 <http://wiki.inkscape.org/wiki/index.php/Environment_variables>
可從目錄 $HOME/.inkscape/icons/ 載入不同的圖示組來替代預設的$PREFIX/share/inkscape/icons/icons.svg 檔案。 圖示按照名稱載入 (例如 fill_none.svg),如果沒有找到符合名稱的圖示,那麼就會從 icons.svg 載入。 如果圖示不從這些位置載入,就會退回使用預設的系統位置。
藉由 SVG ID 和比對圖示名稱從 SVG 檔中搜尋並載入需要的圖示。(例如,要從一個檔案載入 "fill_none" 圖示, 外框邊界會尋找 SVG ID "fill_none" 將其作為圖示,不管是來自 fill_none.svg 或 icons.svg。)
搜尋 Inkscape 資訊的最佳地點是在 <https://www.inkscape.org/>。 網站上有新聞、說明文件、教學、範例、郵件論壇存檔、最新發佈的程式版本、程式錯誤和功能需求資料庫、論壇...等等。
potrace, cairo, rsvg, batik, ghostscript, pstoedit.
SVG 相容測試工具: <https://www.w3.org/Graphics/SVG/WG/wiki/Test_Suite_Overview>
SVG 驗證工具: <https://validator.w3.org/>
Scalable Vector Graphics (SVG) 1.1 規範 W3C 建議 (Recommendation) 2011 年 8 月 16 日 <https://www.w3.org/TR/SVG11/>
Scalable Vector Graphics (SVG) 1.2 規範 W3C 工作起草 (Working Draft) 2005 年 4 月 13 日 <https://www.w3.org/TR/SVG12/>
Scalable Vector Graphics (SVG) 2 規範 W3C 候補建議 (Candidate Recommendation) 2016 年 9 月 15 日 <https://www.w3.org/TR/SVG2/>
Document Object Model (DOM): 等級 2 核心 W3C 建議 (Recommendation) 2000 年 11 月 13 日 <https://www.w3.org/TR/DOM-Level-2-Core/>
請閱讀在 說明 > 指導手冊 和 說明 > Inkscape 使用手冊 的資料來學習 Inkscape 圖形介面的操作。
除了 SVG 外,Inkscape 可以匯入 (檔案 > 匯入) 多數的點陣圖格式 (PNG、BMP、JPG、XPM、GIF 等)、 普通純文字檔 (需要 Perl)、PS 和 EPS (需要 Ghostscript)、PDF 和 AI 格式 (AI 版本 9.0 或更新)。
Inkscape 可匯出 32-位元 PNG 圖片 (檔案 > 匯出 PNG 圖片),也可從 檔案 > 另存 儲存成 AI、PS、EPS、PDF、 DXF 及一些其他格式。
Inkscape 能用繪圖板畫筆的壓力及傾斜感應來變化寬度、角度和一些工具的作用力,包括美工筆。
Inkscape 包含一個嵌入的 Potrace 點陣圖描繪引擎 (<http://potrace.sf.net>) 圖形介面前端。
Inkscape 能使用外部腳本 (stdin-to-stdout 過濾器),腳本會以擴充功能選單上的命令方式呈現。腳本可以 有設定各種參數的圖形介面對話窗,而且能透過命令列取得所選物件的 ID。Inkscape 提供各式各樣用 Python 寫成的特效模組。
查看 doc/keys.html 以取得鍵盤和滑鼠快捷鍵的完整清單,或在說明選單中使用按鍵和滑鼠指令。
已經知道許多程式錯誤;請到網站 (<https://www.inkscape.org/>) 檢閱已回報的錯誤並回報新發現的問題。也請看看你使用版 本的發佈說明中已知問題段落內容 (檔案「NEWS」)。
後來變成 Inkscape 的程式碼庫始於 1999 年的程式 Gill (由 Raph Levien 建立的 GNOME 繪圖程式)。 Gill 的最終目標是支援全部的 SVG。Raph 實現了 PostScript 貝茲曲線成像模型,包括邊框和填充、線段 端點樣式、線段接合樣式、文字...等等。Raph 的 Gill 網頁位於 <http://www.levien.com/svg/>。Gill 的開發工作在 2000 年時似乎已經變慢或停止。
接下來這個程式碼庫化身為極受歡迎的程式 Sodipodi,由 Lauris Kaplinski 主導。經過數年的發展,這個 程式碼庫已轉變為一個強大的繪圖程式,加入了一些新特性,支援多語言,移植到 Windows 和其他操作系統,並 淘汰某些相依套件。
於 2003 年時由四名活躍的 Sodipodi 開發人員 - Bryce Harrington、MenTaLguY、Nathan Hurst 和 Ted Gould 成立 Inkscape 計劃,想要以專注於 SVG 相容、介面外觀風格和開放開發機會吸引更多參與 者的觀點為程式碼庫帶來新的方向。此計劃進展迅速,獲得許多非常活躍的貢獻和功能。
計劃早期的許多工作專注於程式碼的穩定和國際化。從 Sodipodi 繼承的原始圖形輸出引擎摻入許多數學角,因而 導致當程式超出正常使用範圍時會意外地不正常關閉;用 Livarot 取代原本的圖形輸出引擎,雖然不夠完美,但 程式錯誤明顯地減少。此計劃也有經常收養提交的程式碼的做法,並鼓勵使用者去試用程式的開發版本快照;這有助 於迅速發現新的程式錯誤,並且保證使用者能輕易地校驗修復狀況。因此,Inkscape 發佈的版本已經普遍贏得了穩健可靠的聲譽。
同樣的,努力走向國際化及介面本地化,這有助於此程式獲得世界各地的幫助與貢獻。
大致上來說,Inkscape 已經在開放原碼的視覺魅力上產生正面的影響,作為用來製作和分享圖示、啟動畫面、網站 設計等的工具。從某一點來看,「這只是一個繪圖程式」,但 Inkscape 已經扮演一個重要的角色,使開放原始碼 帶給廣大愛好者更多的視覺饗宴。
這個程式碼庫的存在要歸功於各個時期的許多貢獻者。下列的名單當然不完整,但用來正式向齊心致力於這個程式的 許多人致謝:
Maximilian Albert, Joshua A. Andler, Tavmjong Bah, Pierre Barbry-Blot, Jean-François Barraud, Campbell Barton, Bill Baxter, John Beard, John Bintz, Arpad Biro, Nicholas Bishop, Joshua L. Blocher, Hanno Böck, Tomasz Boczkowski, Adrian Boguszewski, Henrik Bohre, Boldewyn, Daniel Borgmann, Bastien Bouclet, Hans Breuer, Gustav Broberg, Christopher Brown, Marcus Brubaker, Luca Bruno, Brynn, Nicu Buculei, Bulia Byak, Pierre Caclin, Ian Caldwell, Gail Carmichael, Ed Catmur, Chema Celorio, Jabiertxo Arraiza Cenoz, Johan Ceuppens, Zbigniew Chyla, Alexander Clausen, John Cliff, Kees Cook, Ben Cromwell, Jon Cruz, Aurélie De-Cooman, Kris De Gussem, Milosz Derezynski, Daniel Díaz, Bruno Dilly, Larry Doolittle, Nicolas Dufour, Tim Dwyer, Maxim V. Dziumanenko, Moritz Eberl, Johan Engelen, Miklos Erdelyi, Ulf Erikson, Noé Falzon, Sebastian Faubel, Frank Felfe, Andrew Fitzsimon, Edward Flick, Marcin Floryan, Fred, Ben Fowler, Cedric Gemy, Steren Giannini, Olivier Gondouin, Ted Gould, Toine de Greef, Michael Grosberg, Bryce Harrington, Dale Harvey, Aurélio Adnauer Heckert, René de Hesselle, Carl Hetherington, Jos Hirth, Hannes Hochreiner, Thomas Holder, Joel Holdsworth, Christoffer Holmstedt, Alan Horkan, Karl Ove Hufthammer, Richard Hughes, Nathan Hurst, inductiveload, Thomas Ingham, Jean-Olivier Irisson, Bob Jamison, Ted Janeczko, Marc Jeanmougin, jEsuSdA, Lauris Kaplinski, Lynn Kerby, Niko Kiirala, James Kilfiger, Nikita Kitaev, Jason Kivlighn, Adrian Knoth, Krzysztof Kosiński, Petr Kovar, Benoît Lavorata, Alex Leone, Julien Leray, Raph Levien, Diederik van Lierop, Nicklas Lindgren, Vitaly Lipatov, Ivan Louette, Fernando Lucchesi Bastos Jurema, Pierre-Antoine Marc, Aurel-Aimé Marmion, Colin Marquardt, Craig Marshall, Ivan Masár, Dmitry G. Mastrukov, David Mathog, Matiphas, Patrick McDermott, Michael Meeks, Federico Mena, MenTaLguY, Aubanel Monnier, Vincent Montagne, Tim Mooney, Derek P. Moore, Chris Morgan, Peter Moulder, Jörg Müller, Yukihiro Nakai, Victor Navez, Jonathan Neuhauser, Christian Neumair, Nick, Andreas Nilsson, Mitsuru Oka, Vinícius dos Santos Oliveira, Martin Owens, Alvin Penner, Matthew Petroff, Jon Phillips, Zdenko Podobny, Alexandre Prokoudine, Jean-René Reinhard, Alexey Remizov, Frederic Rodrigo, Hugo Rodrigues, Jean Franco Amoni Rodríguez, Juarez Rudsatz, Xavier Conde Rueda, Felipe Corrêa da Silva Sanches, Christian Schaller, Marco Scholten, Tom von Schwerdtner, Markus Schwienbacher, Danilo Šegan, Abhishek Sharma, Tim Sheridan, Shivaken, Michael Sloan, John Smith, Sandra Snan, Boštjan Špetič, Aaron Spike, Kaushik Sridharan, Ralf Stephan, Dariusz Stojek, Patrick Storz, Martin Sucha, ~suv, Pat Suwalski, Adib Taraben, Parcly Taxel, Hugh Tebby, Jonas Termeau, David Turner, Andre Twupack, Aleksandar Urošević, Alex Valavanis, Joakim Verona, Lucas Vieites, Daniel Wagenaar, Liam P. White, Sebastian Wüst, Michael Wybrow, Gellule Xg, Daniel Yacob, Masatake Yamato, David Yip, Sushant A.A.
Copyright (C) 1999-2022 by Authors.
Inkscape is free software; you can redistribute it and/or modify it under the terms of the GPL version 2 or later.
2023-01-11 | 1.2.2 |