下面是關於Debian 系統上可用的格式轉化工具及其相關提示的資訊。
基於標準的工具,是非常好用的,但支援的專有資料格式有限.
如下是文字資料轉換工具。
表格 11.1. 文字資料轉化工具列表
軟體包 | 流行度 | 大小 | 關鍵詞 | 說明 |
---|---|---|---|---|
libc6
|
V:930, I:999 | 12977 | 字元集 | 使用 iconv (1) 的不同語言環境(locale)之間的文字編碼轉換器 (基礎的) |
recode
|
V:3, I:22 | 603 | 字元集+換行 | 不同語言環境(locale)之間的文字編碼轉換器(多功能的,更多別名和特性) |
konwert
|
V:1, I:50 | 134 | 字元集 | 不同語言環境(locale)之間的文字編碼轉換器(高檔的) |
nkf
|
V:0, I:10 | 360 | 字元集 | 日語字元集翻譯 |
tcs
|
V:0, I:0 | 518 | 字元集 | 字元集翻譯 |
unaccent
|
V:0, I:0 | 35 | 字元集 | 代替重音字元,使用和它們相當的非重音字元 |
tofrodos
|
V:1, I:21 | 51 | 換行 | 在 DOS 和 Unix 之間的文字格式轉換: fromdos (1) 和
todos (1) |
macutils
|
V:0, I:0 | 312 | 換行 | 在 Macintosh 和 Unix 之間的文字格式轉換: frommac (1) 和
tomac (1) |
![]() |
提示 |
---|---|
|
你能夠通過如下的指令用 iconv
(1) 來轉換文字檔案的編碼。
$ iconv -f encoding1 -t encoding2 input.txt >output.txt
編碼值是大小寫不敏感的,且會在匹配時忽略“-
”和“_
”。可以使用“iconv
-l
”指令檢查支援的編碼。
表格 11.2. 編碼值和用法的列表
編碼值 | 用法 |
---|---|
ASCII | 美國資訊交換標準程式碼,7位程式碼不帶重音符號 |
UTF-8 | 用於所有現代作業系統的多語言標準 |
ISO-8859-1 | 舊的西歐語言標準,ASCII + 重音符號 |
ISO-8859-2 | 舊的東歐語言標準,ASCII + 重音符號 |
ISO-8859-15 | 舊的帶有歐元符號的西歐語言標準(ISO-8859-1) |
CP850 | code page 850,用於西歐語言的微軟 DOS 的帶有圖形的字元,ISO-8859-1 的變體 |
CP932 | code page 932, 日語 Microsoft Windows 的 Shift-JIS 變體 |
CP936 | code page 936,用於簡體中文的微軟作業系統風格的 GB2312,GBK 或者 GB18030 的變體 |
CP949 | code page 949,用於韓語的微軟作業系統風格的 EUC-KR 或者 Unified Hangul Code 的變體 |
CP950 | code page 950,用於繁體中文的微軟作業系統風格的 Big5 的變體 |
CP1251 | code page 1251,用於西裡爾字母的微軟作業系統風格的編碼 |
CP1252 | code page 1252,用於西歐語言的微軟作業系統風格的 ISO-8859-15 的變體 |
KOI8-R | 用於西裡爾字母的舊俄語 UNIX 標準 |
ISO-2022-JP | 日文郵件的標準編碼,只使用 7 位位元組 |
eucJP | 老的日文 UNIX 標準的 8 位位元組,和 Shift-JIS 完全不同 |
Shift-JIS | 日文 JIS X 0208 附錄 1 標準 (參見 CP932) |
![]() |
注意 |
---|---|
一些編碼只支援資料轉換,它不能作為語言環境的值 (節 8.1, “語言環境”)。 |
像 ASCII 和 ISO-8859 這樣適用於單位元組的字元集,字元編碼和字元集幾乎指的是同一件事情。
對於多字元的字元集,比如說,用於日文的 JIS X 0213,或用於差不多所有語言的 Universal Character Set (UCS, Unicode, ISO-10646-1) , 有多種編碼方案來序列化它們的位元組資料。
Unicode 的 UTF-8、UTF-16/UCS-2 和 UTF-32/UCS-4 編碼
對於以上這些,字元集和字元編碼之間有著明顯的區別。
對某些計算機廠家而言,code page 是作為字元編碼表的同義詞來使用。
![]() |
注意 |
---|---|
請注意,大部分編碼系統共享 ASCII 的 7 位字元的同樣編碼,但也有一些列外。如果你從通常所說的 shift-JIS 編碼格式,轉化老的日文 C
語言程式和 URL 資料,到 UTF-8 格式,你需要使用 " |
![]() |
提示 |
---|---|
|
你能夠通過如下指令用 iconv
(1) 來檢查一個文字檔案是不是用 UTF-8 編碼的。
$ iconv -f utf8 -t utf8 input.txt >/dev/null || echo "non-UTF-8 found"
![]() |
提示 |
---|---|
在上面的例子中使用 " |
這裡是一個示例腳步,在同一目錄下,將在老的作業系統系統下建立的檔名編碼,轉換為現代 UTF-8.
#!/bin/sh ENCDN=iso-8859-1 for x in *; do mv "$x" "$(echo "$x" | iconv -f $ENCDN -t utf-8)" done
"$ENCDN
" 變數定義了在老的作業系統下,檔名使用的原始編碼,見 表格 11.2, “編碼值和用法的列表”.
對於更加複雜的情況,請使用適當的編碼作為 mount
(8) 的選項(參見 節 8.1.3, “檔名編碼”) 來掛載包含有這樣檔名的檔案系統(比如說,磁碟上的一個分割槽),使用
"cp -a
" 指令來拷貝它的整個內容到另外一個使用 UTF-8 掛載的檔案系統上。
文字檔案的格式,特別是行尾(換行符)編碼,有平臺獨立性。
表格 11.3. 不同平臺的換行符樣式列表
平臺 | 換行符編碼 | 控制碼 | 十進位制 | 16 進位制 |
---|---|---|---|---|
Debian (unix) | LF | ^J |
10 | 0A |
MSDOS 和 Windows | CR-LF | ^M^J |
13 10 | 0D 0A |
蘋果的 Macintosh | CR | ^M |
13 | 0D |
換行符轉換程式, fromdos
(1), todos
(1),
frommac
(1), 和 tomac
(1), 是相當方便.
recode
(1) 也是有用的。
![]() |
注意 |
---|---|
在 Debian 系統上的一些資料,如 |
![]() |
注意 |
---|---|
大部分編輯器 (比如: |
![]() |
提示 |
---|---|
對於混合 MSDOS 和 Unix 式樣的檔案,統一到 MSDOS 換行符式樣,使用 " |
這裡有一些轉換 TAB 程式碼的專業工具。
表格 11.4. bsdmainutils
和 coreutils
包中的用於轉換 TAB
的指令列表
功能 | bsdmainutils |
coreutils |
---|---|---|
把製表符擴充套件成空格 | "col -x " |
expand |
不把空格擴充套件成製表符 | "col -h " |
unexpand |
indent
包中的 indent
(1) 指令能夠重新格式化 C
程式中的空格。
例如 vim
和 emacs
這樣的編輯軟體可以被用來擴充套件 TAB。就拿
vim
來說,你能夠按順序輸入 ":set expandtab
" 和
":%retab
" 指令來擴充套件 TAB。你也可以按順序輸入 :%set
noexpandtab
" 和 ":%retab
" 指令來複原。
像 vim
這樣的現代智慧編輯器軟體是相當聰明的並且能夠處理任何編碼系統以及任何檔案格式。你應該在支援 UTF-8
編碼的控制檯上並在 UTF-8 環境下使用這些編輯器來獲得最好的相容性。
以 latin1(iso-8859-1)編碼儲存的舊西歐語言的 Unix
文字檔案,“u-file.txt
”,能通過如下所示的用 vim
輕易的編輯。
$ vim u-file.txt
這是可能的因為 vim
的檔案編碼自動檢測機制先假定檔案是 UTF-8 編碼,如果失敗了,則假定它是 latin1
編碼。
以 latin2(iso-8859-2) 編碼儲存的舊波蘭語的 Unix
文字檔案,“pu-file.txt
”,能通過如下所示的用 vim
編輯。
$ vim '+e ++enc=latin2 pu-file.txt'
以 eucJP 編碼儲存的舊日語的 Unix 文字檔案,"ju-file.txt
",能通過如下所示的用
vim
編輯。
$ vim '+e ++enc=eucJP ju-file.txt'
以所謂的 shift-JIS 編碼 (更確切的說法是:CP932) 儲存的舊日語 MS-Windows
文字檔案,"jw-file.txt
",能通過如下所示的用 vim
編輯。
$ vim '+e ++enc=CP932 ++ff=dos jw-file.txt'
當一個檔案用 vim 開啟的時候帶有 "++enc
" 和 "++ff
"
選項,在 Vim 指令列輸入 ":w
" 指令會以原格式儲存檔案並且會覆蓋原檔案。你也可以在 Vim
指令列指定儲存檔名及其格式,例如,":w ++enc=utf8 new.txt
"。
請查閱 vim
線上幫助中的 mbyte.txt,"多位元組文字支援"和表格 11.2, “編碼值和用法的列表”來獲得 "++enc
" 使用的本地值的資訊。
emacs
家族的程式能夠實現同樣的功能。
如下所示讀入 web 頁面並把它轉化成文字檔案。當從 Web 中拷貝配置或者是在 web 頁面中應用類似
grep
(1) 的基礎 Unix 文字工具時,以下指令是非常有用的。
$ w3m -dump http://www.remote-site.com/help-info.html >textfile
同樣,你可以使用如下所示的工具從其他格式提取純文字資料。
表格 11.5. 用於提取純文字資料的工具列表
軟體包 | 流行度 | 大小 | 關鍵詞 | 功能 |
---|---|---|---|---|
w3m
|
V:14, I:190 | 2828 | html→text | 用 "w3m -dump " 指令把 HTML 轉化為文字的轉換器 |
html2text
|
V:2, I:29 | 274 | html→text | 高階的 HTML 到文字檔案的轉換器 (ISO8859-1) |
lynx
|
V:12, I:124 | 1935 | html→text | 用 "lynx -dump " 指令把 HTML 轉化為文字的轉化器 |
elinks
|
V:4, I:24 | 1742 | html→text | 用 "elinks -dump " 指令把 HTML 轉化為文字的轉換器 |
links
|
V:4, I:33 | 2302 | html→text | 用 "links -dump " 指令把 HTML 轉化為文字的轉換器 |
links2
|
V:1, I:12 | 5479 | html→text | 用 "links2 -dump " 指令把 HTML 轉化為文字的轉換器 |
catdoc
|
V:12, I:124 | 686 | MSWord→text,TeX | 轉化 MSWord 檔案到純文字或 TeX檔案 |
antiword
|
V:1, I:8 | 589 | MSWord→text,ps | 轉化 MSWord 檔案到純文字或 ps 檔案 |
pstotext
|
V:0, I:1 | 122 | ps/pdf→text | 從 PostScript 和 PDF 檔案裡匯出文字 |
unhtml
|
V:0, I:0 | 40 | html→text | 從一個 HTML 檔案裡面刪除標記標籤 |
odt2txt
|
V:1, I:12 | 60 | odt→text | 從開放文件格式到文字格式的轉化器 |
你可以通過如下所示的來高亮並格式化純文字資料。
表格 11.6. 高亮純文字資料的工具列表
軟體包 | 流行度 | 大小 | 關鍵詞 | 說明 |
---|---|---|---|---|
vim-runtime
|
V:19, I:421 | 36201 | 高亮 | 用 ":source $VIMRUNTIME/syntax/html.vim " Vim 巨集指令轉化原始碼到
HTML |
cxref
|
V:0, I:0 | 1190 | c→html | 從 C 程式到 latex 和 HTML 的轉換器(C語言) |
src2tex
|
V:0, I:0 | 622 | 高亮 | 轉換許多原始碼到 TeX(C語言) |
source-highlight
|
V:0, I:6 | 1989 | 高亮 | 轉換原始碼到帶有高亮顯示的 HTML, XHTML, LaTeX, Texinfo, ANSI 顏色轉義序列和 DocBook 檔案 (C++) |
highlight
|
V:0, I:7 | 1084 | 高亮 | 轉化許多原始碼到帶有高亮顯示的 HTML, XHTML, RTF, LaTeX, TeX or XSL-FO 檔案。(C++) |
grc
|
V:0, I:4 | 208 | text→有顏色的 | 用於任何文字的通用顏色生成器 (Python) |
pandoc
|
V:9, I:45 | 168398 | text→any | 通用標記轉化器 (Haskell) |
python3-docutils
|
V:13, I:49 | 1777 | text→any | 重構文字文件到 XML (Python) |
markdown
|
V:0, I:10 | 58 | text→html | Markdown 文字文件到 (X)HTML (Perl) |
asciidoctor
|
V:0, I:8 | 97 | text→any | AsciiDoc 文字文件格式化到 XML/HTML (Ruby) |
python3-sphinx
|
V:6, I:22 | 2791 | text→any | 基於文件釋出系統 (Python)重構文字 |
hugo
|
V:0, I:5 | 52016 | text→html | 基於 Markdown 的靜態站點發布系統(Go) |
擴充套件標記語言 Extensible Markup Language (XML) 是一種標記語言,用於含有結構化資訊的文件。
在 XML.COM 檢視介紹資訊.
XML 文字看起來有些像 HTML.它能夠使我們管理一個文件的多個格式。一個簡單的 XML
系統是 docbook-xsl
軟體包,在這裡使用。
每一個 XML 檔案使用下面的標準 XML 宣告開始。
<?xml version="1.0" encoding="UTF-8"?>
XML 元素的基本語法是按下面的方式標記。
<name attribute="value">content</name>
內容為空的 XML 元素,使用下面的短格式標記。
<name attribute="value" />
上面列子中的 "attribute="value"
" 是可選的。
XML 裡面的註釋部分,是按下面的方式標記。
<!-- comment -->
不同於增加標記,XML 至少要求使用預定義實體裡的內容來轉化下列字元。
![]() |
注意 |
---|---|
“ |
![]() |
注意 |
---|---|
當 SGML 式樣的使用者定義實體,比如 " |
![]() |
注意 |
---|---|
只要 XML 標記是一致使用某一標籤名集合(一些資料作為內容或屬性值),使用 Extensible Stylesheet Language Transformations (XSLT) 來轉換到另外一個 XML,是一個微不足道的任務。 |
有許多工具可以用於處理 XML 檔案,比如說: 可擴充套件樣式表語言 Extensible Stylesheet Language (XSL).
一旦你建立了一個好的成形的 XML 檔案,基本上來講,你就可以使用 可擴充套件樣式表語言轉換 Extensible Stylesheet Language Transformations (XSLT),將其轉換成任何格式。
格式化物件的可擴充套件樣式表語言 Extensible
Stylesheet Language for Formatting Objects (XSL-FO)
是用來作為格式化的解決方案. fop
軟體包比 Debian main
檔案庫要新,因為它依賴 Java 程式語言. LaTeX
程式碼通常是從 XML 使用 XSLT 生成,LaTe圖形化界面是用來建立 DVI, PostScript 和 PDF 這類可列印的檔案。
表格 11.8. XML 工具列表
軟體包 | 流行度 | 大小 | 關鍵詞 | 說明 |
---|---|---|---|---|
docbook-xml
|
I:362 | 2134 | xml | DocBook 的 XML 文件型別定義(DTD) |
docbook-xsl
|
V:10, I:137 | 14870 | xml/xslt | 使用 XSLT 將 DocBook XML 處理成各種輸出格式的 XSL 樣式表 |
xsltproc
|
V:16, I:87 | 162 | xslt | XSLT 指令列處理器 (XML→ XML, HTML, 純文字,等等) |
xmlto
|
V:1, I:17 | 130 | xml/xslt | 使用 XSLT 將 XML 轉換到任意格式的轉換器 |
fop
|
V:0, I:15 | 285 | xml/xsl-fo | 轉換 Docbook XML 檔案到 PDF |
dblatex
|
V:3, I:12 | 4643 | xml/xslt | 使用 XSLT 將 Docbook 檔案轉換為 DVI, PostScript, PDF 文件 |
dbtoepub
|
V:0, I:0 | 37 | xml/xslt | DocBook XML 到 .epub 轉換 |
由於 XML 是 標準通用標記語言 Standard Generalized Markup Language (SGML)的一個子集,用於處理 SGML 的擴充套件工具,也能夠處理 XML,比如說 文件式樣語言和規範語言 Document Style Semantics and Specification Language (DSSSL).
表格 11.9. DSSSL 工具列表
軟體包 | 流行度 | 大小 | 關鍵詞 | 說明 |
---|---|---|---|---|
openjade
|
V:1, I:30 | 1019 | dsssl | ISO/IEC 10179:1996 標準 DSSSL 處理器 (最新的) |
docbook-dsssl
|
V:0, I:16 | 2605 | xml/dsssl | 使用 DSSSL 處理 DocBook XML 到各種輸出格式的 DSSSL 樣式表 |
docbook-utils
|
V:0, I:12 | 287 | xml/dsssl | DocBook 檔案的工具包,包括使用 DSSSL 的轉換成其它格式 (HTML, RTF, PS, man, PDF)的
docbook2* 指令 |
sgml2x
|
V:0, I:0 | 90 | SGML/dsssl | SGML 和 XML 使用 DSSSL 樣式表的轉換器 |
使用下面的方法,你能夠從其它格式提取 HTML 或 XML 資料。
表格 11.10. XML 資料提取工具列表
軟體包 | 流行度 | 大小 | 關鍵詞 | 說明 |
---|---|---|---|---|
man2html
|
V:0, I:2 | 138 | man 手冊頁→html | 從 man 手冊頁到 HTML 的轉換器(支援 CGI) |
doclifter
|
V:0, I:0 | 451 | troff→xml | troff 到 DocBook XML 的轉換器 |
texi2html
|
V:0, I:6 | 1833 | texi→html | 從 Texinfo 到 HTML 的轉換器 |
info2www
|
V:1, I:2 | 76 | info→html | 從 GNU info 到 HTML 的轉換器 (支援 CGI) |
wv
|
V:0, I:5 | 741 | MSWord→任何格式 | 從微軟 Word 格式到 HTML, LaTeX, 等格式的檔案轉換器。 |
unrtf
|
V:0, I:3 | 148 | rtf→html | 從 RTF 到 HTML 等的轉換器 |
ooo2dbk
|
V:0, I:0 | 217 | sxw→xml | 從 OpenOffice.org SXW 文件到 DocBook XML 的轉換器 |
wp2x
|
V:0, I:0 | 202 | WordPerfect→任意格式 | WordPerfect 5.0 和 5.1 檔案到 TeX, LaTeX, troff, GML 和 HTML |
對於非 XML 的 HTML 檔案,你能夠轉換它們為 XHTML,XHTML 是一個相當成型的 XML 例項。XHTML 能夠被 XML 工具處理.
XML 檔案的語法和在它們中發現的 URL 的完整性,能夠被檢查。
表格 11.11. XML 美化列印工具列表
軟體包 | 流行度 | 大小 | 功能 | 說明 |
---|---|---|---|---|
libxml2-utils
|
V:18, I:209 | 180 | xml↔html↔xhtml | 使用 xmllint (1) 的 XML 指令列工具 (語法檢查,重新格式化,梳理, …) |
tidy
|
V:1, I:11 | 84 | xml↔html↔xhtml | HTML 語法檢查和重新格式化 |
weblint-perl
|
V:0, I:1 | 32 | 檢查 | 用於 HTML 的小巧的語法檢查器 |
linklint
|
V:0, I:0 | 344 | 連結檢查 | 快速的網站維護工具及連結檢查器 |
一旦適當的 XML 生成,基於標記的內容等,你能夠使用 XSLT 技術提取資料。
Unix上的 troff 程式最初是由 AT&T 公司開發的,可以被用做簡單排版。現在被用來建立手冊頁。
Donald Knuth 發明的 Tex 是非常強大的排版工具也是實際上的標準。最初是由 Leslie Lamport 開發的 LaTex 使得使用者可以更為方便的利用 Tex 的強大功能。
傳統意義上,roff 是 Unix 上主要的文字處理系統。參見
roff
(7), groff
(7),
groff
(1), grotty
(1),
troff
(1), groff_mdoc
(7),
groff_man
(7), groff_ms
(7),
groff_me
(7), groff_mm
(7) 和
"info groff
"。
安裝好 groff
軟體包以後,你輸入 "-me
" 巨集指令就能看到一份不錯的指導手冊,它的位置是
"/usr/share/doc/groff/
"。
![]() |
提示 |
---|---|
" |
![]() |
提示 |
---|---|
如果想要移除 |
Tex Live 軟體提供了全部的
Te圖形化界面。texlive
元包只是 TeX
Live 中的一部分,但是它足夠應付日常任務。
tex
(1)
latex
(1)
texdoc
(1)
texdoctk
(1)
"The TeXbook", 作者 Donald E. Knuth, (Addison-Wesley)
"LaTeX - A Document Preparation System", 作者 Leslie Lamport, (Addison-Wesley)
"The LaTeX Companion", 作者 Goossens, Mittelbach, Samarin, (Addison-Wesley)
這是最強大的排版環境。許多 SGML
處理器把它作為其後臺字處理工具。lyx
軟體包提供的 Lyx
和 texmacs
軟體包提供的 GNU
TeXmacs 都為 LaTeX 提供了非常不錯的所見即所得的編輯環境,然而許多人使用 Emacs 和 Vim 作為其原始碼編輯器。
有許多線上資源存在。
TEX Live Guide - TEX Live 2007
("/usr/share/doc/texlive-doc-base/english/texlive-en/live.html
")
(texlive-doc-base
包)
當文件變得更大時,TeX 有時會出錯。你必須在 "/etc/texmf/texmf.cnf
" 中增加 pool
的大小 (更確切的說話是編輯是 "/etc/texmf/texmf.d/95NonPath
" 並且執行
update-texmf
(8)) 來修復此問題。
![]() |
注意 |
---|---|
"The TeXbook" 的 TeX 原始碼可以從 http://tug.ctan.org/tex-archive/systems/knuth/dist/tex/texbook.tex
上下載。此檔案包含了絕大多數所需的巨集指令。我聽說把文件中的第7到第10行註釋了並且新增 " |
在 Debian 系統中,可列印的資料是 PostScript 格式的。對於非 PostScript 印表機,通用 Unix 列印系統 (CUPS) 使用 Ghostscript 作為其後臺光柵處理程式。
處理可印刷的資料的核心是 Ghostscript PostScript 直譯器,它能夠生成光柵影象。
表格 11.14. Ghostscript PostScript 直譯器列表
軟體包 | 流行度 | 大小 | 說明 |
---|---|---|---|
ghostscript
|
V:184, I:569 | 195 | GPL Ghostscript PostScript/PDF 直譯器 |
ghostscript-x
|
V:5, I:53 | 87 | GPL Ghostscript PostScript/PDF 直譯器-X 顯示支援 |
libpoppler102
|
V:42, I:294 | 4274 | PDF 渲染庫 (xpdf PDF 瀏覽器的分支) |
libpoppler-glib8
|
V:251, I:460 | 484 | PDF 渲染庫(基於 Glib 的共享庫) |
poppler-data
|
V:83, I:597 | 13089 | 用於 PDF 渲染庫的 CMaps (CJK 支援:Adobe-*) |
![]() |
提示 |
---|---|
" |
你能夠使用 Ghostscript 中的 gs
(1) 來合併兩個 PostScript(PS) 或可移植文件格式(PDF) 檔案。
$ gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=bla.ps -f foo1.ps foo2.ps $ gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=bla.pdf -f foo1.pdf foo2.pdf
![]() |
提示 |
---|---|
對於指令列來說, |
如下是處理可印刷資料的工具列表。
表格 11.15. 處理可印刷資料的工具列表
軟體包 | 流行度 | 大小 | 關鍵詞 | 說明 |
---|---|---|---|---|
poppler-utils
|
V:172, I:439 | 717 | pdf→ps,text,… | PDF 工具:pdftops , pdfinfo ,
pdfimages , pdftotext ,
pdffonts |
psutils
|
V:9, I:82 | 219 | ps→ps | PostScript 檔案轉換工具 |
poster
|
V:0, I:4 | 58 | ps→ps | 用 PostScript 頁製作大型海報 |
enscript
|
V:1, I:17 | 2132 | text→ps, html, rtf | 轉化 ASCII 文字到 PostScript, HTML, RTF 或 Pretty-Print |
a2ps
|
V:4, I:12 | 3648 | text→ps | '任何文字到 PostScript' 的轉換器並且也是相當不錯的列印程式 |
pdftk
|
I:46 | 28 | pdf→pdf | PDF 文件轉換工具:pdftk |
html2ps
|
V:0, I:3 | 261 | html→ps | 從 HTML 到 PostScript 的轉換器 |
gnuhtml2latex
|
V:0, I:1 | 27 | html→latex | 從 html 到 latex 的轉換器 |
latex2rtf
|
V:0, I:5 | 480 | latex→rtf | 轉換 LaTeX 文件到能被 Microsoft Word 讀取的 RTF 格式的文件 |
ps2eps
|
V:2, I:50 | 99 | ps→eps | 從 PostScript 到 EPS(Encapsulated PostScript)的轉換器 |
e2ps
|
V:0, I:0 | 109 | text→ps | 帶有日文編碼支援的文字到 PostScript 轉換器 |
impose+
|
V:0, I:0 | 119 | ps→ps | PostScript 工具 |
trueprint
|
V:0, I:0 | 149 | text→ps | 漂亮的列印許多源程式(C, C++, Java, Pascal, Perl, Pike, Sh, 和 Verilog)到 PostScript。(C 語言) |
pdf2svg
|
V:0, I:4 | 30 | ps→svg | PDF 到可升級的向量圖形格式的轉換器 |
pdftoipe
|
V:0, I:0 | 65 | ps→ipe | 從 PDF 到 IPE‘s XML 格式的轉換器 |
Unix 通用列印系統(CUPS) 中的
lp
(1) 和 lpr
(1) 指令都提供了自定義列印資料的選項。
你可以使用下列指令中的一個來列印 3 份有裝訂頁碼的檔案。
$ lp -n 3 -o Collate=True filename
$ lpr -#3 -o Collate=True filename
你能夠通過 "-o number-up=2
", "-o
page-set=even
", "-o page-set=odd
", "-o
scaling=200
", "-o natural-scaling=200
"
等等印表機選項來進一步定製印表機操作,詳細的文件參見指令列列印和選項。
下列郵件資料轉換軟體包捕獲了我的眼球。
表格 11.16. 有助於郵件資料轉換的軟體包列表
軟體包 | 流行度 | 大小 | 關鍵詞 | 說明 |
---|---|---|---|---|
sharutils
|
V:3, I:44 | 1415 | 郵件 | shar (1), unshar (1),
uuencode (1), uudecode (1) |
mpack
|
V:1, I:14 | 108 | MIME | 編碼和解碼 MIME 資訊: mpack (1) 和
munpack (1) |
tnef
|
V:0, I:9 | 110 | ms-tnef | 解包 MIME 附件型別 "application/ms-tnef",該格式僅由微軟使用 |
uudeview
|
V:0, I:4 | 109 | 郵件 | 下列格式的編碼器和解碼器: uuencode, xxencode, BASE64, quoted printable 和 BinHex |
![]() |
提示 |
---|---|
如果郵件客戶端可以配置使用 IMAP4 伺服器,網際網路訊息訪問協議 版本 4 (IMAP4) 伺服器可以用來把郵件從專有郵件系統裡面移出來。 |
郵件 (SMTP) 資料需要被限制為 7 位資料序列。二進位制資料和 8 位文字資料使用 Multipurpose Internet Mail Extensions (MIME) 網際網路多用途郵件擴充套件 和選擇的字符集編碼到 7 位格式。(參見 表格 11.2, “編碼值和用法的列表”)。
標準的郵件儲存格式是 mbox,它是依據 RFC2822 (由 RFC822
更新) 來的格式. 參見 mbox
(5) (由 mutt
軟體包提供).
對於歐洲語言,由於沒有什麼 8 位字元,"Content-Transfer-Encoding:
quoted-printable
" 加 ISO-8859-1 字元集通常被用於郵件。如果歐洲文字是被編碼為 UTF-8,由於幾乎全是
7 位資料,使用 "Content-Transfer-Encoding: quoted-printable
"
也是合適的。
對於日語,傳統的 "Content-Type: text/plain; charset=ISO-2022-JP
"
通常被用於郵件來保持文字在 7 位。但是老的微軟系統會在沒有宣告的情況下使用 Shift-JIS 來發送郵件。如果日語文字是用 UTF-8 編碼,
由於含有許多 8 位資料,使用 Base64 是合適的。其它亞洲語言也是類似情形。
![]() |
注意 |
---|---|
如果你的非 Unix 郵件資料可以透過一個具備和 IMAP4 服務通訊的非 Debian 客戶端訪問,你可以透過執行你的 IMAP4 服務來將郵件資料移出。 |
![]() |
注意 |
---|---|
如果你使用其它郵件儲存格式,第一步把它們移動到 mbox 格式比較好。像 |
你可以使用 procmail
(1) 和 formail
(1)
把郵箱內容分開成每一封郵件.
每一封郵件能夠使用來自 mpack
軟體包的 munpack
(1)
指令(或其它特異的工具)來獲得 MIME 編碼內容。
如下是關於圖形資料轉換、編輯和管理的工具包。
表格 11.17. 圖形資料工具列表
軟體包 | 流行度 | 大小 | 關鍵詞 | 說明 |
---|---|---|---|---|
gimp
|
V:53, I:272 | 19767 | 圖形(點陣圖) | GNU 圖形處理程式 |
imagemagick
|
I:326 | 176 | 圖形(點陣圖) | 圖形處理程式 |
graphicsmagick
|
V:2, I:15 | 5445 | 圖形(點陣圖) | 影象處理程式(imagemagick 派生出來的) |
xsane
|
V:13, I:148 | 2339 | 圖形(點陣圖) | 用於 SANE 的基於 GTK 的前端圖形介面 (現在存取掃描器就很簡單了) |
netpbm
|
V:24, I:336 | 8200 | 圖形(點陣圖) | 圖形介面的轉換工具 |
icoutils
|
V:9, I:65 | 221 | png↔ico(bitmap) | MS Windows 符號和游標轉化為 PNG 格式,或者從 PNG 格式轉化為點陣圖格式 (favicon.ico) |
scribus
|
V:1, I:20 | 30234 | ps/pdf/SVG/… | Scribus DTP 編輯器 |
libreoffice-draw
|
V:84, I:408 | 13442 | 圖形(向量) | LibreOffice 辦公套件-繪畫 |
inkscape
|
V:17, I:147 | 99316 | 圖形(向量) | SVG(可升級向量圖形)編輯器 |
dia
|
V:2, I:25 | 3908 | 圖形(向量) | 圖表編輯器(Gtk) |
xfig
|
V:0, I:13 | 7798 | 圖形(向量) | 在圖形介面下,互動式的生成影象變得方便 |
pstoedit
|
V:2, I:64 | 1005 | ps/pdf→image(向量) | PostScript 和 PDF 檔案到可編輯的向量圖形的轉換器(SVG) |
libwmf-bin
|
V:7, I:155 | 180 | Windows/image(向量) | Windows 元檔案 (向量圖形資料) 轉換工具 |
fig2sxd
|
V:0, I:0 | 151 | fig→sxd(向量) | 轉換 XFig 檔案為 OpenOffice.org 繪畫格式 |
unpaper
|
V:2, I:18 | 412 | image→image | 後處理 OCR 掃描頁面的工具 |
tesseract-ocr
|
V:7, I:36 | 2135 | image→text | 基於惠普的商業 OCR 引擎的免費 OCR 軟體 |
tesseract-ocr-eng
|
V:8, I:36 | 4032 | image→text | OCR 引擎資料:用於英文文字的 tesseract-ocr 語言檔案 |
gocr
|
V:1, I:9 | 545 | image→text | 免費 OCR 軟體 |
ocrad
|
V:0, I:4 | 578 | image→text | 免費 OCR 軟體 |
eog
|
V:57, I:259 | 7836 | 影象(Exif) | Eye of GNOME 影象瀏覽程式 |
gthumb
|
V:4, I:18 | 5395 | 影象(Exif) | 影象瀏覽器(GNOME) |
geeqie
|
V:5, I:17 | 15398 | 影象(Exif) | 基於 GTK 的影象瀏覽器 |
shotwell
|
V:15, I:233 | 6548 | 影象(Exif) | 數碼相片管理器(GNOME) |
gtkam
|
V:0, I:5 | 1154 | 影象(Exif) | 從數碼照相機中檢索多媒體資料的應用 (GTK) |
gphoto2
|
V:0, I:10 | 947 | 影象(Exif) | gphoto2 軟體是指令列方式的管理數碼相機的工具 |
gwenview
|
V:26, I:90 | 11604 | 影象(Exif) | 圖片瀏覽器(KDE) |
kamera
|
I:89 | 983 | 影象(Exif) | KDE 上的支援數碼相機的應用軟體 |
digikam
|
V:2, I:11 | 265 | 影象(Exif) | 用於 KDE 桌面環境的數字照片管理應用 |
exiv2
|
V:2, I:32 | 278 | 影象(Exif) | EXIF/IPTC 元資料處理工具 |
exiftran
|
V:1, I:17 | 70 | 影象(Exif) | 改變數碼照相機的 jpeg 影象格式 |
jhead
|
V:0, I:9 | 131 | 影象(Exif) | 處理相容 JPEG 檔案 (數碼相機圖片) 的 Exif 中的非圖形部分 |
exif
|
V:1, I:16 | 339 | 影象(Exif) | 顯示 JPEG 檔案中的 EXIF 資訊的指令列工具 |
exiftags
|
V:0, I:4 | 292 | 影象(Exif) | 從數碼相機的 JPEG 檔案讀取 Exif 標籤的實用工具 |
exifprobe
|
V:0, I:3 | 499 | 影象(Exif) | 從數碼圖片中讀取元資料 |
dcraw
|
V:1, I:14 | 583 | image(原始的)→ppm | 解碼原始的數碼相機圖片 |
findimagedupes
|
V:0, I:1 | 76 | image→fingerprint | 找到相似或重複的影象 |
ale
|
V:0, I:0 | 839 | image→image | 合併影象來增加保真度或者用於建立馬賽克 |
imageindex
|
V:0, I:1 | 145 | image(Exif)→html | 從圖形中建立靜態 HTML 相簿 |
outguess
|
V:0, I:1 | 230 | jpeg,png | 通用的 Steganographic 工具 |
librecad
|
V:1, I:16 | 8798 | DXF | CAD 資料編輯器(KDE) |
blender
|
V:2, I:32 | 87149 | blend, TIFF, VRML, … | 用於動畫的 3D 編輯器 |
mm3d
|
V:0, I:0 | 3868 | ms3d, obj, dxf, … | 基於 OpenGL 的 3D 模型編輯器 |
open-font-design-toolkit
|
I:0 | 10 | ttf, ps, … | 用於開放字型設計的元包 |
fontforge
|
V:0, I:7 | 3980 | ttf, ps, … | 用於 PS,TrueType 和 OpenType 的字型編輯器 |
xgridfit
|
V:0, I:0 | 806 | ttf | 用於TrueType 字型的 網格擬合和小字還原技術 的程式 |
![]() |
提示 |
---|---|
在 |
雖然像 gimp
(1) 這樣的圖形介面程式是非常強大的,但像
imagemagick
(1) 這樣的指令列工具在用指令碼自動化處理影象時是很有用的。
實際上的數碼相機的影象是可交換的影象檔案格式(EXIF),這種格式是在 JPEG 影象檔案格式上新增一些元資料標籤。它能夠儲存諸如日期、時間和相機設定的資訊。
The Lempel-Ziv-Welch (LZW)無損資料壓縮專利已經過期了。使用 LZW 壓縮方式的 圖形互動格式(GIF)工具現在可以在 Debian 系統上自由使用了。
![]() |
提示 |
---|---|
任何帶有可移動記錄介質的數碼相機或掃描器都可以在 Linux 上通過 USB 儲存讀取器來工作,因為它遵循相機檔案系統設計規則並且使用 FAT 檔案系統,參考節 10.1.7, “可移動儲存裝置”。 |
這裡有許多其他用於資料轉換的工具。在 aptitude
(8)(參考 節 2.2.6, “aptitude 搜尋方式選項”) 裡用正規表達式
"~Guse::converting"
" 來查詢如下的軟體包。
你能夠通過如下的指令從 RPM 格式的包中提取資料。
$ rpm2cpio file.src.rpm | cpio --extract