第11章 データー変換

目次

11.1. テキストデーター変換ツール
11.1.1. テキストファイルを iconv を使って変換
11.1.2. ファイルが UTF-8 であると iconv を使い確認
11.1.3. iconv を使ってファイル名変換
11.1.4. 行末変換
11.1.5. タブ変換
11.1.6. 自動変換付きエディター
11.1.7. プレーンテキスト抽出
11.1.8. プレーンテキストデーターをハイライトとフォーマット
11.2. XML データー
11.2.1. XML に関する基本ヒント
11.2.2. XML 処理
11.2.3. XML データー抽出
11.3. タイプセッティング
11.3.1. roff タイプセッティング
11.3.2. TeX/LaTeX
11.3.3. マニュアルページを綺麗に印刷
11.3.4. マニュアルページの作成
11.4. 印刷可能データー
11.4.1. Ghostscript
11.4.2. 2つの PS や PDF ファイルをマージ
11.4.3. 印刷可能データーユーティリティー
11.4.4. CUPS を使って印刷
11.5. メールデーター変換
11.5.1. メールデーターの基本
11.6. グラフィクスデーターツール
11.7. その他のデーター変換

Debian システム上のデーターフォーマット変換のツールとティップを記します。

標準に準拠したツールは非常に良い状態ですが、プロプライエタリデーターフォーマットのサポートは限定的です。

テキストデーター変換のための次のパッケージが著者の目に止まりました。


[ヒント] ヒント

iconv(1)libc6 パッケージの一部として提供されていて、文字の符号化方式変換のために実質的に全てのUnix的システムで常に利用可能です。

次のようにするとテキストファイルを iconv(1) を使って変換できます。

$ iconv -f encoding1 -t encoding2 input.txt >output.txt

符号化方式 (エンコーディング) 値をマッチングする際には、大文字小文字の区別は無く、"-" や "_" を無視します。"iconv -l" コマンドにより、サポートされている符号化方法が確認できます。

表11.2 符号化方式値とその使い方リスト

符号化方式値 使い方
ASCII 情報交換用米国標準コード (ASCII); アクセント文字無しの7ビットコード
UTF-8 全現代的 OS のための現行多言語標準
ISO-8859-1 西欧州言語用の旧標準、ASCII + アクセント文字
ISO-8859-2 東欧州言語用の旧標準、ASCII + アクセント文字
ISO-8859-15 西欧州言語用の旧標準、ユーロ文字付き ISO-8859-1
CP850 コードページ 850、西欧州言語用グラフィック文字付き Microsoft DOS 文字、ISO-8859-1 の変種
CP932 コードページ 932、日本語用 Microsoft Windows スタイル Shift-JIS の変種
CP936 コードページ 936、簡体中国語用 Microsoft Windows スタイル GB2312GBKGB18030 の変種
CP949 コードページ 949、韓国語用 Microsoft Windows スタイル EUC-KR か統一ハングルコードの変種
CP950 コードページ 950、繁体中国語用 Microsoft Windows スタイル Big5 の変種
CP1251 コードページ 1251、キリル文字用 Microsoft Windows スタイル符号化方式
CP1252 コードページ 1252、西欧州言語用 Microsoft Windows スタイル ISO-8859-15 の変種
KOI8-R キリル文字用の旧ロシアの UNIX 標準
ISO-2022-JP 7ビットコードのみを用いる日本語 email の標準符号化方式
eucJP Shift-JIS とはまったく違う、旧日本の UNIX 標準8ビットコード
Shift-JIS 日本語のための JIS X 0208 Appendix 1 標準 (CP932 参照下さい)

[注記] 注記

一部の符号化方式 (エンコーディング) はデーター変換のみサポートされており、ロケール値としては使われません (「符号化方式の基本」参照下さい)。

ASCIIISO-8859 文字セットのような1バイトに収まる文字セットに付いては、文字の符号化方式 (エンコーディング) とは文字セットとほとんど同じ事を意味します。

日本語のための JIS X 0213 や実質的に全ての言語のためのユニコード文字セット (UCS, Unicode, ISO-10646-1) のような多くの文字を含む文字セットの場合には、バイトデーター列に落とし込む多くの符号化手法があります。

これらに関しては、文字セットと文字符号化方式の間にはっきりとした区別があります。

