目次詳細目次前章次章要素属性プロパティ

12 色

目次

12.1 概要

SVG においてはすべての色は sRGB 色空間 [SRGB] で指定される。 SVG-UA は、少なくとも, CSS2 仕様の 色単位の節 にて規定される色のふるまいに対する要件,および CSS2 仕様が定める 最小限のガンマ補正規則 に適合するものとする。 All SVG colors are specified in the sRGB color space [SRGB]. At a minimum, SVG user agents shall conform to the color behavior requirements specified in the color units section and the minimal gamma correction rules defined in the CSS2 specification.

更に、 SVG 内容では 塗りの指定 で述べられるように、 ICC プロファイル [ICC42] を利用する代替色指定も指定できる。 SVG-UA が ICC 色をサポートしている場合は ICC ベースの色指定が(もし与えられているなら) sRGB 色指定より優先される。 そうでない場合、 RGB 予備色が用いられなければならない。 ICC ベースの色指定が与えられたとしても、色補間は RGB 色空間で行われることに注意( color-interpolation プロパティを見よ)。 Additionally, SVG content can specify an alternate color specification using an ICC profile [ICC42] as described in Specifying paint. If ICC-based colors are provided and the SVG user agent supports ICC color, then the ICC-based color takes precedence over the sRGB color specification; otherwise, the RGB fallback colors must be used. Note that, in this specification, color interpolation occurs in an RGB color space even if an ICC-based color specification is provided (see ‘color-interpolation’).

12.2 color プロパティ

color プロパティは、 fill, stroke, stop-color, flood-color, lighting-color プロパティに間接的に与え得る色の値( currentColor )を提供する。 The ‘color’ property is used to provide a potential indirect value (currentColor) for the ‘fill’, ‘stroke’, ‘stop-color’, ‘flood-color’ and ‘lighting-color’ properties.

color
color property
値:<color> | inherit
初期値:UA に依存
適用対象: fill, stroke, stop-color, flood-color, lighting-color が適用される要素
継承:される
百分率:N/A
メディア:視覚
アニメーション:

この仕様で与えられる追加の情報を除き, このプロパティの正式な定義 は CSS2 ([CSS2], 14.1 節) により与えられる。 Except for any additional information provided in this specification, the normative definition of the property is in CSS2 ([CSS2], section 14.1).

12.3 カラープロファイル記述

12.3.1 カラープロファイル記述の概観

International Color Consortium は、入力装置と出力装置の色特性を文書化するための,標準 ICC プロファイル [ICC42] を確立した。 これらのプロファイルの利用により、異なる装置間にわたる変換と正確な視覚データの再現が可能になる。 The International Color Consortium has established a standard, the ICC Profile [ICC42], for documenting the color characteristics of input and output devices. Using these profiles, it is possible to build a transform and correct visual data for viewing on different devices.

カラープロファイル記述 は、 ICC プロファイルと, SVG 内容に現れるそれらの ICC プロファイルへの参照との間の,橋渡しを提供する。 カラープロファイル記述は、 UA が持つ既知のカラープロファイルのリストに追加され,適切なプロファイルの選択に用いられる。 カラープロファイル記述は、カラープロファイルのウェブにおける所在, プロファイルの参照名, 描画インテント( rendering intent )についての情報を表す記述子を含む。 A color profile description provides the bridge between an ICC profile and references to that ICC profile within SVG content. The color profile description is added to the user agent's list of known color profiles and then used to select the relevant profile. The color profile description contains descriptors for the location of the color profile on the Web, a name to reference the profile and information about rendering intent.

12.3.2 プロファイル記述を定める2つの方法

カラープロファイル記述は、次のいずれかの方法で指定される: Color profile descriptions can be specified in either of the following ways:

同じ name 値のカラープロファイルが color-profile 要素と CSS スタイルシート内の @color-profile 規則の両方で認識された場合、 UA はまず @color-profile 規則を優先して,プロファイルの特定を試みるものとする。 If a color profile with the same name value has been identified by both a ‘color-profile’ element and @color-profile rules within a CSS style sheet, then the user agent shall first attempt to locate the profile by using the specifications in the @color-profile rules first.

12.3.3 color-profile 要素

color-profile
分類:
None
内容モデル:
以下の要素の任意個数, 任意順序の組み合わせ:
属性:
DOM インタフェース:

属性定義

xlink:href = "<iri>"

ICC プロファイルリソースの位置。 The location of an ICC profile resource.

アニメーション:不可
local = "<string>"

