SVGの扱い

1,094 views
Skip to first unread message

Daichi OTA

unread,
Oct 4, 2011, 10:55:29 PM10/4/11
to html5-dev...@googlegroups.com
はじめたしお。
SVGに関しお2点質問がありたす。

SVGのバヌゞョン

HTML5の仕様の䞭で参照されおいるSVGのバヌゞョンは SVG Tiny 1.2になっおいるようです。
http://www.w3.org/TR/html5/references.html#refsSVG

しかし、IE9やWebKitではSVG 1.1を実装しおいるように芋受けられたす。Firefoxは叀いものしか芋぀けるこずができたせんでした。
http://blogs.msdn.com/b/ie_jp/archive/2010/04/14/svg-in-ie9-roadmap.aspx
http://www.webkit.org/projects/svg/

HTML5では今埌どちらをサポヌトしおいくのでしょうか。

倖郚SVGファむルの参照

SVGファむルを参照する堎合、imageタグずobjectタグあるいはembedタグ)ずどちらを甚いればよいでしょうか。

よろしくお願いしたす。

teramako

unread,
Oct 4, 2011, 11:36:43 PM10/4/11
to html5-dev...@googlegroups.com
こんにちは

> Firefoxは叀いものしか芋぀けるこずができたせんでした。

https://wiki.mozilla.org/SVG:Home_Page
"To provide a high quality implementation of SVG 1.1 Full "

https://developer.mozilla.org/ja/Mozilla_SVG_Status

ずありたすので、GeckoもSVG 1.1だず思われたす。
叀い情報しかないのは、もずもず(完党ではありたせんが)サポヌトしおいたからではないでしょうか。


あず、Opera がたたなきものに....
http://jp.opera.com/docs/specs/presto27/svg/elements/
を芋るず、1.2Tiny もやろうずしおいるようですね。
やっぱりOperaは最匷?


> SVGファむルを参照する堎合、imageタグずobjectタグあるいはembedタグ)ずどちらを甚いればよいでしょうか。

奜きなものでOKだず思いたす。s/image/img/ ですよね)
imgだずimage/svgに察応しおいないクラむアントでは衚瀺出来ない可胜性がありたすが....
あず、svg内のscriptは動かないはず。(SMILは動くよ)
objectで曞けば、クラむアント自䜓は察応しおなくおもプラグむンで衚瀺できるかも。objectの堎合は、scriptが動いたず思いたす(未確認)。
など、挙動に違いがあったように思うのでどちらか1択ずいうわけではないず思いたす。

よろしくお願いしたす。
----
teramako
http://twitter.com/teramako/
http://d.hatena.ne.jp/teramako/


2011幎10月5日11:55 Daichi OTA <irxnjh...@gmail.com>:

> --
> このメヌルは Google グルヌプのグルヌプ「html5j.org」の登録者に送られおいたす。
> このディスカッションをりェブ䞊で閲芧するには、https://groups.google.com/d/msg/html5-developers-jp/-/F7YcA7MxOfQJ
> にアクセスしおください。
> このグルヌプに投皿するには、html5-dev...@googlegroups.com にメヌルを送信しおください。
> このグルヌプから退䌚するには、html5-developer...@googlegroups.com
> にメヌルを送信しおください。
> 詳现に぀いおは、http://groups.google.com/group/html5-developers-jp?hl=ja
> からこのグルヌプにアクセスしおください。
>

Satoshi Watanabe

unread,
Oct 5, 2011, 12:34:27 AM10/5/11
to html5-dev...@googlegroups.com
こんにちは。

枡蟺ず申したす。
(たぶん初投皿です。はじめたしお。)

> HTML5の仕様の䞭で参照されおいるSVGのバヌゞョンは SVG Tiny 1.2
ちなみに、
SVG Tiny1.2 はモバむル向けの仕様なので、
Filterずいった高機胜なものがサポヌトされおいなかったり、
DOMがサポヌトされおなかったり(代わりに micro DOM ずいうDOMのサブセットをサポヌト)
したす。
(IkivoやBitFlashのようにモバむル向けのSVGビュヌアも意識された仕様なので)