コードページは、一部のベンダー固有のコードページで文字符号化テーブルと同義語として使用されています。

[注記] 注記

ほとんどの符号化システムが7ビット文字に関して ASCII と同じコードを共有している事を覚えておいて下さい。もちろん例外はありますが。もし古い日本語の C プログラムや URL のデーターをカジュアルにシフト JIS と呼ばれている符号化フォーマットから UTF-8 フォーマットに変換する際には、期待される結果を得るために "shift-JIS" ではなく "CP932" を使いましょう: 0x5C → "\" と 0x7E → "~"。こうしないと、これらが間違った文字に変換されます。

[ヒント] ヒント

recode(1) は、十分使えますし、iconv(1)fromdos(1)todos(1)frommac(1)tomac(1) を組み合わせ以上の機能を提供します。詳しくは "info recode" を参照下さい。

次に、単一ディレクトリー中の旧 OS 下で作成されたファイル名から現代的な UTF-8 のファイル名に符号化方式を変換するスクリプト例を示します。

#!/bin/sh
ENCDN=iso-8859-1
for x in *;
 do
 mv "$x" "$(echo "$x" | iconv -f $ENCDN -t utf-8)"
done

"$ENCDN" 変数値には、旧OS下で用いられたファイル名に用いられた元となる表11.2「符号化方式値とその使い方リスト」中にあるエンコーディングを指定します。

もっと複雑な場合にはそのようなファイル名を含有するファイルシステム (ディスクドライブ上のパーティション等) を mount(8) オプションに適正な符号化方式 (エンコーディング) (「ファイル名の符号化方式」参照下さい) を指定してマウントし、その全内容を他の UTF-8 でマウントされたファイルシステムに "cp -a" コマンドを使ってコピーします。

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'

"++enc" や "++ff" オプションを使ってファイルが開かれた時は、Vim コマンドライン中の ":w" がオリジナルのファイルフォーマットでオリジナルのファイルを上書きします。例えば ":w ++enc=utf8 new.txt" 等と Vim コマンドライン中で保存フォーマットや保存ファイル名を指定することも出来ます。

vim オンラインヘルプ中の mbyte.txt "multi-byte text support" と、"++enc" に使われるロケール値に関する表11.2「符号化方式値とその使い方リスト」を参照下さい。

emacs ファミリーのプログラムもまた同様の機能の実行ができます。

以下はウェッブページを読みテキストファイルに落とします。ウェッブから設定を取ってくる時や grep(1) 等の基本的な Unix テキストツールをウェッブページに適用するときに非常に有用です。

$ w3m -dump http://www.remote-site.com/help-info.html >textfile

同様に、次を用いることで他のフォーマットからプレーンテキストデーターを抽出出来ます。


次のようにしてプレーンテキストデーターをハイライトとフォーマット出来ます。

表11.6 プレーンテキストデーターをハイライトするツールのリスト

パッケージ ポプコン サイズ キーワード 説明
vim-runtime V:21, I:432 28018 ハイライト ":source $VIMRUNTIME/syntax/html.vim" を使ってソースコードを HTML に変換するための Vim MACRO
cxref V:0, I:0 1174 c→html C プログラムから latex か HTML への変換ソフト (C 言語)
src2tex V:0, I:0 622 ハイライト 多くのソースコードの TeX への変換ソフト (C 言語)
source-highlight V:0, I:7 2008 ハイライト 多くのソースコードを HTML と XHTML と LaTeX と Texinfo と ANSI カラーエスケープシーケンスと DocBook にハイライト付きで変換 (C++)
highlight V:1, I:16 1054 ハイライト 多くのソースコードを HTML と XHTML と LaTeX と Tex と AXSL-FO にハイライト付きで変換 (C++)
grc V:0, I:2 106 text→color 汎用着色化ソフト (Python)
txt2html V:0, I:4 296 text→html テキストから HTML への変換ソフト (Perl)
markdown V:0, I:7 56 text→html markdown テキスト文書の (X)HTML へのフォーマット化ソフト (Perl)
asciidoc I:14 63 text→any AsciiDoc テキスト文書の XML/HTML へのフォーマット化ソフト (Python)
pandoc V:3, I:30 50298 text→any 汎用マークアップコンバーター (Haskel)
python-docutils V:42, I:423 1725 text→any ReStructured テキスト文書の XML へのフォーマット化ソフト (Python)
txt2tags V:0, I:1 951 text→any テキストから HTML と SGML と LaTeX と man page と MoinMoin と Magic Point と PageMaker への文書変換 (Python)
udo V:0, I:0 569 text→any 汎用文書 - テキスト処理ユーティリティー (C 言語)
stx2any V:0, I:0 264 text→any 構造化プレーンテキストからたのフォーマットへの文書変換ソフト (m4)
rest2web V:0, I:0 526 text→html ReStructured Text から html への文書変換ソフト (Python)
aft V:0, I:0 235 text→any "自由フォーム" 文書準備システム (Perl)
yodl V:0, I:0 554 text→any プリ文書言語とその処理用のツール (C 言語)
sdf V:0, I:0 1445 text→any 単純文書処理ソフト (Perl)
sisu V:0, I:0 5341 text→any 文書の構造化と出版と探索の枠組み (Ruby)

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 は次の文字に関して事前定義されたエンティティを使い内容を少し改変する必要があります。


