質問

加工した場合、open xmlドキュメントの色が様々な変換を適用ベースカラーを生成する相対色です。のためのインスタンス <a:satMod value="25000"> 改正、色の飽和による25%程度となっている。がに変換していを見つけることができ非常に少ない情報とい

<a:gamma> 

のドキュメント"ということをこの要素を指定する出力のカラーによって描画される発生の申請をsRGBガンマシフトの入力カラーです。"

<a:invGamma>

のドキュメント"ということをこの要素を指定する出力のカラーによって描画される発生の申請を逆sRGBガンマシフトの入力カラーです。"

いう計算しているコーヒーカップ&ソーサーへの変換ではこれらの小さなものに過ぎません。ではもっこす。

役に立ちましたか?

解決

そうですね。簡単に言うと、

  • <a:gamma> このsRGB値(前半0-1)は、リニアライズで変換する線形RGB).れつつも、リニアRGB値を保存しておくために使いsRGB(変換します0-255範囲がします。
  • <a:invGamma> は反対側の線形RGB値(前半0-1)およびdelinearizeで変換しsRGB).だと考えておりdelinearized RGB値を保存しておくために使いsRGB(変換します0-255範囲がします。

では、リニアRGB?この計算には ここではWikipediaのsRGBページ.

こちらもVBAバージョン:

Public Function sRGB_to_linearRGB(value As Double) 
   If value < 0# Then 
      sRGB_to_linearRGB = 0# 
      Exit Function 
   End If 
   If value <= 0.04045 Then 
      sRGB_to_linearRGB = value / 12.92 
      Exit Function 
   End If 
   If value <= 1# Then 
      sRGB_to_linearRGB = ((value + 0.055) / 1.055) ^ 2.4 
      Exit Function 
   End If 
   sRGB_to_linearRGB = 1# 
End Function 

Public Function linearRGB_to_sRGB(value As Double) 
   If value < 0# Then 
      linearRGB_to_sRGB = 0# 
      Exit Function 
   End If 
   If value <= 0.0031308 Then 
      linearRGB_to_sRGB = value * 12.92 
      Exit Function 
   End If 
   If value < 1# Then 
      linearRGB_to_sRGB = 1.055 * (value ^ (1# / 2.4)) - 0.055 
      Exit Function 
   End If 
   linearRGB_to_sRGB = 1# 
End Function 

value お渡しは、R、G、B成分を表す0-1の範囲は、sRGBはリニアRGB.みなと同じ範囲を、後半0-1、お客様の必要に応じて、すでに変換す0-255範囲の構築のためにカラーです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top