[教學] 利用photoshop在照片加入拍攝地點

之前照片在貼到網路上時, 會利用photoshop的scripts, 來找出照片中的一些exif資訊,
後來買了一個GPS logger, 照片多了位置的資訊, 想想是不是也可以利用scripts貼到照片中.
噹噹: 成果: (後面故意貼了個GPS的位址)
[教學] 利用photoshop在照片加入拍攝地點

在photoshop的File -> info可以看到:
[教學] 利用photoshop在照片加入拍攝地點

在photoshop的scripts中如果寫:
var AD = activeDocument;
var exifData = AD.info.exif.toString();
可以得到exifData為:
-------------------------------------------------
GPS Latitude,39.00 59.00' 48.56",2,
GPS Longitude,116.00 16.00' 4.82",4,
Model,Canon EOS 5D,272,
Exposure Time,1/320 sec,33434,
F-Stop,f/4.0,33437,
Exposure Program,Aperture priority,34850,
ISO Speed Ratings,100,34855,
.........
........ //還有很多....
-------------------------------------------------
等等的資料, 所以使用上可以這樣寫:
var exifArray = explodeArray(exifData,","); //用","分割成array,
for(n = 0; n < exifArray.length; n = n + 3 ) { //因為一組資料都是3個","隔開的資料, 所以一次加3<br>if(exifArray[n] == "Model") {
cameraModel = exifArray[n+1];
}
......
} //這樣就可以把所有的Exif資料都找出來....

後來看了看位置的地方的tag有點不一樣, 像這樣:
--------------------------------
<rdf:Description rdf:about=""
xmlns:photoshop="http://ns.adobe.com/photoshop/1.0/">
<photoshop:City>Beijing</photoshop:City>
<photoshop:State>Beijing</photoshop:State>
<photoshop:Country>China</photoshop:Country>
<photoshop:ColorMode>3</photoshop:ColorMode>
<photoshop:ICCProfile>sRGB IEC61966-2.1</photoshop:ICCProfile>
</rdf:Description>
---------------------------------
想要找出City和Country的資料, 試很久, 沒想到很簡單, 就是這樣:
City = AD.info.city;
Country =AD.info.country;

最後要把找出來的資料寫到照片上:
-----------------------------------
var infoLayer = AD.artLayers.add();
infoLayer.kind = LayerKind.TEXT;
var TI = infoLayer.textItem;
TI.position = [((FRAME_THICKNESS*widthOriginal)/2+10),(heightVar-2)]; //要寫在哪
TI.contents = infoText; //最後要寫的字
TI.font = TEXT_INFO_FONT;
TI.size = TEXT_INFO_SIZE;
TI.color = TEXT_INFO_COLOR;
----------------------------------------

這樣就可以自動化scripts處理很多照片還加上位置了...

不過City資訊好像不是很齊全....在竹北拍的顯示如下:
53 SW of Taipei
[教學] 利用photoshop在照片加入拍攝地點
這篇太棒了,script 的文章是少之又少,值得收藏!!!

原來可以用這個方法抓出exif的資料,
那IPTC也可以囉?
真正高級的文章!
真是看膩了一堆打嘴泡的文了…
我換5D3後, 發現他的EXIF會記鏡頭了耶~~~
不過名字很怪:

var exifArray = explodeArray(exifData,",");

for(n = 0; n < exifArray.length; n = n + 3 ) {
if(exifArray[n] == "Model") {
cameraModel = exifArray[n+1];
}
if(exifArray[n] == "EXIF tag 42036"){
lens = exifArray[n+1];
}
........

}

他的名字叫"EXIF tag 42036".....

這樣Photoshop就可以scripts自己抓對鏡頭了耶~~~YA~

文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!