ローカルに格納されているカラープロファイルを識別する,一意的な ID 。 <string> は International Color Consortium により定められているプロファイル固有の ID を表す。 xlink:href 属性と local 属性の両方が指定された場合、 UA はシステムにローカルに格納されているカラープロファイルの検索を先に行い,存在しなければ, xlink:href 属性から特定されるリソースの利用を試みることになる。 (注記:プロファイル記述フィールドは、プロファイルの識別 ID を表すわけではない 。 現在の ICC 提案では、プロファイルの識別 ID はプロファイルヘッダの MD5 符号化値である。) The unique ID for a locally stored color profile. <string> is the profile's unique ID as specified by International Color Consortium. If both the ‘xlink:href’ and the ‘local’ attributes are specified, then the user agent shall search the local system for the locally stored color profile first, and, if not available locally, then attempt to use the resource identified by the ‘xlink:href’ attribute. (Note: Profile description fields do not represent a profile's unique ID. With current ICC proposals, the profile's unique ID is an MD5-encoded value within the profile header.)

アニメーション:不可
name = "<name>"

ICC 色指定に利用するカラープロファイルを特定するための, fill, stroke, stop-color, flood-color, lighting-color プロパティで値の最初のパラメタとして利用される icc-color 指定の名前であり、 color-profile プロパティの値として用いることが可能な名前。 注記:<name> が与えられていない場合、カラープロファイル記述を参照できなくなる。 名前 "sRGB" は定義済みであり、 <name> が "sRGB" に設定されたカラープロファイル記述は無視される。 CSS 字句走査解析規則 ([CSS2], D.2 節) との整合性においては、キーワード "sRGB" の文字の大小は区別されない。 しかしながら、業界慣行との整合性を保つにはこの大文字混じりの "sRGB" の使用が推奨される。 The name which is used as the first parameter for icc-color specifications within ‘fill’, ‘stroke’, ‘stop-color’, ‘flood-color’ and ‘lighting-color’ property values to identify the color profile to use for the ICC color specification and the name which can be the value of the ‘color-profile’ property. Note that if <name> is not provided, it will be impossible to reference the given color profile description. The name "sRGB" is predefined; any color profile descriptions with <name> set to "sRGB" will be ignored. For consistency with CSS lexical scanning and parsing rules ([CSS2], section D.2), the keyword "sRGB" is case-insensitive; however, it is recommended that the mixed capitalization "sRGB" be used for consistency with common industry practice.

アニメーション:不可
rendering-intent = "auto | perceptual | relative-colorimetric | saturation | absolute-colorimetric"

rendering-intent は、既定のもの以外のカラープロファイル描画インテントを指定できるようにする。 rendering-intent は、主に CMYK 色空間に対応するカラープロファイルに適用される。 それぞれの値は、描画対象の装置の色域( color gamut )に色を変換する際に用いられる,種々の手法に対応する: ‘rendering-intent’ permits the specification of a color profile rendering intent other than the default. ‘rendering-intent’ is applicable primarily to color profiles corresponding to CMYK color spaces. The different options cause different methods to be used for translating colors to the color gamut of the target rendering device:

auto
これが既定のふるまいである。 UA は内容の種類に応じて最良のインテントを決定する。 プロファイルが埋め込まれた画像内容においては、そのプロファイルが指定するインテントが望まれたものであるものとする。 他の場合、 UA は,現在のプロファイルを利用して,そのインテントを強制し,プロファイル自身に格納されたインテントを上書きするものとする。 This is the default behavior. The user agent determines the best intent based on the content type. For image content containing an embedded profile, it shall be assumed that the intent specified within the profile is the desired intent. Otherwise, the user agent shall use the current profile and force the intent, overriding any intent that might be stored in the profile itself.
perceptual
この手法は,画像においてはしばしば好まれる選択であり、色と色との関係を保つ。 これは、対象装置の色域に変換されるときに画素間における色の相対関係がなるべく維持されるようにする。 色相の変化と色の不連続性を避け,風景の全体的な外観をできるだけ保つため、一部の画素の色は,対象装置の色域に含まれていても変更されることがある。 This method, often the preferred choice for images, preserves the relationship between colors. It attempts to maintain relative color values among the pixels as they are mapped to the target device gamut. Sometimes pixel values that were originally within the target device gamut are changed in order to avoid hue shifts and discontinuities and to preserve as much as possible the overall appearance of the scene.
saturation
元の画素の色の彩度(クロマ — chroma )の相対関係を保つ。 色域外の色は色域内にぎりぎり入る同じ彩度の色に変換される。 Preserves the relative saturation (chroma) values of the original pixels. Out of gamut colors are converted to colors that have the same saturation but fall just inside the gamut.
relative-colorimetric
色域内の色はそのままにされる。 この手法では通常、色域外の色は色域内にぎりぎり入る同じ明度( lightness )の色に変換される。 Leaves colors that fall inside the gamut unchanged. This method usually converts out of gamut colors to colors that have the same lightness but fall just inside the gamut.
absolute-colorimetric
色の変換において白色点の一致調整をしない。 これは一般的には推奨されない。 Disables white point matching when converting colors. This option is generally not recommended.
アニメーション:不可