[注意] 注意

"<" と "&" はアトリビュートやエレメントには使えません。

[注記] 注記

例えば "&some-tag:" 等の SGML スタイルのユーザー定義エンティティが使われた場合、他の定義は無効で最初の定義が有効です。エンティティ定義は "<!ENTITY 何らかのタグ " エンティティ値 ">" と表現されます。

[注記] 注記

XML のマークアップがタグ名の何らかの組み合わせで (あるデーターを内容としてであれアトリビュート値としてであれ) 整合性を持ってされている限り、他の XML の変換は拡張可能スタイルシート言語変換 (XSLT) を使うととっても簡単な作業です。

拡張可能スタイルシート言語 (XSL) のような XML ファイルを処理に利用可能なツールは沢山あります。

基本的に、良くできた XML ファイルを一度作ると、いかなるフォーマットへも拡張可能なスタイルシート言語変換 (XSLT) を使って変換できます。

フォーマットオブジェクト用拡張可能スタイルシート言語 (XSL-FO) がフォーマットのための答えとなるはずです。fop パッケージは Java プログラム言語 に依存するため Debian の main アーカイブでは新規です。このため、 LaTeX コードが XML から XSLT を使って通常作成され、DVI や PostScript や PDF 等のプリンタブルなファイルが LaTeX システムを使って作成されます。


XML は標準一般化マークアップ言語 (SGML) のサブセットなので、ドキュメントスタイル構文規程言語 (DSSSL) 等の SGML 用として利用可能な広範なツールで処理できます。


[ヒント] ヒント

GNOMEyelpDocBook XML ファイルを X 上に体裁良く表示するので時々便利です。

他のフォーマットから以下を使うと HTML とか XML のデーターを抽出出来ます。


非 XML の HTML ファイルの場合は、これらを整合性ある XML である XHTML に変換できます。XHTML は XML ツールで処理できます。


一度適正な 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 パッケージをインストールすると "/usr/share/doc/groff/" 中に "-me"マクロに関する良い入門書や参考書が読めます。

[ヒント] ヒント

"groff -Tascii -me -" はANSI エスケープコードを含むプレーンテキストを生成します。もしマンページのような多くの "^H" や "_" を含む出力が欲しい場合には、この代わりに "GROFF_NO_SGR=1 groff -Tascii -me -" を使います。

[ヒント] ヒント

groff が生成した "^H" や "_" をテキストから削除するには、それを "col -b -x" でフィルターします。

TeX Live ソフトウエアーディストリビューションは完全な TeX システムを提供します。texlive メタパッケージは、ほとんどの一般的タスクに十分な TeX Live パッケージのまともな選択を提供します。

TeXLaTeX に関する多くの参考書が利用可能です。

  • The teTeX HOWTO: The Linux-teTeX Local Guide

  • 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 処理ソフトはこれをバックエンドのテキスト処理ソフトとしています。多くの人が EmacsVim をソースのエディターとして使う一方、lyx パッケージが提供する Lyxtexmacs パッケージが提供する GNU TeXmacs は洒落た LaTeXWYSIWYG 編集環境を提供します。

多くのオンラインリソースが利用可能です。