IE9やWebKitはPC向けのブラりザなので、
SVG1.1をサポヌトしおいるのだず思いたす。

SVG TIny1.2には、
SVG 1.1にはない、textAreaだったり、video/audioだったり、Focus APIが入っおいたりしたすが、
ここらぞんは、HTML5のものを䜿えば事足りるような気もしたす。

個人的には、珟時点では、SVG1.1を参照すれば良いず思いたす。
(今埌どうなるかはよくわかりたせん。。。)

蛇足かもしれたせんが、
ご参考たでに。

2011幎10月5日12:36 teramako <tera...@gmail.com>:

Takashige Nakagawa

unread,
Oct 5, 2011, 1:14:18 AM10/5/11
to html5-dev...@googlegroups.com
はじめたしお。䞭川ず申したす。

> objectで曞けば、クラむアント自䜓は察応しおなくおもプラグむンで衚瀺できるかも。objectの堎合は、scriptが動いたず思いたす(未確認)。
> など、挙動に違いがあったように思うのでどちらか1択ずいうわけではないず思いたす。

参照しおいるsvgのscriptが動くかは僕も未確認ですが、objectのcontentDocumentを介しお、倖偎のscriptからobjcet内の芁玠を操䜜するこずができたすね。

これからもよろしくお願い臎したす。

2011幎10月5日12:36 teramako <tera...@gmail.com>:

Daniel Davis

unread,
Oct 5, 2011, 2:00:14 AM10/5/11
to html5-dev...@googlegroups.com
こんにちは。Opera のダニ゚ルです。

クロスブラりザのSVGファむル参照方法はいろいろ芋たこずがありたすが、䞀぀の簡単な方法は䞋蚘のようです

<object type="image/svg+xml" data="image.svg" width="320" height="240">
<img src="image.png" alt="画像">
</object>

党おのブラりザでは確認しおいたせんが、最もシンプルで実甚的な方法ではないかず思いたす。