12.3.4 CSS @color-profile 規則

文書に CSS によるスタイル付けがなされている場合は、カラープロファイル記述の指定に @color-profile 規則が利用できる。 一般書式は次で与えられる: When the document is styled using CSS, the @color-profile rule can be used to specify a color profile description. The general form is:

@color-profile { <color-profile-description> }

ここで <color-profile-description> の書式は: where the <color-profile-description> has the form:

記述子: 値;
[...]
記述子: 値;

それぞれの @color-profile 規則は、すべてのカラープロファイル記述子に対する値を暗黙的または明示的に指定する。 規則において明示的に値が与えられていない記述子は、この仕様で挙げられている各記述子の初期値をとる。 これらの記述子は,単にこれらが定義された @color-profile 規則の文脈において適用されるものであり、文書言語の要素に適用されるものではない。 したがって、どの要素に記述子が適用されるかや,子要素への値の継承といった概念は存在しない。 Each @color-profile rule specifies a value for every color profile descriptor, either implicitly or explicitly. Those not given explicit values in the rule take the initial value listed with each descriptor in this specification. These descriptors apply solely within the context of the @color-profile rule in which they are defined, and do not apply to document language elements. Thus, there is no notion of which elements the descriptors apply to, or whether the values are inherited by child elements.

以下は <color-profile-description> の記述子である: The following are the descriptors for a <color-profile-description>:

src
値:sRGB | <local-profile> | <iri> | (<local-profile> <iri>) | inherit
初期値:sRGB
メディア:視覚
sRGB
ソースプロファイルは sRGB 色空間。 CSS 字句走査解析規則 ([CSS2], D.2 節) との整合性においては、キーワード "sRGB" の文字の大小は区別されない。 しかしながら、業界慣行との整合性を保つには,この大文字混じりの "sRGB" の使用が推奨される。 The source profile is the sRGB color space. For consistency with CSS lexical scanning and parsing rules ([CSS2], section D.2), the keyword "sRGB" is case-insensitive; however, it is recommended that the mixed capitalization "sRGB" be used for consistency with common industry practice.
<local-profile>

ソースプロファイルはローカルに保持されているプロファイル。 <local-profile> の構文は: The source profile is a locally-stored profile. The syntax for <local-profile> is:

"local(" + <string> + ")"

ここで <string> は International Color Consortium により定められたプロファイルの識別 ID である。 (注記:プロファイル記述フィールドは、プロファイルの識別 ID を表現するわけではない 。 現在の ICC 提案では、プロファイルの識別 ID はプロファイルヘッダの MD5 符号化値である。) where <string> is the profile's unique ID as specified by International Color Consortium. (Note: Profile description fields do not represent a profile's unique ID. With current ICC proposals, the profile's unique ID is an MD5-encoded value within the profile header.)

<iri>
ソースプロファイルはカラープロファイルへの IRI 参照 The source profile is a IRI reference to a color profile.
(<local-profile> <iri>)
2つのプロファイルが指定される。 <local-profile> がシステムに見つからない場合に <iri> が用いられる。 Two profiles are specified. If <local-profile> cannot be found on the local system, then the <iri> is used.
name
値:<name>
初期値:undefined
メディア:視覚
<name>
color-profile 要素の name 属性についての記述を見よ。 <name> が与えられていない場合、@color-profile 定義への参照ができなくなることに注意。 See the description for the ‘name’ attribute on the ‘color-profile’ element. Note that if <name> is not provided, it will be impossible to reference the given @color-profile definition.
rendering-intent
値:auto | perceptual | relative-colorimetric | saturation | absolute-colorimetric
初期値:auto
メディア:視覚
アニメーション:不可

color-profile 要素の rendering-intent 属性についての記述を見よ。 See the description for the ‘rendering-intent’ attribute on the ‘color-profile’ element.

12.3.5 color-profile プロパティ

color-profile
値:auto | sRGB | <name> | <iri> | inherit
初期値:auto
適用対象: ラスター画像を参照する image 要素
継承:される
百分率:N/A
メディア:視覚
アニメーション:
auto
これが既定のふるまいである。 内容データの中で,より精密な埋め込みプロファイルが指定されていない限り、すべての色は sRGB 色空間に属するものとみなされる。 データ内にプロファイルが埋め込まれている画像では、そのプロファイルが利用される。 プロファイルを持たない画像に対しては、 sRGB プロファイルが利用される。 This is the default behavior. All colors are presumed to be defined in the sRGB color space unless a more precise embedded profile is specified within content data. For images that do have a profile built into their data, that profile is used. For images that do not have a profile, the sRGB profile is used.
sRGB