文書が大きくなると、TeX はエラーを発生する事があります。この問題の解決には (正しくは "/etc/texmf/texmf.d/95NonPath" を編集し update-texmf(8) を実行することで) "/etc/texmf/texmf.cnf" 中のプールの数を増やし修正しなければいけません。

[注記] 注記

このファイルには必要なマクロのほとんど全てが含まれます。この文書は7から10行をコメントして "\input manmac \proofmodefalse" を追加すると tex(1) で処理できると聞いた事があります。オンラインバージョンを使うのではなくこの本 (さらに Donald E. Knuth 氏による全ての本) を購入される事を強く勧めます。しかし、そのソースは TeX の入力の非常に良い例です!

Debian システム上では印刷可能なデーターは PostScript フォーマットで表現されます。共通 Unix 印刷システム (CUPS) は非 PostScript プリンタ用のラスタ化のバックエンドプログラムとして Ghostscript を使用します。

2つの PostScript (PS)Portable Document Format (PDF) ファイルは Ghostscript のgs(1) をつかってマージできます。

$ 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
[注記] 注記

PDF は、クロスプラットフォームの印刷可能フォーマットとして広範に使われていて、本質的にいくつかの追加機能と拡張がされている、圧縮 PS フォーマットです。

[ヒント] ヒント

コマンドラインの場合、psutils パッケージ中の psmerge(1) 等のコマンドは PostScript 文書を操作するのに便利です。pdftk パッケージの pdftk(1) も PDF 文書を操作するのに便利です。

印刷可能なデーターに用いる次のパッケージが著者の目に止まりました。

表11.15 プリントできるデーターのユーティリティーのリスト

パッケージ ポプコン サイズ キーワード 説明
poppler-utils V:48, I:486 535 pdf→ps,text,… PDF ユーティリティー: pdftops, pdfinfo, pdfimages, pdftotext, pdffonts
psutils V:13, I:182 219 ps→ps PostScript 文書変換ツール
poster V:0, I:7 49 ps→ps PostScript ページから大きなポスターを作る
enscript V:2, I:26 2111 text→ps, html, rtf ASCII テキストから PostScript か HTML か RTF か Pretty-Print への変換
a2ps V:5, I:25 3620 text→ps 全てを PostScript に変換するソフトと綺麗印刷ソフト
pdftk V:8, I:56 3873 pdf→pdf PDF 文書変換ツール: pdftk
mpage V:0, I:5 141 text,ps→ps シートに複数ページを印刷
html2ps V:0, I:5 249 html→ps HTML から PostScript への変換ソフト
gnuhtml2latex V:0, I:1 27 html→latex html から latex への変換ソフト
latex2rtf V:0, I:7 475 latex→rtf LaTeX から MS Word で読める RTF へと文書変換
ps2eps V:6, I:110 94 ps→eps PostScript から EPS (カプセル化済み PostScript) への変換ソフト
e2ps V:0, I:0 112 text→ps 日本語符号化サポート付きの Text から PostScript への変換ソフト
impose+ V:0, I:1 180 ps→ps PostScript ユーティリティー
trueprint V:0, I:0 138 text→ps 多くのソースコード (C, C++, Java, Pascal, Perl, Pike, Sh, Verilog) の PostScript への綺麗印刷 (C 言語)
pdf2svg V:0, I:4 26 ps→svg PDF からスケール可のベクトルグラフィクス (SVG) フォーマットへの変換ソフト
pdftoipe V:0, I:0 63 ps→ipe PDF から IPE の XML フォーマットへの変換ソフト