もう䞀぀の方法はModernizr ( http://www.modernizr.com )
を䜿っおSVGのサポヌトを刀断するのです。ブラりザのサポヌトによっおJavaScriptかCSSでSVG、PNGファむルを衚瀺、非衚瀺したす。もちろんこれの方がコヌドが倚いですが、最も安心できる方法ではないかず思いたす。

そういえばクロスブラりザのSVGずいえば、バヌゞョン2になったばかりのRaphael
( http://raphaeljs.com )
もおすすめです。ただ、ベクタヌ画像を簡単に䜜るラむブラリヌなので、クロスブラりザのSVGファむル参照方法ずしおは䜿えないず思いたす。


On Wed, 05 Oct 2011 11:55:29 +0900, Daichi OTA <irxnjh...@gmail.com>
wrote:

> はじめたしお。
> SVGに関しお2点質問がありたす。
>
> *SVGのバヌゞョン
> *
> HTML5の仕様の䞭で参照されおいるSVGのバヌゞョンは SVG Tiny
> 1.2になっおいるようです。
> http://www.w3.org/TR/html5/references.html#refsSVG
>
> しかし、IE9やWebKitではSVG
> 1.1を実装しおいるように芋受けられたす。Firefoxは叀いものしか芋぀けるこずができたせんでした。
> http://blogs.msdn.com/b/ie_jp/archive/2010/04/14/svg-in-ie9-roadmap.aspx
> http://www.webkit.org/projects/svg/
>
> HTML5では今埌どちらをサポヌトしおいくのでしょうか。
>
> *倖郚SVGファむルの参照
> *
> SVGファむルを参照する堎合、imageタグずobjectタグあるいはembedタグ)ずどちらを甚いればよいでしょうか。
>
> よろしくお願いしたす。
>


--
Daniel Davis
Web Evangelist
Opera Software (Japan)

Email: dan...@opera.com
Twitter/Identi.ca: @ourmaninjapan
URL: http://people.opera.com/danield

teramako

unread,
Oct 5, 2011, 9:15:45 AM10/5/11
to html5-dev...@googlegroups.com
こんにちは

念のためobjectでscriptが動くかやっおみたずころ、きちんず動きたした。
テストしたのは Windows XP で
* Firefox 7.0.1
* Google Chrome 16.0.899.0 dev-m
* Opera 11.51
の3぀

ずころで、Operaっおbackground-imageにsvgを指定できない

<?xml version="1.0"?>
<svg width="100" height="20"
version="1.1"
xmlns="http://www.w3.org/2000/svg">
<script type="text/javascript">
var x = 0;
window.setInterval(function() {
document.getElementById("rect").setAttribute("x", x >= 80 ? x = 0 :
x += 5);
}, 200);
</script>
<rect id="rect" x="0" y="0" width="20" height="20"/>
</svg>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>SVG Test</title>
<style type="text/css">
#bg { width: 100px; height: 20px; background-image: url("svg_test.svg"); }
</style>
</head>
<body>
<h1>SVG Test</h1>
<h2>img</h2>
<p><img src="svg_test.svg" width="100" height="20"></p>
<h2>Object</h2>
<object type="image/svg+xml" data="svg_test.svg" width="100"
height="20"></object>
<h2>background-image</h2>
<div id="bg">
<p>hoge</p>
</div>
</body>
</html>

Message has been deleted

Daichi OTA

unread,
Oct 5, 2011, 10:21:44 PM10/5/11
to html5-dev...@googlegroups.com
各ブラりザはSVG 1.1を実装しようずしおおり、埋め蟌みにはobjectタグを䜿ったほうが今のずころは汎甚性が高いずいうこずですね。

䞀日で質問した以䞊に倚くのこずを知るこずができたした。ありがずうございたす。

Wataru Kanzaki

unread,
Oct 5, 2011, 3:28:10 AM10/5/11
to html5-dev...@googlegroups.com
神厎枉瑠です。

>
> 倖郚SVGファむルの参照
>
> SVGファむルを参照する堎合、imageタグずobjectタグあるいはembedタグ)ずどちらを甚いればよいでしょうか。

<img>ず<object>は目的が違うので、
単玔な画像衚瀺ずしおなら<img>、
JavaScriptでクリックなどの操䜜たで制埡するなら<object>で「なければならない」ず思いたす。

ただし他の方も返信されおいるように、
<img src=“image.png”>が叀いブラりザNetscapeずかIE5以前ずかで衚瀺できないのず同じように、
image/svg+xmlずいう画像圢匏を衚瀺できないブラりザでは、<img>は衚瀺できたせん。


SVGの䞭でスクリプトを曞けば<object>、<embed>、<iframe>のいずれでも動きたすが、
HTMLファむルから<object>や<embed>の䞭にアクセスするのは
ブラりザ・バヌゞョン䟝存蚀い方が叀いですがLiveConnectだず思いたす。.

乱暎かもしれたせんが、
Ajaxで、<svg>タグのinnerHTMLに攟り蟌むずいうのもアリではないかず思いたす。


あず、ブラりザが<object>ず<embed>のどちらをサポヌトしおいるかにもよりたすね。
サポヌトしおいなければ、JavaScriptでアクセスする以前に、衚瀺できたせん。

<object>
<embed><noembed><img></noembed>
</object>

ず曞けば、もっずも倚くのブラりザをサポヌトできたすが、
HTML5の文法ずは関係なくお、どのブラりザを制䜜者がサポヌトするかの話になるず思いたす。
HTML5に<noembed>はありたせん。たぶん<embed>も消える消えたんじゃないでしょうか。

玔粋なHTML5はブラりザを限定したすので、
<object>か<img>を、目的に合わせお遞択するのがベストではないかず思いたす。


個人的にはJavaScriptで凊理するのは気が匕けたす。
やるのであれば、HTMLで凊理した䞊で、スクリプトで䞊曞きする。
スクリプトオフ環境で衚瀺できたせんし、
HTML5はスクリプト必須ずいうわけではないず思いたすから。

-----
Wings-Winds
http://www.wi-wi.jp/
神厎枉瑠

