=encoding euc-jp =head1 名前 SVG::DOM - SVGオブジェクトのためのDOM (Document Object Model)メソッドのためのライブラリ =head1 概説 SVG::DOM はgetElements,getChildren, getNextSiblingのようなDOMライクなメソッドを 通してSVG要素にアクセスし、操作するための選んだメソッドを提供します。 現在のところ、読み込み操作のためのメソッドだけが提供されています。 SVG要素を操作するためのメソッドは、将来のリリースで追加されるでしょう。 =head1 概要 my $svg=new SVG(id=>"svg_dom_synopsis", width=>"100", height=>"100"); my %attributes=$svg->getAttributes; my $group=$svg->group(id=>"group_1"); my $name=$group->getElementName; my $id=$group->getElementID; $group->circle(id=>"circle_1", cx=>20, cy=>20, r=>5, fill=>"red"); my $rect=$group->rect(id=>"rect_1", x=>10, y=>10, width=>20, height=>30); my $width=$rect->getAttribute("width"); my $has_children=$group->hasChildren(); my @children=$group->getChildren(); my $kid=$group->getFirstChild(); do { print $kid->xmlify(); } while ($kid=$kid->getNextSibling); my @ancestors=$rect->getParents(); my $is_ancestor=$group->isAncestor($rect); my $is_descendant=$rect->isDescendant($svg); my @rectangles=$svg->getElements("rect"); my $allelements_arrayref=$svg->getElements(); ..等々... =head1 メソッド =head2 @elements = $obj->getElements($element_name) ドキュメントの中で指定された名前(つまりタイプ)を持つ全ての要素のリストを返します。 もし要素名が指定されないと、ドキュメントの中の全ての要素のリストを返します。 スカラ・コンテキストでは、配列リファレンスを返します。 =head2 @children = $obj->getChildren() 現在のノードで定義されている全ての子供のリストを返します。子供がなければundefを返します。 スカラ・コンテキストでは配列リファレンスを返します。 エイリアス: getChildElements(), getChildNodes() =head2 @children = $obj->hasChildren() 現在のノードが子供要素を持っていれば1、子供がなければ0を返します。 エイリアス: hasChildElements, hasChildNodes() =head2 $ref = $obj->getFirstChild() 現在のノードの先頭の子供要素を返します。子供がなければundefを返します。 =head2 $ref = $obj->getLastChild() 現在のノードの最後の子供要素を返します。子供がなければundefを返します。 =head2 $ref = $obj->getSiblings() 現在のノードを含めて、親ノードで定義されている全ての子供のリストを返します。 =head2 $ref = $obj->getNextSibling() 親ノードの次の子供要素を返します。これが最後の子供であればundefを返します。 =head2 $ref = $obj->getPreviousSibling() 親ノードの1つ前の子供要素を返します。これが先頭の子供であればundefを返します。 =head2 $index = $obj->getChildIndex() 親ノードの子供リストでの、この要素の場所を0始まりで返します。 =head2 $element = $obj->getChildAtIndex($index) 親ノードの子供リストでの、指定されたインデックスの子供要素を返します。 =head2 $ref = $obj->getParentElement() 現在のノードの親を返します。 エイリアス: getParent() =head2 @refs = $obj->getParentElements() 直接の親から始まる、現在のノードの親のリストを返します。そのリストの最後のメンバーは ドキュメント要素になるはずです。 エイリアス: getParents() =head2 $name = $obj->getElementName() 要素の名前(つまりIDではなくタイプ)が入った文字列を返します。 エイリアス: getType(), getTagName(), getNodeName() =head2 $ref = $svg->getElementByID($id) エイリアス: getElementbyID() $idというIDを持った要素へのリファレンスを返します。このIDを持つ要素がなければundefを返します。 =head2 $id = $obj->getElementID() 現在のノードのIDが入った文字列を返します。IDがなければundefを返します。 =head2 $ref = $obj->getAttributes() 現在のノードの属性名と値のハッシュ・リファレンスを返します。 =head2 $value = $obj->getAttribute($name); $nameという属性名の属性の値が入った文字列を返します。 =head2 $cdata = $obj->getCDATA() 現在のノードの簡単な(つまり文字通りの内容)を返します。 エイリアス: getCdata(), getData() =head2 $boolean = $obj->isAncestor($element) 現在のノードが指定された要素の先祖であれば1、そうでなければ0を返します。 Returns 1 if the current node is an ancestor of the specified element, otherwise 0. =head2 $boolean = $obj->isDescendant($element) 現在のノードが指定された要素の子孫であれば1、そうでなければ0を返します。 =head1 作者 Ronan Oger, ronan@roasp.com =head1 参考資料 perl(1), L, L, L, L, L