ソースプロファイルは sRGB とみなされる。 auto との違いは、画像内に埋め込まれたプロファイルを上書きすることである。 The source profile is assumed to be sRGB. This differs from auto in that it overrides an embedded profile inside an image.

CSS 字句走査解析規則 ([CSS2], D.2 節) との整合性においては、キーワード "sRGB" の文字の大小は区別されない。 しかしながら、業界慣行との整合性を保つには,この大文字混じりの "sRGB" の使用が推奨される。 For consistency with CSS lexical scanning and parsing rules ([CSS2], section D.2), the keyword "sRGB" is case-insensitive; however, it is recommended that the mixed capitalization "sRGB" be used for consistency with common industry practice.

<name>
UA のカラープロファイル記述データベースに存在する定義済みのカラープロファイルに対応する名前。 UA は、カラープロファイル記述データベースの中から,名前記述子が <name> に一致する カラープロファイル記述 エントリを検索し、見つかったもののうち最後に一致したものを利用する。 見つかった場合は画像内に埋め込まれたプロファイルを上書きし、見つからなかった場合は画像内に埋め込まれたプロファイルが利用される。 A name corresponding to a defined color profile that is in the user agent's color profile description database. The user agent searches the color profile description database for a color profile description entry whose name descriptor matches <name> and uses the last matching entry that is found. If a match is found, the corresponding profile overrides an embedded profile inside an image. If no match is found, then the embedded profile inside the image is used.
<iri>
ソースカラープロファイルへの IRI 参照 。 参照されたカラープロファイルは、画像内に埋め込まれたプロファイルを上書きする。 A IRI reference to the source color profile. The referenced color profile overrides an embedded profile inside the image.

12.4 DOM インタフェース

12.4.1 インタフェース SVGColorProfileElement

SVGColorProfileElement インタフェースは color-profile 要素に対応する。 The SVGColorProfileElement interface corresponds to the ‘color-profile’ element.

interface SVGColorProfileElement : SVGElement,
                                   SVGURIReference,
                                   SVGRenderingIntent {
  attribute DOMString local;
  attribute DOMString name;
  attribute unsigned short renderingIntent;
};
属性
local (DOMString)

与えられた要素の local 属性に対応する。 Corresponds to attribute ‘local’ on the given element.

name (DOMString)

与えられた要素の name 属性に対応する。 Corresponds to attribute ‘name’ on the given element.

renderingIntent (unsigned short)

与えられた要素の rendering-intent 属性に対応する。 描画インテントのタイプ。 SVGRenderingIntent で定義されている定数のいずれか。 この属性の値は SVGRenderingIntent で定義される RENDERING_INTENT_* 定数の中で rendering-intent 属性に対応する値になる。 Corresponds to attribute ‘rendering-intent’ on the given element. The value of this attribute is the value of the the RENDERING_INTENT_* constant defined on SVGRenderingIntent that corresponds to the value of the ‘rendering-intent’ attribute.

12.4.2 インタフェース SVGColorProfileRule

SVGColorProfileRule インタフェースは CSS スタイルシートにおける @color-profile 規則を表現する。 @color-profile 規則は文書から参照可能な ICC プロファイルを識別する。 The SVGColorProfileRule interface represents an @color-profile rule in a CSS style sheet. An @color-profile rule identifies a ICC profile which can be referenced within a given document.

SVGColorProfileRule インタフェースのサポートは、 CSS によるスタイル付け をサポートする UA にのみ要求される。 Support for the SVGColorProfileRule interface is only required in user agents that support styling with CSS.

interface SVGColorProfileRule : SVGCSSRule,
                                SVGRenderingIntent {
  attribute DOMString src setraises(DOMException);
  attribute DOMString name setraises(DOMException);
  attribute unsigned short renderingIntent setraises(DOMException);
};
属性
src (DOMString)

@color-profile 規則の src プロパティに対応する。 Corresponds to descriptor src within an @color-profile rule.

設定時の例外
DOMException, code NO_MODIFICATION_ALLOWED_ERR
読み取り専用の属性 の変更を試みたときに投出される。 Raised on an attempt to change the value of a read only attribute.
name (DOMString)

@color-profile 規則の name 記述に対応する。 Corresponds to descriptor ‘name’ within an @color-profile rule.

設定時の例外
DOMException, code NO_MODIFICATION_ALLOWED_ERR
読み取り専用の属性 の変更を試みたときに投出される。 Raised on an attempt to change the value of a read only attribute.
renderingIntent (unsigned short)

描画インテントのタイプ。 SVGRenderingIntent で定義される定数のいずれか。 The type of rendering intent, identified by one of the SVGRenderingIntent constants.

設定時の例外
DOMException, code NO_MODIFICATION_ALLOWED_ERR
読み取り専用の属性 の変更を試みたときに投出される。 Raised on an attempt to change the value of a read only attribute.
目次詳細目次前章次章要素属性プロパティ