Scalable Vector Graphics
出典: フリー百科事典『ウィキペディア(Wikipedia)』
拡張子: | .svg |
---|---|
MIME Type: | image/svg+xml |
開発者: | World Wide Web Consortium |
種別: | ベクタグラフィック |
派生元: | XML |
Scalable Vector Graphics(SVG、スケーラブル ベクター グラフィックス)は、XMLによって記述されたベクターグラフィック言語のこと、あるいは、SVGで記述された画像フォーマットのこと。W3Cでオープン標準として勧告されている。
目次 |
[編集] 沿革
1998年に発足したW3C SVGワーキンググループにより開発された。しかし、その時点で、マクロメディアとマイクロソフトがVML、アドビシステムズとサン・マイクロシステムズがPGMLとして知られている競合したフォーマットが提案されていた。
- 2001年9月4日 - SVG 1.0がW3C勧告となる
- 2003年1月14日 - SVG 1.1がW3C勧告となる
- 2003年1月14日 - SVG TinyとSVG Basic(モバイルSVGプロファイル)がW3C勧告となる
SVG Tiny1.2は現在W3C勧告候補である。
[編集] 特徴
XMLで記述するため、Webブラウザ上で閲覧でき、テキストエディタなどで編集することができる。またハイパーリンクを画像中に埋め込んだり、JavaScriptなどと連携させることもできる。ベクターグラフィックであるため、ベクターデータによる画面表示では拡大や縮小をしても描写の劣化が起きない。画像データの画面表示はWebブラウザのプラグインによって色調補完を行ないドット落ちを補正する機能を持つものがある。
[編集] 編集
SVGは、拡張の自由度が高いXML (Extensible Markup Language) で記述されており、XMLならではの各種機能を定義した要素を持つ。SVGではそれ自身に回転・拡大・移動などの表現を定義しているため、単体で多様な表現をする事が可能である。
従来のウェブサイトでは、いわゆるインタラクティブな双方性のある画面変化を伴なう表示をJavaScriptやFLASHを用いてきた。HTML/XHTMLにSVGを組み合わせることにより、JavaScriptやFLASHを導入せずとも同様の効果が発揮される事が期待される。
XMLなので、専用のアプリケーションを用いることなくテキストファイルとして作製・編集できる。
[編集] レイヤー
SVGの特筆すべき点としてレイヤー機能がある。SVGでは写真や挿絵などのビットマップデータ部分と座標値で指定された円・線分等を組み合わせた図形をベクターデータ部分として個々に指定でき、互いの苦手とする部分を補完しながら共存して画面表示できる。
- ビットマップデータ: 写真・挿絵・統計グラフ
- ベクターデータ: 円弧・線分・点・文字・統計グラフ
SVGでは文字をベクター情報の領域に有することで拡大縮小した際にはアウトラインフォントで表現する。この機能により文字を縮小した際に潰れたり、拡大するとジャギーと呼ばれる文字外延部のギザギザが生じて見難くなる点が解決されている。具体的には Adobe Acrobat による PDF 形式の文字とほぼ同じ機能を有する。
これらのレイヤー機能により、背景に写真などの画像を置き、ベクターデータによる線画や文字を配置させることが可能である。具体的には等高線を表示した地図画像(ビットマップ)の上に鉄道路線や道路網(ベクターデータ)を重ね、電車や自動車等の移動体を配置して同時表示が可能になる。更に、ベクターデータのみで表現した塗りつぶしでは色の重ね合わせが可能であり、塗りつぶしの透過度の指定により集合論で用いるベン図のような形体を必要最低限度の色数で表現できる。
[編集] ファイル形式
基本的に SVG は MIME 形式指定では image/svg+xml で指定された画像フォーマットである。ファイルの拡張子は .svg と gzip 圧縮された .svgz がある。拡張子 .svg はテキストファイルであるが故に大きなデータではネット間の通信トラフィックに於いてはデメリットが大きいが、圧縮した .svgz では数分の一のファイルサイズになる。解凍機能はWebブラウザ側が受け持つ。
[編集] 親和性
SVGは基本的にテキストファイルで構成されており、Webブラウザの利用者が入力した情報を CGI や Javascript を介してSVGデータに組み入れることが可能である。これにより、ベクターデータを用いた統計グラフでは可変性のある表示が可能になる。
[編集] 長所
テキストデータで制作できるため、独自タグを用いることで高品質な表現が可能である。文字情報は文字データのみを明示的にグループ化しているため、文字のグループのみを抽出することで多言語化が比較的容易にできる。
[編集] 欠点
ビットマップデータのファイルサイズは各ファイル形式によってある程度左右されるが、ほぼ面積比によってある程度のファイルサイズの中に納まることが多い。それに対して、ベクターデータは画面表示サイズに関わらず全ての情報を常に保持し続けるため、表示する情報が多い場合はビットマップデータよりもファイルサイズが大きくなる傾向がある。
[編集] 規格の概要
- SVG 1.1
- SVG Tiny
- SVG Basic
[編集] 現状
SVG は版を重ねるごとに高度な機能を盛り込んでいる。1.1版以降から、格納しようとするグラフィックス情報に当該情報が使用している座標参照系をメタデータとして記述することが可能となった。これにより、SVGを地図コンテンツとして利活用できる道ができ、国土地理院ではその保有する電子国土基幹情報をSVGで配信し、パソコンのみでなく広範なメディア上で活用する方法やアイデアを提案して広く社会実験に供する試みを実施している。
一方で、SVG の高度な機能を用いるものでは、それに対応した編集ツールや、データを忠実に再現してくれるビューワーやブラウザのプラグイン等が必須となる。高度な機能をもちつつも、それを活かせるインフラが追いついていないのが現状である。
これとは別に、比較的利用頻度の高い重要な機能に絞り込み、小型機器にも搭載可能な軽量な規格も登場している。
[編集] SVG編集ソフト
SVG は XML を用いているのでテキストエディタによるデータの作成も一応可能であるが、記述は非常に複雑なため実用的にはグラフィカルユーザインターフェースを前提にした編集ソフトが必須となる。
用途により、高度なグラフィクス作成に主眼を置いたグラフィックソフトから図、表、フローチャートなどの作成に主眼を置いたソフトまで幅がある。
- SVG を標準データとして扱い、読み書きが可能なもの
-
- SVG Cats
- Sodipodi - Sodipodiホームページ
- Inkscape - Inkscapeホームページ
- SVG の読み書きが可能なもの
-
- Adobe Illustrator
- Microsoft Office Visio
- Corel DRAW
- Justsystems Xfy
- 一部制限があるもの
-
- GIMP - 読み込みに対応。書き出しはパスの書き出しのみ。
- SVG の出力が可能なもの
-
- 花子2006は、SVG(Ver.1.0に準拠)の書き出しをサポートする。
- OpenOfficeDraw - 1.1までは日本語出力が一部乱れるなど難あり。2.0から書き出しをサポート。SVG Import Filterをインストールすれば読み込みも可能。
- Omni GroupのOmniGraffle Professional 4は、SVG書き出しをサポートする。
このほかにも、CADソフトウエアには読み書きともに対応しているものが多く存在する。
[編集] ブラウザによるSVG画像の表示
現在、Internet Explorer以外のほぼ全てのパソコン用主要WWWブラウザでネイティブサポートされている。しかし未だに、Internet Explorerなどマイクロソフト社のレンダリングエンジンを持つブラウザではサポートされていない。これに対して、サードパーティーが提供するプラグインを用いることで、多少古い仕様ではあるが、SVG画像を表示させることができる。
[編集] プラグインサポート
- Adobe - Adobe SVG Viewer。Internet ExplorerやNetscape Navigator向け。
- Adobe SVG Viewerは2009年1月1日にサポートを終了する予定である。配布の終了は未定である[1]。
- Corel - Corel SVG Viewer
- GNOME - Mozilla向けにプラグインのlibrsvg
- Emia Systems - Renesis Player
- SVG MAP コンソーシアム - 2007年9月6日に地図表示のための拡張機能を備えたSVG ViewerであるSVG Map Toolkitの提供を開始した。
[編集] ネイティブサポート
- W3CのAmayaが標準でネイティブサポートしている。
- Geckoブラウザでは、Firefox 1.5から対応している
- Operaは2005年4月に発表された Opera v8.0 で SVG Tiny に、2006年発表の v9.0 で SVG Basic に対応した。
- KDEのKonquerorはKSVGを使って表示させることができる。
- WebKitブラウザでは、Safari 3.0 から対応している。
[編集] デスクトップ
GNU/Linux系などのUnixライクOSでは、Freedesktop.orgの標準に採用されるなど、様々な利用がされている。GNOMEはlibrsvgを使いアイコンや壁紙にSVGを利用できるし、またKDEではKSVGを利用してアイコンを表示できるほか3.4からはSVGを使った壁紙に対応した。
Windows系では2007年現在では特に動きはない。
[編集] 関連項目
- Extensible Markup Language (XML)
- Adobe Flash (Macromedia Flash)
- ビットマップ画像(ラスターグラフィック)
- ベクトル画像(ベクターグラフィック)
- WYSIWYG
[編集] 外部リンク
- W3CのSVG公式サイト
- アドビシステムズ SVG
- Open Clip Art Library -パブリックドメインのSVGグラフィック配布サイト
- SVG MAP コンソーシアム
- 電子国土ラボ
- SVG実習マニュアル(PDF)