Common Unix Printing System (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" 等の印刷オプションを使ってカスタム化できます。

テキストデーター変換のための次のパッケージが著者の目に止まりました。


[ヒント] ヒント

インターネットメッセージアクセスプロトコル バージョン4 (IMAP4) サーバー (「POP3/IMAP4 サーバー」参照下さい) は、プロプライエタリメールシステムのクライアントソフトが IMAP4 サーバーも使えるように設定できる場合、プロプライエタリメールシステムからメールを取り出すのに利用できるかもしれません。

メイル (SMTP) データーは7ビットデーター列に限定されるべきです。だからバイナリーデーターや8ビットテキストデーターはMultipurpose Internet Mail Extensions (MIME) を用いたり文字セット (「符号化方式の基本」参照下さい) を選択して7ビットのフォーマットに エンコードされます。

標準のメールストレージフォーマットは RFC2822 (RFC822 の更新版) により定義される mbox フォーマットです。mbox(5) (mutt パッケージが提供) を参照下さい。

欧州言語の場合、ほとんど8ビット文字が無いので ISO-8859-1 文字セットとともに "Content-Transfer-Encoding: quoted-printable" が通常メールに使われます。欧州のテキストが UTF-8 符号化された場合、ほとんどが7ビット文字なので "Content-Transfer-Encoding: quoted-printable" が大体使われます。

日本語には、テキストを7ビットにしておくために伝統的に "Content-Type: text/plain; charset=ISO-2022-JP" がメールに使われます。しかし、古い Microsoft システムは適正な宣言無しに Shift-JIS でメールデーターを送るかもしれません。日本語のテキストが UTF-8 で符号化される場合、多くの8ビットデーターを含むので Base64 が大体使われます。他のアジアの言語でも状況は同様です。

[注記] 注記

もし IMAP4 サーバー (「POP3/IMAP4 サーバー」参照下さい) と話せる非 Debian クライアントからあなたの非 Unix メールデーターがアクセス出きるなら、あなた自身の IMAP4 サーバーを実行することでメールデーターを引き出せるかもしれません。

[注記] 注記

もし他のメールストレージフォーマットを使っている場合、mbox フォーマットに移動するのが良い第一歩です。mutt(1) のような汎用クライアントプログラムはこれに非常に便利です。

メールボックスの内容は procmail(1)formail(1) を使って各メッセージに分割できます。

各メールメッセージは mpack パッケージにある munpack(1) (または他の専用ツール) を使って開梱して MIME 符号化された内容を取り出せます。

印刷可能なデーターに用いる次のパッケージが著者の目に止まりました。

表11.17 画像データーツールのリスト

パッケージ ポプコン サイズ キーワード 説明
gimp V:87, I:505 16278 画像 (bitmap) GNU イメージ操作プログラム
imagemagick V:87, I:552 196 画像 (bitmap) 画像操作プログラム
graphicsmagick V:6, I:15 4903 画像 (bitmap) 画像操作プログラム (imagemagick のフォーク)
xsane V:21, I:192 909 画像 (bitmap) GTK+ に基づく SANE (Scanner Access Now Easy) 用の X11 フロントエンド
netpbm V:29, I:555 4302 画像 (bitmap) 画像変換ツール
icoutils V:10, I:119 194 png↔ico(bitmap) MS Windows のアイコンやカーソールと PNG フォーマット間の変換 (favicon.ico)
scribus V:8, I:27 19061 ps/pdf/SVG/… Scribus DTP エディター
libreoffice-draw V:337, I:480 9758 画像 (vector) LibreOffice office スイート - ドロー
inkscape V:138, I:348 129795 画像 (vector) SVG (スケーラブルベクトルグラフィクス) エディター
dia-gnome V:2, I:9 21 画像 (vector) ダイアグラムエディター (GNOME)
dia V:23, I:39 3886 画像 (vector) ダイアグラムエディター (Gtk)
xfig V:12, I:18 1795 画像 (vector) X11 下でインテラクティブ生成するソフト
pstoedit V:9, I:262 666 ps/pdf→画像(vector) PostScript と PDF ファイルから編集可能なベクトルグラフィクスへの変換ソフト (SVG)
libwmf-bin V:13, I:355 104 Windows/画像(vector) Windows メタファイル (ベクトル画像データー) 変換ツール
fig2sxd V:0, I:0 149 fig→sxd(vector) XFig ファイルを OpenOffice.org Draw フォーマットに変換
unpaper V:2, I:16 453 画像→画像 OCR 用のスキャンしたページの後処理ツール
tesseract-ocr V:4, I:28 558 画像→テキスト HP の商用 OCR エンジンの基づくフリーの OCR ソフトウエアー
tesseract-ocr-eng I:29 37486 画像→テキスト OCR エンジンデーター: tesseract-ocr の英文用言語ファイル
gocr V:1, I:21 477 画像→テキスト フリー OCR ソフト
ocrad V:1, I:7 299 画像→テキスト フリー OCR ソフト
eog V:89, I:322 10780 画像(Exif) 画像ビューアープログラム Eye of GNOME
gthumb V:15, I:26 3369 画像(Exif) 画像ビューアー兼ブラウザー (GNOME)
geeqie V:15, I:23 1588 画像(Exif) GTK+ を用いた画像ビューアー
shotwell V:19, I:179 5763 画像(Exif) デジタル写真オーガナイザー (GNOME)
gtkam V:0, I:7 1151 画像(Exif) デジタルカメラからメディアを回収するアプリケーション (GTK+)
gphoto2 V:1, I:14 969 画像(Exif) gphoto2 デジタルカメラコマンドライン版クライアント
gwenview V:32, I:104 4509 画像(Exif) 画像ビューア (KDE)
kamera I:104 230 画像(Exif) KDE アプリケーション用デジタルカメラサポート
digikam V:3, I:16 1760 画像(Exif) デジタル写真管理アプリケーション
exiv2 V:4, I:66 246 画像(Exif) EXIF/IPTC メタデーター操作ツール
exiftran V:1, I:25 71 画像(Exif) デジタルカメラの jpeg 画像を変換
jhead V:1, I:12 105 画像(Exif) Exif に準拠の JPEG (デジタルカメラ写真) ファイルの非画像部を操作
exif V:1, I:11 236 画像(Exif) JPEG ファイル中の EXIF 情報を表示するコマンドラインユーティリティー
exiftags V:0, I:4 288 画像(Exif) デジタルカメラの JPEG ファイルから Exif タグを読むユーティリティー
exifprobe V:0, I:3 490 画像(Exif) デジタル写真からメタデーターを読み出す
dcraw V:3, I:24 384 画像(Raw)→ppm 生のデジタルカメラ画像のデコード
findimagedupes V:0, I:1 79 画像→fingerprint 視覚的な類似画像と重複画像の検出
ale V:0, I:0 753 画像→画像 忠実度を上げたりモザイクを作成するための画像のマージ
imageindex V:0, I:0 144 画像(Exif)→html イメージから静的な HTML ギャラリーを生成
outguess V:0, I:1 216 jpeg,png 普遍的 Steganographic ツール
librecad V:10, I:17 8039 DXF CAD データーエディター (KDE)
blender V:4, I:30 101389 blend, TIFF, VRML, … アニメーション等用の 3D コンテントエディター
mm3d V:0, I:0 5314 ms3d, obj, dxf, … OpenGL 準拠の 3D モデルエディター
open-font-design-toolkit I:0 11 ttf, ps, … オープンフォントデザイン用のメタパッケージ
fontforge V:0, I:9 91 ttf, ps, … PS と TrueType と OpenType のフォント用フォントエディター
xgridfit V:0, I:0 876 ttf TrueType フォントをグリッドフィッティングとヒンティング用のプログラム

[ヒント] ヒント

aptitude(8) の正規表現 "~Gworks-with::image" (「aptitude を使った探索方法」参照下さい) を使ってさらなる画像ツールを探しましょう。

gimp(1) のような GUI プログラムは非常に強力ですが、imagemagick(1) 等のコマンドラインツールはスクリプトでイメージ操作を自動化するのに非常に便利です。

デジタルカメラのファイルフォーマットのデファクト標準は、追加のメタデーター付きの JPEG 画像ファイルフォーマットである交換可能な画像ファイルフォーマット (EXIF) です。EXIF は日付や時間やカメラ設定等の情報を保持できます。

Lempel-Ziv-Welch (LZW) ロス無しデーター圧縮特許の期限は切れました。LZW データー圧縮を使う画像交換フォーマット (GIF) ユーティリティーは Debian システム上で自由に利用可能となりました。

[ヒント] ヒント

リムーバブル記録メディア付きのどのデジタルカメラやスキャナーも、カメラファイルシステム用デザインルール に準拠し FAT ファイルシステムを使っているので USB ストレージ読取り機を経由すれば Linux で必ず機能します。「リムーバブルストレージデバイス」参照下さい。

多くのデーター変換プログラムがあります。aptitude(8) で"~Guse::converting" という正規表現 (「aptitude を使った探索方法」参照下さい) を使い次のプログラムが私の目に止まりました。


RPM フォーマットからのデーター抽出もまた次のようにするとできます。

$ rpm2cpio file.src.rpm | cpio --extract