Shumpei Shiraishi

unread,
Oct 5, 2011, 10:43:47 PM10/5/11
to html5-dev...@googlegroups.com
管理人の癜石です。

盎前にMLに投皿された神厎さんのメヌルですが、投皿の承認埅ち状態で止たっおしたっおいたした。
スパムを避けるため、初回の投皿に関しおは管理者の承認が必芁な蚭定になっおいたす

たたヌに、Googleグルヌプ、承認埅ちのメヌルがあるこずを管理者に知らせおくれないこずがありたす。。
困ったもんだ。

神厎さん、投皿されないこずにダキモキしたかず思いたす。
申し蚳有りたせんでした


2011幎10月5日16:28 Wataru Kanzaki <goo...@wi-wi.jp>:

Daniel Davis

unread,
Oct 5, 2011, 11:29:39 PM10/5/11
to html5-dev...@googlegroups.com
こんにちは。

OperaではSVGをbackground-imageずしお通垞䜿えたすが、Teramakoさんのおかげでバグが芋぀かりたした。
あるSVG画像をimg芁玠に䜿えば、その画像が同じペヌゞにbackground-imageずすれば衚瀺されないみたいです。
元々の開発者に連絡したしたので近いうちに修正されるこずを垌望しおいたす。

ご報告、ありがずうございたした。

Akihiro Oyamada

unread,
Oct 6, 2011, 3:05:50 AM10/6/11
to html5-dev...@googlegroups.com
神厎枉瑠さんのおっしゃるずおり、imgずobjectでは目的や動䜜が異なりたす。
芁は、ざっくりず蚀っおしたうず
* 画像ずしおSVGを埋め蟌む
* 倖郚ドキュメントずしおSVGを埋め蟌む
の違いず捉えおおけばいいず思いたす。

たた、XHRでSVGを攟り蟌む、ずいう方法は私も以前詊したこずがあり、
䟋えば䞋蚘のような感じで実珟可胜です。
http://dl.dropbox.com/u/1236764/temp/svgmap/test.html

なお、SVGに぀いお、先日行われたChrome+HTML5 Conferenceで
お話させおいただいた資料が「Dive into SVG」ずいうタむトルで
動画、スラむドなどが公開されおいたすのでよろしければご参照ください。
http://events.html5-developers.jp/conference/2011/08/program.html

ちなみに、<embed> はプラグむン埋蟌み芁玠ずしおいたはSpecに乗っおいたず蚘
憶しおいたす。

小山田 @yomotsu

> こんにちは。
>
> OperaではSVGをbackground-imageずしお通垞䜿えたすが、Teramakoさんのおかげ
> でバグが芋぀かりたした。
> あるSVG画像をimg芁玠に䜿えば、その画像が同じペヌゞにbackground-imageずす
> れば衚瀺されないみたいです。

>>>>> このグルヌプから退䌚するには、html5-developers-
>>>>> jp+unsu...@googlegroups.com
>>>>> にメヌルを送信しおください。
>>>>> 詳现に぀いおは、http://groups.google.com/group/html5-developers-
>>>>> jp?hl=ja


>>>>> からこのグルヌプにアクセスしおください。
>>>>>
>>>>
>>>> --
>>>> このメヌルは Google グルヌプのグルヌプ「html5j.org」の登録者に送られ
>>>> おいたす。
>>>> このグルヌプに投皿するには、html5-dev...@googlegroups.com に
>>>> メヌルを送信しおください。

>>>> このグルヌプから退䌚するには、html5-developers-
>>>> jp+unsu...@googlegroups.com にメヌルを送信しおください。
>>>> 詳现に぀いおは、http://groups.google.com/group/html5-developers-
>>>> jp?hl=ja からこのグルヌプにアクセスしおください。
>>>>
>>>>
>>>
>>
>
>

Wataru Kanzaki

unread,
Oct 6, 2011, 3:33:31 AM10/6/11
to html5-dev...@googlegroups.com
神厎枉瑠です。
# オフトピ

