<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>色胚子部落 &#187; 軟體教學</title>
	<atom:link href="http://blog.colorbase.tw/tag/%e8%bb%9f%e9%ab%94%e6%95%99%e5%ad%b8/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.colorbase.tw</link>
	<description>訊息多變的時代裡，需要多學習多思考</description>
	<lastBuildDate>Mon, 15 Aug 2011 03:29:59 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>天啊！我的Photoshop變聰明了 &#8211; 利用指令碼進階自動化入門</title>
		<link>http://blog.colorbase.tw/programming/165</link>
		<comments>http://blog.colorbase.tw/programming/165#comments</comments>
		<pubDate>Sun, 20 Jul 2008 08:37:12 +0000</pubDate>
		<dc:creator>阿育</dc:creator>
				<category><![CDATA[程式設計]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[photoshop]]></category>
		<category><![CDATA[scripting]]></category>
		<category><![CDATA[vbscript]]></category>
		<category><![CDATA[指令碼]]></category>
		<category><![CDATA[軟體教學]]></category>

		<guid isPermaLink="false">http://blog.colorbase.tw/?p=165</guid>
		<description><![CDATA[Photoshop提供「動作(action)」來加快工作效率，但是動作實質上只是一種「巨集(Macro)」，遇到較為特殊的狀況就顯得力不從心了，但是不要緊！因為Photoshop還提供另一種更強大的功能「指令碼(Scripting)」，可以讓使用者有彈性的達成更複雜的自動化動作。 
 Photoshop Scripting支援多種程式語言操控Photoshop執行及判斷各式各樣的動作，印象中如果沒記錯的話是從7版開始支援的，目前CS3版支援的腳本語言(Script language)如下：


AppleScript (Mac系統適用) 
VBScript (Windows系統適用) 
JavaScript (Windows與Mac系統皆適用) 

另外除了可以利用腳本語言撰寫指令碼，Photoshop也提供以ActiveX的方式，讓使用編譯式語言的使用者也能夠輕易操縱Photoshop。
記得我第一次發現Photoshop Scripting這玩意時，真是驚為天人，直呼「這真是太神奇了」，但是一直到現在好像鮮少人提及、談論這東西，它到目前始終算是蠻冷門的東西，或許是因為美術設計人員沒心思研究這個看似複雜難用的功能吧。
如何執行指令碼
1.從Photoshop中開啟：
在功能表的「檔案 &#62;&#62; 指令碼」中內建許多實用的功能，若使用者自行撰寫指令碼，可以使用「瀏覽」開啟自訂的指令碼。

2.將指令變成Photoshop功能表的一部分：
將指令碼檔案放到「Photoshop安裝目錄\預設集\指令碼\」中，再次開啟Photoshop就會顯示在「檔案 &#62;&#62; 指令碼」的子選單中了。
註：CS3版本必須為*.jsx的JavaScript檔案
3.直接執行：
可以直接點兩下自訂的指令碼檔案，讓系統自動以預設的程式開啟指令碼檔案，如果你的指令碼是*.vbs的VBScript檔案或*.js的JavaScript檔案，通常系統預設開啟的程式為「Microsoft (r) Windows Based Script Host」，但是如果安裝了某些編輯器，可能會被更改為由該編輯器開啟，此時可以將vbs檔案設定成「系統目錄\system32\wscript.exe」執行。
在CS3版本中可以將JavaScript存成，*.jsx，則預設會由Photoshop所提供的「ExtendScript Toolkit 2 and Debugger」執行。
Photoshop Scripting基礎
對於想學習Photoshop Scripting(以下簡稱PSS)卻尚未學習過任何程式語言的人，建議學習JavaScript，因為JavaScript有以下優點：

JavaScript通用Windows與Mac系統。(針對Photoshop而言) 
JS的使用人數相當龐大，網路資源相當豐富。 
腳本式語言，不僅撰寫方便(如果沒有工具的話記事本就可以編輯)，學習的痛苦度也會比較低。 

由於我沒接觸過AppleScript，所以只簡單談談VBScript(以下簡稱VBS)及JavaScript(以下簡稱JS)的小小心得，以及兩者之間的差異，有興趣的人可以參閱「Photoshop安裝目錄\指令碼手冊\」，裡面包含詳細的說明文件及範例檔。
備註：編譯式語言如果要使用ActiveX控制Photoshop，建議參閱Photoshop VBScript參考文件。
以下程式碼JS存成*.js或CS3版的*.jsx，VBS存成*.vbs
建立及使用PSS物件
Application物件，代表整個Phoshop應用程式
JS，使用#target photoshop宣告，之後就能直接操作PSS所提供的各種物件

#target photoshop
//使用Application物件將Photoshop推到最上層
app.bringToFront();

VBS，利用CreateObject建立Photoshop所提供的ActiveX物件

Dim app
Set app = CreateObject( &#34;Photoshop.Application&#34; )
'使用Application物件將Photoshop推到最上層
app.bringToFront

Application.Documents物件
Doucments是Document的集合，簡單一點說，Documents就是指目前所有開啟的圖檔，例如：可以利用Doucments來判斷目前Photoshop開啟幾個圖檔
  JS，使用length屬性得知目前開啟圖檔數量

#target photoshop
alert(&#34;目前開啟圖檔數量：&#34; + app.documents.length);

VBS，與JS不同，必須使用count屬性得知目前開啟圖檔數量

Dim app
Set app = CreateObject( &#34;Photoshop.Application&#34; )
MsgBox(&#34;目前開啟的圖檔數量：&#34; &#38; app.documents.count)

Document物件 
既然Documents物件是指目前所有開啟的圖檔，那麼Document(沒有複數s)，就是指目前所開啟的某個圖檔，例如：可以利用activeDocument，取得目前正在使用的圖檔尺寸。 
JS

#target photoshop
//判斷是否有開啟圖檔
if(app.documents.length ...]]></description>
			<content:encoded><![CDATA[<p>Photoshop提供「動作(action)」來加快工作效率，但是動作實質上只是一種「<a href="http://zh.wikipedia.org/w/index.php?title=%E5%B7%A8%E9%9B%86&amp;variant=zh-tw" target="_blank">巨集(Macro)</a>」，遇到較為特殊的狀況就顯得力不從心了，但是不要緊！因為Photoshop還提供另一種更強大的功能「<a href="http://zh.wikipedia.org/w/index.php?title=%E8%84%9A%E6%9C%AC%E8%AF%AD%E8%A8%80&amp;variant=zh-tw" target="_blank">指令碼(Scripting)</a>」，可以讓使用者有彈性的達成更複雜的自動化動作。 </p>
<p> <span id="more-165"></span>Photoshop Scripting支援多種程式語言操控Photoshop執行及判斷各式各樣的動作，印象中如果沒記錯的話是從7版開始支援的，目前CS3版支援的<a href="http://zh.wikipedia.org/w/index.php?title=%E8%84%9A%E6%9C%AC%E8%AF%AD%E8%A8%80&amp;variant=zh-tw" target="_blank">腳本語言(Script language)</a>如下：
</p>
<ul>
<li>AppleScript (Mac系統適用) </li>
<li>VBScript (Windows系統適用) </li>
<li>JavaScript (Windows與Mac系統皆適用) </li>
</ul>
<p>另外除了可以利用腳本語言撰寫指令碼，Photoshop也提供以<a href="http://zh.wikipedia.org/w/index.php?title=ActiveX&amp;variant=zh-tw" target="_blank">ActiveX</a>的方式，讓使用編譯式語言的使用者也能夠輕易操縱Photoshop。</p>
<p>記得我第一次發現Photoshop Scripting這玩意時，真是驚為天人，直呼「這真是太神奇了」，但是一直到現在好像鮮少人提及、談論這東西，它到目前始終算是蠻冷門的東西，或許是因為美術設計人員沒心思研究這個看似複雜難用的功能吧。</p>
<p><strong><span style="color: #008080">如何執行指令碼</span></strong></p>
<p><strong>1.從Photoshop中開啟：</strong></p>
<p>在功能表的「檔案 &gt;&gt; 指令碼」中內建許多實用的功能，若使用者自行撰寫指令碼，可以使用「瀏覽」開啟自訂的指令碼。</p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/001.gif"><img class="alignnone size-medium wp-image-166" title="指令碼功能表" alt="" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/001-400x196.gif" width="400" height="196" /></a></p>
<p><strong>2.將指令變成Photoshop功能表的一部分：</strong></p>
<p>將指令碼檔案放到「Photoshop安裝目錄\預設集\指令碼\」中，再次開啟Photoshop就會顯示在「檔案 &gt;&gt; 指令碼」的子選單中了。</p>
<p>註：CS3版本必須為*.jsx的JavaScript檔案</p>
<p><strong>3.直接執行：</strong></p>
<p>可以直接點兩下自訂的指令碼檔案，讓系統自動以預設的程式開啟指令碼檔案，如果你的指令碼是*.vbs的VBScript檔案或*.js的JavaScript檔案，通常系統預設開啟的程式為「Microsoft (r) Windows Based Script Host」，但是如果安裝了某些編輯器，可能會被更改為由該編輯器開啟，此時可以將vbs檔案設定成「系統目錄\system32\wscript.exe」執行。</p>
<p>在CS3版本中可以將JavaScript存成，*.jsx，則預設會由Photoshop所提供的「ExtendScript Toolkit 2 and Debugger」執行。</p>
<p><strong><span style="color: #008080">Photoshop Scripting基礎</span></strong></p>
<p>對於想學習Photoshop Scripting(以下簡稱PSS)卻尚未學習過任何程式語言的人，建議學習JavaScript，因為JavaScript有以下優點：</p>
<ol>
<li>JavaScript通用Windows與Mac系統。(針對Photoshop而言) </li>
<li>JS的使用人數相當龐大，網路資源相當豐富。 </li>
<li>腳本式語言，不僅撰寫方便(如果沒有工具的話記事本就可以編輯)，學習的痛苦度也會比較低。 </li>
</ol>
<p>由於我沒接觸過AppleScript，所以只簡單談談VBScript(以下簡稱VBS)及JavaScript(以下簡稱JS)的小小心得，以及兩者之間的差異，有興趣的人可以參閱「Photoshop安裝目錄\指令碼手冊\」，裡面包含詳細的說明文件及範例檔。</p>
<p>備註：編譯式語言如果要使用ActiveX控制Photoshop，建議參閱Photoshop VBScript參考文件。</p>
<p>以下程式碼JS存成*.js或CS3版的*.jsx，VBS存成*.vbs</p>
<p><strong>建立及使用PSS物件</strong></p>
<p>Application物件，代表整個Phoshop應用程式</p>
<p>JS，使用#target photoshop宣告，之後就能直接操作PSS所提供的各種物件</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:e7260e77-5e65-4ebc-af8d-01c0054aa9ca" class="wlWriterSmartContent">
<pre class="js:nogutter" name="code">#target photoshop
//使用Application物件將Photoshop推到最上層
app.bringToFront();</pre>
</div>
<p>VBS，利用CreateObject建立Photoshop所提供的ActiveX物件</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:e7260e77-5e65-4ebc-af8d-01c0054aa9ca" class="wlWriterSmartContent">
<pre class="vb:nogutter" name="code">Dim app
Set app = CreateObject( &quot;Photoshop.Application&quot; )
'使用Application物件將Photoshop推到最上層
app.bringToFront</pre>
</div>
<p><strong>Application.Documents物件</strong></p>
<p>Doucments是Document的集合，簡單一點說，Documents就是指目前所有開啟的圖檔，例如：可以利用Doucments來判斷目前Photoshop開啟幾個圖檔<br />
  <br />JS，使用length屬性得知目前開啟圖檔數量</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:e7260e77-5e65-4ebc-af8d-01c0054aa9ca" class="wlWriterSmartContent">
<pre class="js:nogutter" name="code">#target photoshop
alert(&quot;目前開啟圖檔數量：&quot; + app.documents.length);</pre>
</div>
<p>VBS，與JS不同，必須使用count屬性得知目前開啟圖檔數量</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:e7260e77-5e65-4ebc-af8d-01c0054aa9ca" class="wlWriterSmartContent">
<pre class="vb:nogutter" name="code">Dim app
Set app = CreateObject( &quot;Photoshop.Application&quot; )
MsgBox(&quot;目前開啟的圖檔數量：&quot; &amp; app.documents.count)</pre>
</div>
<p><strong>Document物件</strong> </p>
<p>既然Documents物件是指目前所有開啟的圖檔，那麼Document(沒有複數s)，就是指目前所開啟的某個圖檔，例如：可以利用activeDocument，取得目前正在使用的圖檔尺寸。 </p>
<p>JS</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:e7260e77-5e65-4ebc-af8d-01c0054aa9ca" class="wlWriterSmartContent">
<pre class="js:nogutter" name="code">#target photoshop
//判斷是否有開啟圖檔
if(app.documents.length &gt; 0)
{
	//有開啟圖檔，設定doc為目前圖檔的參照(reference)
	var doc = app.activeDocument;
	//顯示目前圖檔尺寸
	alert(&quot;目前圖檔尺寸為\n寬：&quot; + doc.width + &quot;\n高：&quot; + doc.height);

	//顯示第一個圖檔文件的尺寸
	doc = app.documents[0];//圖檔依照順序從0開始
	alert(&quot;第一個圖檔尺寸為\n寬：&quot; + doc.width + &quot;\n高：&quot; + doc.height);
}</pre>
</div>
<p>VBS</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:e7260e77-5e65-4ebc-af8d-01c0054aa9ca" class="wlWriterSmartContent">
<pre class="vb:nogutter" name="code">Dim app
Dim doc
Set app = CreateObject( &quot;Photoshop.Application&quot; )
'判斷是否有開啟圖檔
If app.documents.count &gt; 0 Then
	Set doc = app.activeDocument
	MsgBox(&quot;目前圖檔尺寸為&quot; &amp; vbcr &amp; _
	&quot;寬：&quot; &amp; doc.width&amp; vbcr &amp; &quot;高：&quot; &amp; doc.height)

	Set doc = app.Documents.item(1)'//圖檔依照順序從1開始
	MsgBox(&quot;第一個圖檔尺寸為&quot; &amp; vbcr &amp; _
	&quot;寬：&quot; &amp; doc.width&amp; vbcr &amp; &quot;高：&quot; &amp; doc.height)
End If</pre>
</div>
<p><strong>SolidColor物件</strong> </p>
<p>SolidColor也就是顏色，在PSS中所有跟顏色扯上關係的都要使用SolidColor，例如：設定Photoshop的前景色 </p>
<p>JS，用new建立SolidColor物件</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:e7260e77-5e65-4ebc-af8d-01c0054aa9ca" class="wlWriterSmartContent">
<pre class="js:nogutter" name="code">#target photoshop
var myColor = new SolidColor();
//設定SolidColor的RGB屬性，將顏色設成青色
myColor.rgb.red = 0;
myColor.rgb.green = 255;
myColor.rgb.blue = 255;
//將Photoshop的前景色設置為青色
app.foregroundColor = myColor;</pre>
</div>
<p>VBS，一樣使用CreateObject建立SolidColor物件</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:e7260e77-5e65-4ebc-af8d-01c0054aa9ca" class="wlWriterSmartContent">
<pre class="vb:nogutter" name="code">Dim app
Set app = CreateObject( &quot;Photoshop.Application&quot; )
'設定SolidColor的RGB屬性，將顏色設成青色
Set myColor = CreateObject( &quot;Photoshop.SolidColor&quot; )
mycolor.rgb.red = 0
mycolor.rgb.green = 255
mycolor.rgb.blue = 255
'將Photoshop的前景色設置為青色
app.foregroundColor = myColor</pre>
</div>
<p>又或者，可使用更簡單的方式來設定前景色<br />
  <br />JS</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:e7260e77-5e65-4ebc-af8d-01c0054aa9ca" class="wlWriterSmartContent">
<pre class="js:nogutter" name="code">#target photoshop
//直接設定foregroundColor，將前景色設成青色
app.foregroundColor.rgb.red = 0;
app.foregroundColor.rgb.green = 255;
app.foregroundColor.rgb.blue = 255;</pre>
</div>
<p>VBS</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:e7260e77-5e65-4ebc-af8d-01c0054aa9ca" class="wlWriterSmartContent">
<pre class="vb:nogutter" name="code">Dim app
Set app = CreateObject( &quot;Photoshop.Application&quot; )
'直接設定foregroundColor，將前景色設成青色
app.foregroundColor.rgb.red = 0
app.foregroundColor.rgb.green = 255
app.foregroundColor.rgb.blue = 255</pre>
</div>
<p><strong><span style="color: #008080">簡單的縮圖範例</span></strong> </p>
<p>來一個簡單的範例， 要做縮圖的時候，如果單純使用動作(Action)，並無法自動根據圖檔是寬的還是高的進行不同的縮圖處理，這時指令碼就派上用場啦 </p>
<p>JS</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:15db0da6-66ad-4f11-ad41-17e8e1fff713" class="wlWriterEditableSmartContent">
<pre name="code" class="js:nogutter">#target photoshop

//-----設定-----------------------
var limitWidth = 200;//最大寬度
var limitHeight = 160;//最大高度
var ImgResolution = 72;//解析度
//--------------------------------

//把Photoshop推到最上層
app.bringToFront();

//設定使用的單位為「像素(Pixel)」
app.preferences.rulerUnits = Units.PIXELS;

//呼叫要處理縮圖的函數
ReSizeImg();

function ReSizeImg()
{
	//判斷是否有開啟圖檔
	if(app.documents.length &gt; 0){
		//有開啟圖檔，設定doc為目前圖檔的參照(reference)
		var doc = app.activeDocument;
	}else{
		//沒有開啟圖檔
		alert("請開啟要調整大小的圖檔");
		return;
	}

	//如果原圖小於或等於縮圖尺寸，則跳出不處理
	if(doc.width &lt;= limitWidth &amp;&amp; doc.height &lt;= limitHeight)return;

	//開始判斷縮圖大小
	var rsWidth = doc.width;
	var rsHeight = doc.height;
	var Scale = 1.0;

	if(doc.width &gt; limitWidth){
		Scale = limitWidth / (doc.width + 0.0);
		rsWidth = doc.width * Scale;
		rsHeight = doc.height * Scale;
	}

	if (rsHeight &gt; limitHeight){
		Scale = limitHeight / (doc.height + 0.0);
		rsWidth = doc.width * Scale;
		rsHeight = doc.height * Scale;
	}

	//執行更改圖像大小指令
	doc.resizeImage(rsWidth, rsHeight, ImgResolution, ResampleMethod.BILINEAR);
}
</pre>
</div>
<p>不厭其煩的，也來個VBS版，請注意與JS不同的地方</p>
<p>&#160;</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:812469c5-0cb0-4c63-8c15-c81123a09de7:ee6d1b30-fced-4a50-9114-b72130c10025" class="wlWriterEditableSmartContent">
<pre name="code" class="vb:nogutter">Dim app
Dim doc
Dim limitWidth
Dim limitHeight
Dim ImgResolution
Dim rsWidth
Dim rsHeight
Dim Scale
Set app = CreateObject( "Photoshop.Application" )

'-----設定-----------------------
limitWidth = 200 '最大寬度
limitHeight = 160 '最大高度
ImgResolution = 72 '解析度
'--------------------------------

'把Photoshop推到最上層
app.bringToFront()

'設定使用的單位為「像素(Pixel)」，跟JS不太一樣哦
app.preferences.rulerUnits = 1 ' psPixels

'呼叫要處理縮圖的函數
ReSizeImg()

Function ReSizeImg()

	'判斷是否有開啟圖檔
	If app.documents.count &gt; 0 Then
		'有開啟圖檔，設定doc為目前圖檔的參照(reference)
		Set doc = app.activeDocument
	Else
		'沒有開啟圖檔
		MsgBox("請開啟要調整大小的圖檔")
		Exit Function
	End If

	'如果原圖小於或等於縮圖尺寸，則跳出不處理
	If doc.width &lt;= limitWidth And doc.height &lt;= limitHeight Then Exit Function

	'開始判斷縮圖大小
	rsWidth = doc.width
	rsHeight = doc.height
	Scale = 1.0

	if doc.width &gt; limitWidth Then
		Scale = limitWidth / (doc.width + 0.0)
		rsWidth = doc.width * Scale
		rsHeight = doc.height * Scale
	End If

	if rsHeight &gt; limitHeight Then
		Scale = limitHeight / (doc.height + 0.0)
		rsWidth = doc.width * Scale
		rsHeight = doc.height * Scale
	End If

	'執行更改圖像大小指令，跟JS不太一樣哦
	doc.resizeImage rsWidth, rsHeight, ImgResolution, 3
End Function </pre>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.colorbase.tw/programming/165/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Photoshop 修正偏色照片獨門密技大公開</title>
		<link>http://blog.colorbase.tw/design/81</link>
		<comments>http://blog.colorbase.tw/design/81#comments</comments>
		<pubDate>Thu, 17 Jul 2008 08:34:03 +0000</pubDate>
		<dc:creator>阿育</dc:creator>
				<category><![CDATA[設計及影像處理]]></category>
		<category><![CDATA[photoshop]]></category>
		<category><![CDATA[影像處理]]></category>
		<category><![CDATA[數位修片]]></category>
		<category><![CDATA[相片濾鏡]]></category>
		<category><![CDATA[軟體教學]]></category>

		<guid isPermaLink="false">http://blog.colorbase.tw/?p=81</guid>
		<description><![CDATA[室內拍照的時候，常常會遇到如下圖這種情況，明明是白色的東西偏偏拍出來會綠綠的，造成的原因可能是因為室內光線的問題、相機操作的問題或相機本身不夠好、照相時的色溫，但先不管造成的原因是什麼，因為我也不懂攝影，反正錯誤已經造成了，就來想辦法解決吧！

Photoshop擁有許多豐富、強大的工具及功能，懂得將這些工具及功能活用就能達到許多效果，如果不懂得利用你可能還會嫌它「雞肋」、「無用」、「太肥」，當然，並不只有Photoshop擁有這些功能，重點是瞭解概念，工具是可以隨個人喜好更換的。
好啦！廢話不多說，開始吧！ (已經很多了 = =)
步驟1：
首先打開這張看起來像靈異照片(青綠色)的偏色照片，然後使用功能表中的「影像 &#62;&#62; 調整 &#62;&#62; 負片效果」或按快捷鍵(hot key) 「Ctrl+ I」。
得到如下負片效果圖(註1)，並用「滴管工具」擷取下方紅色圈選處的顏色，此顏色大約為RGB(96,31,1)，取得顏色後，再按下「Ctrl+Z」還原到原來的圖片，或者再按一次「Ctrl+I」也是可以的。

那為什麼要擷取紅色圈選處的顏色呢？
以這張照片來說最明顯的部份就是白色變成青綠色 (其實大部分這類型的照片都是)，而負片效果會把照片中所有的顏色變成反相色，我們現在是要將偏色的顏色(青綠色)調整為正常的顏色 (理論上為白色)
而紅色圈選處在負片效果處理之前如果不要因為照相偏色，理論上它應該接近白色，現在擷取的顏色正是偏色 (青綠色)反相後的顏色，青綠色屬於冷色，反向色剛好是對比的暖色，在Photoshop的說明中有提到下面這樣一段話：
「如果影像照相時的色溫較高，也就是偏藍，則使用「暖色濾鏡」(85) 就可以使影像色彩變暖一點，補償周圍光線較高的色溫。 」
再講簡單一點來個歸納：

先判斷什麼地方原本應該是「白色」的顏色跑掉了變成青綠色的區域。
將影像以「負片效果」處理。
取得負片效果後，變成青綠色的區域的「反向色」。

步驟2：
瞭解原理後，下一步就可以利用「相片濾鏡」的功能調整，讓青綠色的部份，降低它的偏色程度
使用功能表中的「影像 &#62;&#62; 調整 &#62;&#62; 相片濾鏡」，選擇使用自訂的「顏色」作為濾鏡

接著點選顏色旁邊那個方塊，跳出「選取濾鏡色彩」的對話方塊，把滑鼠移到工具面板上面的前景色，滑鼠游標會變成滴管形狀，此時可以點選前景色(如圖)，就可以取得剛剛負片效果後用「滴管工具」所取得的顏色RGB(96,31,1)

接著調整濾鏡的「濃度」，調到讓原本青綠色的部份變成接近白色就可以，以這張圖來說我調到85，調過頭反而會造成反效果

如果不曉得該調整到多少才恰當，善用工具吧！打開功能表的「視窗 &#62;&#62; 色階分佈圖」，把色版樣式設定為「彩色」，並使用擴展視圖的呈現方式

這樣一來就可以根據色階分佈圖所提供的資訊來加以判斷，下面左圖是調整前，右圖是調整後，發現什麼了嗎？答案就是要把色階調到重疊在一起。
 
使用相片濾鏡效果後回得到如下圖，啊！彩度降低了？沒錯！這是必然的


步驟3：
再使用功能表的「影像 &#62;&#62; 調整 &#62;&#62; 色相/飽和度」或按「Ctrl + U」，叫出色相/飽和度工具補點飽和度(彩度)就大功告成啦！

最後看一下處理前跟處理後的差別
偏色調整前：

偏色調整後：

終於完了，雖然步驟看起來好多好複雜，但重點是其中的概念，懂了概念其實做起來是很快的，如果還是覺得太複雜，網路上記得也找的到「快速調整偏色照片」的方法，但我覺得效果不是很理想就是了。
註1：「負片」有些影像處理軟體叫做「反相」
延伸思考：

其實影像處理，也是在玩弄顏色，瞭解色彩的概念對影像處理也有很大的幫助。
並不一定每一張照片都要擷取該顏色，必須視情況根據經驗判斷該擷取何處的顏色。
達到同樣的效果，方法不只一種，能依照情況選擇方法才是活用。


]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/09.gif"></a>室內拍照的時候，常常會遇到如下圖這種情況，明明是白色的東西偏偏拍出來會綠綠的，造成的原因可能是因為室內光線的問題、相機操作的問題或相機本身不夠好、照相時的色溫，但先不管造成的原因是什麼，因為我也不懂攝影，反正錯誤已經造成了，就來想辦法解決吧！<span id="more-81"></span></p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/01.jpg"><img class="alignnone size-medium wp-image-82" title="原圖" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/01.jpg" alt="" width="400" height="320" /></a></p>
<p>Photoshop擁有許多豐富、強大的工具及功能，懂得將這些工具及功能活用就能達到許多效果，如果不懂得利用你可能還會嫌它「雞肋」、「無用」、「太肥」，當然，並不只有Photoshop擁有這些功能，重點是瞭解概念，工具是可以隨個人喜好更換的。</p>
<p>好啦！廢話不多說，開始吧！ (已經很多了 = =)</p>
<p><strong><span style="color: #008080;">步驟1：</span></strong></p>
<p>首先打開這張看起來像靈異照片(青綠色)的偏色照片，然後使用功能表中的「<strong>影像 &gt;&gt; 調整 &gt;&gt; 負片效果</strong>」或按快捷鍵(hot key) 「<strong>Ctrl+ I</strong>」。</p>
<p>得到如下負片效果圖(註1)，並用「滴管工具<a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/e6bbb4e7aea1.gif"><img class="alignnone size-medium wp-image-84" title="滴管工具" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/e6bbb4e7aea1.gif" alt="" width="25" height="21" /></a>」擷取下方紅色圈選處的顏色，此顏色大約為<span style="color: #601f01;"><strong>RGB(96,31,1)</strong></span>，<span style="color: #601f01;"><span style="color: #000000;">取得顏色後，再按下「<strong>Ctrl+Z</strong>」還原到原來的圖片，或者再按一次「<strong>Ctrl+I</strong>」也是可以的。</span></span></p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/03.jpg"><img class="alignnone size-medium wp-image-83" title="負片效果" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/03.jpg" alt="" width="400" height="320" /></a></p>
<p>那為什麼要擷取紅色圈選處的顏色呢？</p>
<p>以這張照片來說最明顯的部份就是白色變成青綠色 (其實大部分這類型的照片都是)，而負片效果會把照片中所有的顏色變成反相色，我們現在是要將偏色的顏色(青綠色)調整為正常的顏色 (理論上為白色)</p>
<p>而紅色圈選處在負片效果處理之前如果不要因為照相偏色，理論上它應該接近白色，現在擷取的顏色正是偏色 (青綠色)反相後的顏色，青綠色屬於<strong>冷色</strong>，反向色剛好是對比的<strong>暖色</strong>，在Photoshop的說明中有提到下面這樣一段話：</p>
<blockquote><p>「如果影像照相時的色溫較高，也就是偏藍，則使用「暖色濾鏡」(85) 就可以使影像色彩變暖一點，補償周圍光線較高的色溫。 」</p></blockquote>
<p>再講簡單一點來個歸納：</p>
<ol>
<li>先判斷什麼地方原本應該是「白色」的顏色跑掉了變成青綠色的區域。</li>
<li>將影像以「負片效果」處理。</li>
<li>取得負片效果後，變成青綠色的區域的「反向色」。</li>
</ol>
<p><strong><span style="color: #008080;">步驟2：</span></strong></p>
<p>瞭解原理後，下一步就可以利用「相片濾鏡」的功能調整，讓青綠色的部份，降低它的偏色程度</p>
<p>使用功能表中的「<strong>影像 &gt;&gt; 調整 &gt;&gt; 相片濾鏡</strong>」，選擇使用自訂的「顏色」作為濾鏡</p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/05.jpg"></a></p>
<p>接著點選顏色旁邊那個方塊，跳出「選取濾鏡色彩」的對話方塊，把滑鼠移到工具面板上面的前景色，滑鼠游標會變成滴管形狀，此時可以點選前景色(如圖)，就可以取得剛剛負片效果後用「滴管工具<a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/e6bbb4e7aea1.gif"><img class="alignnone size-medium wp-image-84" title="滴管工具" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/e6bbb4e7aea1.gif" alt="" width="25" height="21" /></a>」所取得的顏色<strong><span style="color: #601f01;">RGB(96,31,1)</span></strong></p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/e5898de699afe889b2.gif"><img class="alignnone size-medium wp-image-89" title="前景色" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/e5898de699afe889b2.gif" alt="" width="53" height="108" /></a></p>
<p>接著調整濾鏡的「濃度」，調到讓原本青綠色的部份變成接近白色就可以，以這張圖來說我調到85，調過頭反而會造成反效果</p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/05.jpg"><img class="alignnone size-medium wp-image-87" title="相片濾鏡" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/05.jpg" alt="" width="331" height="232" /></a></p>
<p>如果不曉得該調整到多少才恰當，善用工具吧！打開功能表的「<strong>視窗 &gt;&gt; 色階分佈圖</strong>」，把色版樣式設定為「彩色」，並使用擴展視圖的呈現方式</p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/10.gif"><img class="alignnone size-medium wp-image-92" title="色階分佈圖設定" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/10.gif" alt="" width="276" height="214" /></a></p>
<p>這樣一來就可以根據色階分佈圖所提供的資訊來加以判斷，下面左圖是調整前，右圖是調整後，發現什麼了嗎？答案就是要把色階調到重疊在一起。</p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/09.gif"><img class="alignnone size-medium wp-image-90" title="調整前" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/09.gif" alt="" width="268" height="225" /></a> <a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/04.jpg"><img class="alignnone size-medium wp-image-91" title="調整後" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/04.jpg" alt="" width="268" height="225" /></a></p>
<p>使用相片濾鏡效果後回得到如下圖，啊！彩度降低了？沒錯！這是必然的</p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/11.jpg"><img class="alignnone size-medium wp-image-93" title="相片濾鏡效果後" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/11.jpg" alt="" width="400" height="320" /></a></p>
<p><strong><span style="color: #008080;"><br />
步驟3：</span></strong></p>
<p>再使用功能表的「<strong>影像 &gt;&gt; 調整 &gt;&gt; 色相/飽和度</strong>」或按「<strong>Ctrl + U</strong>」，叫出色相/飽和度工具補點飽和度(彩度)就大功告成啦！</p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/07.jpg"><img class="alignnone size-medium wp-image-94" title="增加飽和度" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/07-400x307.jpg" alt="" width="400" height="307" /></a></p>
<p>最後看一下處理前跟處理後的差別</p>
<p>偏色調整前：</p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/01.jpg"><img class="alignnone size-medium wp-image-82" title="原圖" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/01.jpg" alt="" width="400" height="320" /></a></p>
<p>偏色調整後：</p>
<p><a href="http://blog.colorbase.tw/wp-content/uploads/2008/07/08.jpg"><img class="alignnone size-medium wp-image-95" title="偏色調整後" src="http://blog.colorbase.tw/wp-content/uploads/2008/07/08.jpg" alt="" width="400" height="320" /></a><br />
終於完了，雖然步驟看起來好多好複雜，但重點是其中的概念，懂了概念其實做起來是很快的，如果還是覺得太複雜，網路上記得也找的到「快速調整偏色照片」的方法，但我覺得效果不是很理想就是了。</p>
<p>註1：「負片」有些影像處理軟體叫做「反相」</p>
<div id="think"><span id="title">延伸思考：</span></p>
<ul>
<li>其實影像處理，也是在玩弄顏色，瞭解色彩的概念對影像處理也有很大的幫助。</li>
<li>並不一定每一張照片都要擷取該顏色，必須視情況根據經驗判斷該擷取何處的顏色。</li>
<li>達到同樣的效果，方法不只一種，能依照情況選擇方法才是活用。</li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.colorbase.tw/design/81/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

