=head1 名稱 Inkscape - SVG (Scalable Vector Graphics) 編輯程式。 =head1 概要 C 選項: -?, --help --usage -V, --version -f, --file=檔名 -e, --export-png=檔名 -a, --export-area=x0:y0:x1:y1 -C, --export-area-canvas -D, --export-area-drawing --export-area-snap -i, --export-id=ID -j, --export-id-only -t, --export-use-hints -b, --export-background=顏色 -y, --export-background-opacity=數值 -d, --export-dpi=DPI -w, --export-width=寬度 -h, --export-height=高度 -P, --export-ps=檔名 -E, --export-eps=檔名 -A, --export-pdf=檔名 -T, --export-text-to-path --export-ignore-filters -l, --export-plain-svg=檔名 -p, --print=印表機 -I, --query-id=ID -X, --query-x -Y, --query-y -W, --query-width -H, --query-height -S, --query-all -x, --extension-directory --verb-list --verb=動詞-ID --select=物件-ID --shell -g, --with-gui -z, --without-gui --vacuum-defs --g-fatal-warnings =head1 描述 B 是一款B<可縮放式向量圖形 (SVG)> 格式繪圖檔的圖形介面編輯程式,類似 B、 B、B 等。Inkscape 的特點包括多功能形狀、貝茲曲線、手繪、多行文字、文字置 於路徑、透明混合處理、任意變形、漸層和圖樣填充節點編輯、支援多種匯出和匯入格式包含 PNG 和 PDF、群組、圖 層、即時仿製和其他許許多多的功能。使用介面讓設計者使用起來舒適且效率高,由於保持與 B 標準相容, 因此熟悉其他 GNOME 應用程式的使用者能迅速地學習並掌握程式的使用介面。 B 是 W3C 針對 2D 向量繪圖制定的標準 XML 格式。 SVG 可於圖畫中使用點、路徑和基本形狀來定義物件。 顏色、字型、邊框寬度...等等可作為「樣式」屬性指定給這些物件。由於 SVG 的目標是成為標準格式,也因為 SVG 檔為純文字檔/xml,所以有相當多的程式可能使用 SVG 檔並有多種用途。 B 使用 SVG 作為內定文件格式,並且以成為在開放原碼社群中完整相容 SVG 格式的繪圖程式為目標。 =head1 選項 =over 8 =item B<-?>, B<--help> 顯示說明訊息 =item B<-V>, B<--version> 顯示 Inkscape 版本和建立日期。 =item B<-a> I, B<--export-area>=I 匯出 PNG 時,以 SVG 使用者單位設定匯出範圍 (在 Inkscape SVG 中一般用匿名長度單位)。 預設是匯出整個文件畫布。原點 (0,0) 為左下角。 =item B<-C>, B<--export-area-canvas> 匯出 PNG、PDF、PS 和 EPS 時,匯出範圍是畫布 (頁面)。這是匯出 PNG、PDF 和 PS 的預設值,所以你不必指 定這個,除非你使用 --export-id 來匯出指定的物件。匯出 EPS 時,這就不是預設值;此外,對於 EPS,格式的 規格不允許外框邊界超出內容範圍。這表示當 --export-area-canvas 用於 EPS 匯出時,如果內容的外框邊界較 小則畫布的外框邊界會被向內裁剪成內容的外框邊界。 =item B<-D>, B<--export-area-drawing> 匯出 PNG、PDF、PS 和 EPS 時,匯出範圍為繪畫部份 (不是畫布),即文件全部物件的外框邊界 (如果使用 --export -id 則是匯出物件的外框邊界)。 使用這個選項,匯出的圖片會顯示文件中所有的可見物件,而不會有頁邊空白或裁剪。 這是 EPS 預設的匯出範圍。對於 PNG,這個可以和 --export-use-hints 結合使用。 =item B<--export-area-snap> 匯出 PNG 時,向外捉取匯出範圍為最接近的整數 SVG 使用者單位 (px) 數值。如果你使用預設的匯出解析度 90 dpi 且你的圖形是像素捉取來最小化平滑,這項改變允許你維持這種校正方式,即使你正要匯出的物件的外框邊界 (使用 --export-id 或 --export-area-drawing) 是本身而不是像素校正。 =item B<-b> I<顏色>, B<--export-background>=I<顏色> 匯出 PNG 的背景顏色。 可以是任何 SVG 的顏色字串,例如 "#ff007f" 或 "rgb(255, 0, 128)"。 如果沒有設定顏色,那麼就會使用在 Inkscape 文件選項對話窗所設定的頁面顏色 (儲存在 pagecolor= sodipodi:namedview 的屬性)。 =item B<-d> I, B<--export-dpi>=I 匯出 PNG 所使用的解析度。 當匯出為 PS、EPS 或 PDF (除非你指定 --export-ignore-filters 禁止點陣化) 時,也用於退回套用濾鏡 物件的點陣化過程。預設值為 90 dpi,其對應成 1 SVG 使用者單位 (px, 亦稱「使用者單位」) 匯出為 1 點 陣圖像素。 如果和 --export-use-hints 一起使用,這個數值會覆蓋 DPI 內定值。 =item B<-e> I<檔名>, B<--export-png>=I<檔名> 指定匯出 PNG 的檔名。 如果指定的檔名已經存在,則不會詢問便覆蓋原有的檔案。 =item B<-f> I<檔名>, B<--file>=I<檔名> 開啟指定的文件。 選項字串可以省略,即你可以不要輸入 -f 只列出檔名。 =item B<-g>, B<--with-gui> 試著使用圖形介面 (在 Unix 系統,即使沒有設定 $DISPLAY 也會使用 X server)。 =item B<-h> I<高度>, B<--export-height>=I<高度> 匯出點陣圖的高度,單位為像素。 這個數值會覆蓋 --export-dpi 設定值 (如果和 --export-use-hints 同時使用,會覆蓋 DPI 內定值)。 =item B<-i> I, B<--export-id>=I 匯出 PNG、PS、EPS 和 PDF 時, 你想要從文件中匯出的物件的 ID 屬性值;其他剩下的物件都不會被匯出。預設 情形下匯出的範圍是物件的外框邊界;你可用 --export-area (僅 PNG) 或 --export-area-canvas 覆蓋這 個值。 =item B<-j>, B<--export-id-only> 只把在 --export-id 給定 ID 的物件匯出成 PNG。其餘全部會被隱藏且不會顯示在匯出圖片中,即使這些物件和 匯出的物件重疊。 沒有 --export-id 會忽略這個選項。對匯出 PDF 來說,這是預設值,所以這選項不會有任何效果。 =item B<-l>, B<--export-plain-svg>=I<檔名> 匯出文件為普通的 SVG 格式,沒有 sodipodi: 或 inkscape: 名稱集也沒有 RDF 後設資料。 =item B<-x>, B<--extension-directory> 列出 Inkscape 目前設定為使用且存在的擴充模組目錄。這選項用於外部擴充模組以使用相同設定作為原始的 Inkscape 安裝。 =item B<--verb-list> 依照 ID 列出在 Inkscape 中全部可用的動詞。這 ID 可用在定義按鍵對應或選單中。也可以和 --verb 命令 列選項一起使用。 =item B<--verb>=I<動詞-ID>, B<--select>=I<物件-ID> 這兩個選項一起使用可由命令列上提供一些 Inkscape 的基本腳本。於命令列上要執行多少次都可以,而且可在每一 個指定的文件上執行。 其 --verb 指令會執行某個指定的動詞,就像從選單或按鈕上呼叫一樣。如果執行的是部份動詞便會跳出對話窗。 使用 --verb-list 命令列選項可取得可用動詞 ID 的清單。 而 --select 指令會選取被指定 ID 的物件。此選項允許對選取物件執行各種動詞。使用 --verb=EditDeselect 可移除所有選取的項目。可用的物件 ID 取決於文件指定載入哪些物件。 =item B<-p> I<印表機>, B<--print>=I<印表機> 用指定的印表機來列印文件,使用 `lpr -P PRINTER' 來指定印表機。 用 `| 指令' 來指定一個不同的指令到管線中,或用 `> 檔名' 來寫入 PostScript 輸出到檔案而不是印表機。 記得加上適當的引號,例如 inkscape --print='| ps2pdf - 我的文件.pdf' 我的文件.svg =item B<-t>, B<--export-use-hints> 使用匯出檔名和儲存在匯出物件中的 DPI 內定值 (只能和 --export-id 一起使用)。 當你從 Inkscape 內部匯出選取範圍時會自動設定為這些內定值。 例如,你用 Inkscape 圖形介面從 document.svg 裡將 id="path231" 的形狀以 300 dpi 匯出成 /home/me/shape.png ,並儲存文件,之後你便可簡單地用下面的指令以相同的解析度重新匯出相同的檔案 inkscape -i path231 -t 文件.svg 如果你將這個選項和 --export-dpi、--export-width 或 --export-height 一起使用,那麼 DPI 內定值會被忽略並使用命令列上的數值。 如果你將這個選項和 --export-png 一起使用,那麼檔名內定值會被忽略並使用命令列上的檔名。 =item B<-w> I<寬度>, B<--export-width>=I<寬度> 匯出點陣圖的寬度,單位為像素。 這個數值會覆蓋 --export-dpi 設定值 (如果和 --export-use-hints 同時使用則會覆蓋 DPI 內定值)。 =item B<-y> I<數值>, B<--export-background-opacity>=I<數值> 匯出 PNG 背景的不透明度。 這個數值可以是 0.0 到 1.0 之間的數值 (0.0 表示完全透明,1.0 表示完全不透明) 或者大於 1 到 255 以內的數值 (255 代表完全不透明)。 如果沒有設定數值且沒有使用 -b 選項,那麼就會使用在 Inkscape 文件選項對話窗所設定的頁面不透明度 (儲存 在 inkscape:pageopacity= sodipodi:namedview 的屬性)。 如果沒有設定數值但有使用 -b 選項,那麼會使用 255 (完全不透明)。 =item B<-P> I<檔名>, B<--export-ps>=I<檔名> 將文件匯出成 PostScript 格式。注意 PostScript 不支援透明,所以原本 SVG 中的透明物件都會自動轉成點 陣圖。使用的字型成子集合並嵌入。預設的匯出範圍是畫布;你可以用 --export-area-drawing 將匯出範圍設定 成繪圖部份。你可指定 --export-id 來匯出單一物件 (其餘全部隱藏); 假如那樣的話匯出範圍就是物件的外框邊 界,但可用 --export-area-canvas 設定成畫布。 =item B<-E> I<檔名>, B<--export-eps>=I<檔名> 將文件匯出成封裝的 PostScript 格式。注意 PostScript 不支援透明,所以原始 SVG 中的透明物件都會自動轉成點 陣圖。使用的字型成子集合並嵌入。預設的匯出範圍是繪圖部份;你可設定成畫布,不過會看見 --export-area-canvas 的適用限制。你可以指定 --export-id 來匯出單一物件 (其餘全部隱藏)。 =item B<-A> I<檔名>, B<--export-pdf>=I<檔名> 將文件匯出成 PDF 格式。這種格式會保存原始 SVG 中的透明度。使用的字型成子集合並嵌入。 預設的匯出範圍是畫 布;你可以用 --export-area-drawing 將匯出範圍設定成繪圖部份。你可以指定 --export-id 來匯出單一物 件 (其餘全部隱藏); 假如那樣的話匯出範圍就是物件的外框邊界,但可用 --export-area-canvas 設定成畫布。 =item B<-T>, B<--export-text-to-path> 匯出時將文字物件轉換成路徑,匯出成 PS、EPS 和 PDF 時適用。 =item B<--export-ignore-filters> 將套用濾鏡的物件 (例如這些物件套用模糊) 匯出成向量屬性,忽略濾鏡 (匯出 PS、EPS 和PDF 時)。 在預設情況下,全部套用濾鏡的物件會以 --export-dpi (預設為 90 dpi) 的解析度轉成點陣圖以維持外觀。 =item B<-I>, B<--query-id> 設定要查詢尺寸的物件 ID。如果沒有設定,查詢選項會回傳繪圖部份的尺寸 (即文件的全部物件),而不是頁面或 檢視外框。 =item B<-X>, B<--query-x> 查詢繪圖部份的 X 坐標或用 --query-id 所指定物件的 X 坐標。回傳值的單位是 px (SVG 使用者單位)。 =item B<-Y>, B<--query-y> 查詢繪圖部份的 Y 坐標或用 --query-id 所指定物件的 Y 坐標。回傳值的單位是 px (SVG 使用者單位)。 =item B<-W>, B<--query-width> 查詢繪圖部份的寬度或用 --query-id 所指定物件的寬度。回傳值的單位是 px (SVG 使用者單位)。 =item B<-H>, B<--query-height> 查詢繪圖部份的高度或用 --query-id 所指定物件的高度。回傳值的單位是 px (SVG 使用者單位)。 =item B<-S>, B<--query-all> 列印一份 SVG 文件中已定義 ID 的所有物件以逗點區隔的清單,與 x、y、寬度和高度數值同樣。 =item B<--shell> 使用這個參數,Inkscape 會進入互動式命令列 shell 模式。在這種模式中,你在提示符上輸入指令然後 Inkscape 執行,而不必對每一道指令執行新的 Inkscape。這個功能對腳本和伺服器用途極為有用:它沒有加入任何新功能,但可 讓任何多次呼叫 Inkscape 執行命令列任務 (比如匯出或轉換) 腳本的速度更快、需要更少的記憶體。 在 shell 模式中的每一道指令必須是完全正確的 Inkscape 命令列但不含 Inkscape 程式名稱, 例如 "檔案.svg --export-pdf=檔案.pdf"。 =item B<--vacuum-defs> 從 SVG 檔案的 defs 段落中移除所有未使用的項目。如果這個選項與 --export-plain-svg 一起調用, 只有匯出的檔案會有作用。如果單獨使用會適當地修飾所指定的檔案。 =item B<-z>, B<--without-gui> 不要開啟圖形介面 (在 Unix 系統,不使用 X server);只從終端機處理檔案。 這被假定為 -p、-e、-l 和 --vacuum-defs 選項。 =item B<--g-fatal-warnings> 這標準 GTK 選項會強制出現任何警告時,使 Inkscape 中止 (對除錯很有用)。 =item B<--usage> 顯示簡單的使用訊息。 =back =head1 組態設定 主要的組態設定檔放在 ~/.config/Inkscape/preferences.xml; 組態設定檔儲存各種設定值,可在 Inkscape 中變更 (大部份在 Inkscape 偏好設定對話窗)。也可以在那裡的子目錄中放置你自己的組態設定檔: B<$HOME>/.config/Inkscape/extensions/ - 擴充模組。 B<$HOME>/.config/Inkscape/icons/ - 圖示。 B<$HOME>/.config/Inkscape/keys/ - 鍵盤對應。 B<$HOME>/.config/Inkscape/templates/ - 新增檔案的範本。 =head1 診斷 程式執行成功時會回傳零或者執行失敗時回傳不為零的值。 各種錯誤訊息和警告可列印到 STDERR 或 STDOUT。如果程式怪異地產生一個特殊的 SVG 檔案或不正常關閉,它是 查看這次輸出的有用線索。 =head1 範例 雖然 B 很明顯地主要是作為一款圖形介面的應用程式,但同樣能在命令列上處理 SVG。 用圖形介面開啟一個 SVG 檔案: inkscape 檔名.svg 從命令列上列印一個 SVG 檔案: inkscape 檔名.svg -p '| lpr' 將一個 SVG 檔以預設的解析度 90dpi 匯出成 PNG (1 SVG 使用者單位轉變成 1 點陣圖像素): inkscape 檔名.svg --export-png=檔名.png 相同,但強制 PNG 檔案為 600x400 像素: inkscape 檔名.svg --export-png=檔名.png -w600 -h400 相同,但匯出繪圖部份 (全部物件的外框邊界),不是頁面: inkscape 檔名.svg --export-png=檔名.png --export-area-drawing 將 id="text1555" 物件匯出成 PNG,當從圖形介面匯出時,使用輸出檔名和上次使用的解析度: inkscape 檔名.svg --export-id=text1555 --export-use-hints 相同,但使用預設 90 dpi 解析度,指定檔名,並且向外捉取匯出範圍為最接近整個 SVG 使用者單位的值 (維持物件的像素校正,因此最小平滑化): inkscape 檔名.svg --export-id=text1555 --export-png=文字.png --export-snap-area 將一個 Inkscape SVG 文件轉換成普通的 SVG: inkscape 檔名1.svg --export-plain-svg=檔名2.svg 將 SVG 文件轉成 EPS,全部的文字轉換成路徑: inkscape 檔名.svg --export-eps=檔名.eps --export-text-to-path 查詢 id="text1555" 物件的寬度: inkscape 檔名.svg --query-width --query-id text1555 再製 id="path1555" 的物件,將再製物件旋轉 90 度,儲存 SVG 並離開: inkscape 檔名.svg --select=path1555 --verb=EditDuplicate --verb=ObjectRotate90 --verb=FileSave --verb=FileClose =head1 環境 B 可取得預設主機和顯示編號。 B 可設定暫存檔使用的預設目錄的路徑。目錄必須存在。 =head1 主題 可從目錄 B<$HOME>/.inkscape/icons/ 載入不同的圖示組來替代預設的B<$PREFIX>/share/inkscape/icons/icons.svg 檔案。 圖示按照名稱載入 (例如 I),如果沒有找到符合名稱的圖示,那麼就會從 I 載入。 如果圖示不從這些位置載入,就會退回使用預設的系統位置。 藉由 SVG ID 和比對圖示名稱從 SVG 檔中搜尋並載入需要的圖示。(例如,要從一個檔案載入 "fill_none" 圖示, 外框邊界會尋找 SVG ID "fill_none" 將其作為圖示,不管是來自 I 或 I。) =head1 其他資訊 搜尋 B 資訊的最佳地點是在 http://www.inkscape.org/。 網站上有新聞、說明文件、教學、範例、郵件論壇存檔、最新發佈的程式版本、程式錯誤和功能需求資料庫、論壇...等等。 =head1 參見 potrace, cairo, rsvg(1), batik, ghostscript, pstoedit. SVG 相容測試工具: http://www.w3.org/Graphics/SVG/Test/ SVG 驗證工具: http://jiggles.w3.org/svgvalidator/ I I L I I L I I L I I L =head1 GUI 重點 閱讀在 說明 > 指導手冊 中的教學來學習 Inkscape 圖形介面的操作。 除了 SVG 外,Inkscape 可以匯入 (檔案 > 匯入) 多數的點陣圖格式 (PNG、BMP、JPG、XPM、GIF 等)、 普通純文字檔 (需要 Perl)、PS 和 EPS (需要 Ghostscript)、PDF 和 AI 格式 (AI 版本 9.0 或更新)。 Inkscape 可匯出 32-位元 PNG 圖片 (檔案 > 匯出),也可經由 檔案 > 另存 儲存成 AI、PS、EPS、PDF、 DXF 及一些其他格式。 Inkscape 能用繪圖板畫筆的壓力及傾斜感應來變化寬度、角度和一些工具的作用力,包括美工筆。 Inkscape 包含一個嵌入的 Potrace 點陣圖描繪引擎 (http://potrace.sf.net) 圖形介面前端。 Inkscape 能使用外部腳本 (stdin-to-stdout 過濾器),腳本會以擴充功能選單上的命令方式呈現。腳本可以 有設定各種參數的圖形介面對話窗,而且能透過命令列取得所選物件的 ID。Inkscape 提供各式各樣用 Python 寫成的特效模組。 =head1 按鍵對應 查看 doc/keys.html 以取得鍵盤和滑鼠快捷鍵的完整清單,或在說明選單中使用按鍵和滑鼠指令。 =head1 程式錯誤 已經知道許多程式錯誤;請到網站 (inkscape.org) 檢閱已回報的錯誤並回報新發現的問題。也請看看你使用版 本的發佈說明中已知問題段落內容 (檔案「NEWS」)。 =head1 作者 這個程式碼庫的存在要歸功於各個時期的許多貢獻者。下列的名單當然不完整,但用來正式向齊心致力於這個程式的 許多人致謝: [% INCLUDE "AUTHORS" %] 這份使用說明由 Bryce Harrington Ebrycehar@bryceharrington.comE 彙集整合。 =head1 歷史 後來變成 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 已經扮演一個重要的角色,使開放原始碼 帶給廣大愛好者更多的視覺饗宴。 =head1 著作權和許可證 B<著作權 (C)> 1999-2008 作者所有。 B 是自由軟體;你可以在遵守 GPL 許可證情形下重新發佈或修改它。 =for comment $Date$