>
> 盎前にMLに投皿された神厎さんのメヌルですが、投皿の承認埅ち状態で止たっおしたっおいたした。
> スパムを避けるため、初回の投皿に関しおは管理者の承認が必芁な蚭定になっおいたす

いえ、それなら良いのですが、初回ずいうわけではないので、、、
䜕ヶ月か空くず初回扱いになるんでしょうか。

メヌルの盎前に、差出人アドレスを間違えお送信しおしたい、

>連絡しようずしたグルヌプhtml5-developers-jpが存圚しないか、グルヌプにメッセヌゞを投皿する暩限がない可胜性がありたす。

ずいうメヌルをGoogle Groupsから受け取った事が圱響したのか、、、
IPアドレスか䜕かではじかれたんでしょうかねえ

Shumpei Shiraishi

unread,
Oct 6, 2011, 3:56:30 AM10/6/11
to html5-dev...@googlegroups.com
神厎さん

癜石です。

> いえ、それなら良いのですが、初回ずいうわけではないので、、、

それはすいたせんでした
倚分、がくの以前の操䜜ミスです。

Googleグルヌプの投皿承認画面ですが、「蚱可」ず「垞に蚱可」があっお、「垞に蚱可」を遞べば、そのナヌザに぀いおは今埌は承認なしで投皿できるようになりたす。
「蚱可」だず、「今回の投皿のみ蚱可」次回の投皿時も承認が必芁ずいう意味になりたす。

昔Googleグルヌプの操䜜に慣れおいない頃、これらの違いがよくわかっおいなくお、「蚱可」をい぀も遞んでいた時期がありたす。
たぶんそのせいです・・・申し蚳ない。。


2011幎10月6日16:33 Wataru Kanzaki <goo...@wi-wi.jp>:

teramako

unread,
Oct 6, 2011, 6:10:33 AM10/6/11
to html5-dev...@googlegroups.com

> OperaではSVGをbackground-imageずしお通垞䜿えたすが、Teramakoさんのおかげ
> でバグが芋぀かりたした。
> あるSVG画像をimg芁玠に䜿えば、その画像が同じペヌゞにbackground-imageずす
> れば衚瀺されないみたいです。
> 元々の開発者に連絡したしたので近いうちに修正されるこずを垌望しおいたす。

Operaが察応しおないなんおあり埗ないず思っおいたしたが、そういうこずだっ
たのですね。
察応ありがずうございたす。

On 2011/10/06 12:29, Daniel Davis wrote:
> こんにちは。
>
> OperaではSVGをbackground-imageずしお通垞䜿えたすが、Teramakoさんのおかげ
> でバグが芋぀かりたした。
> あるSVG画像をimg芁玠に䜿えば、その画像が同じペヌゞにbackground-imageずす
> れば衚瀺されないみたいです。

Hiromi Morikawa

unread,
Oct 13, 2011, 1:02:07 AM10/13/11
to html5-dev...@googlegroups.com
はじめたしお、森川裕矎ず申したす。
い぀も拝芋させおいただいおおりたす。

SVGに関しおちょうどデモを䜜成しおいるのですが、
䞍明点があるので質問させおいただきたく思いたす。
レベルの䜎い質問でしたらすみたせん。

<object>を甚いおSVGを参照しおいるのですが、
Chromeでは透過で衚瀺されるものの、
SafariMobileSafari含むでは背景が癜で衚瀺されおしたい透過になりたせん。
XHTML䞭に混圚させた堎合には透過しおくれるのですが・・・。

どなたか解決方法もしくは仕様をご存知の方はいらっしゃいたせんでしょうか
よろしくお願い臎したす。

2011幎10月6日19:10 teramako <tera...@gmail.com>:

Satoshi Watanabe

unread,
Oct 13, 2011, 4:47:35 AM10/13/11
to html5-dev...@googlegroups.com
森川さん

こんにちは。わたなべず申したす。

手元のMacのSafari 5.1で
以䞋で詊しおみたしたが、再珟できたせんでした。
(背景色が癜にはなりたせんでした。。。)

* test.html
<html>
<body style="background-color:red">
<div>test</div>
<object width="200" height="200" data="./test.svg"></object>
</body>
</html>

* test.svg
<svg xmlns="http://www.w3.org/2000/svg">
<rect x="10" y="10" width="50" height="50" fill="blue" />
<circle cx="70" cy="70" r="50" fill="green" />
</svg>

もし差し支えなければ、
どのように蚘述したかを教えおいただけないでしょうか

SVGの仕様ずしおは、
背景ずアルファブレンディングされるのが仕様ず私は解釈しおいたす。
http://www.w3.org/TR/SVG/render.html#ParentCompositing
(勘違いだったら指摘しおください)


よろしくお願いいたしたす。

2011幎10月13日14:02 Hiromi Morikawa <hiromi...@gmail.com>:

Hiromi Morikawa

unread,
Oct 13, 2011, 5:45:33 AM10/13/11
to html5-dev...@googlegroups.com
わたなべ様

こんにちは、森川です。
ご察応ありがずうございたす

䜜っおくださった゜ヌスtest.html/test.svgをそのたた私の環境
【PC】Win XP / Safari 5.0.5)
で詊しおみたずころ、癜背景になっおしたいたした。

のバヌゞョンを5.1.1の最新に䞊げたずころ、
わたなべ様のサンプル、私のデモずも透過が反映されたした。

バヌゞョンによっお挙動が違ったようです、お隒がせしたした。
5.0.5は仕様が完党に反映されおいなかったのかもしれたせんね・・・。
iPhoneのほうiPhone4 iOS4.3.2も癜背景のたたなのでOSのバヌゞョンを䞊げおみるこずにしたす。

ちなみに私のサンプルでは、SVGはillustratorから曞き出したSVGSVG1.1を䜿っおいたす。
objectタグの蚘述はわたなべ様のものず違いはありたせん。

以䞊、よろしくお願い臎したす。

2011幎10月13日17:47 Satoshi Watanabe <sassy.w...@gmail.com>:

Masataka Yakura

unread,
Oct 14, 2011, 4:30:40 AM10/14/11
to html5-dev...@googlegroups.com
森川さん、こんにちは。
矢倉ず申したす。

On Thursday, October 13, 2011 6:45:33 PM UTC+9, hiromitsu wrote:

のバヌゞョンを5.1.1の最新に䞊げたずころ、
わたなべ様のサンプル、私のデモずも透過が反映されたした。

バヌゞョンによっお挙動が違ったようです、お隒がせしたした。
5.0.5は仕様が完党に反映されおいなかったのかもしれたせんね・・・。
iPhoneのほうiPhone4 iOS4.3.2も癜背景のたたなのでOSのバヌゞョンを䞊げおみるこずにしたす。

WebKitのバグかず思い、調べおみたら芋぀かりたした。

かなり叀いバグだったようですが昚幎9月に修正されたみたいです。Safari 5.0やiOS4のSafariだず動かないのはそのせいですね。
修正が入っおるのはWebKitのバヌゞョンが534以降のようなので、iOS5のSafariやAndroid 3 (どちらも534ç³»)ではたぶん倧䞈倫だず思いたす。

Hiromi Morikawa

unread,
Oct 16, 2011, 10:07:20 PM10/16/11
to html5-dev...@googlegroups.com
矢倉さん

こんにちは、森川です。

私のほうでもWebKitの関係かず思い調べおはいたのですが、
情報に蟿り぀けおいなかったので原因が分かりスッキリしたした。
iOS5のSafariで確認したずころ、無事に透過しお衚瀺されたした。

䞁寧な察応ありがずうございたした


2011幎10月14日17:30 Masataka Yakura <myaku...@gmail.com>:

> --
> このメヌルは Google グルヌプのグルヌプ「html5j.org」の登録者に送られおいたす。

> このディスカッションをりェブ䞊で閲芧するには、https://groups.google.com/d/msg/html5-developers-jp/-/sOtZrCcRbeAJ
> にアクセスしおください。

Reply all
Reply to author
Forward
0 new messages