PS如何給照片加水印日期-給照片加上時間水印+日…

2018-06-23 19:03:25來源:未知 閱讀 ()

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用     其實用PS軟件給照片加水印日期是很簡單的我們只要加上時間水印+日期的水印蒙版,放入你需要的位置就ok了。具體操作是使用PS的圖片批處理功能。批處理里邊加入一個腳本即可實現。下面我們附上了腳本代碼,代碼可以添加很多照片exif信息。如果不需要哪個,你就找到TI.contents這個變量后邊的東西可以添加刪除。
    給照片加水印日期腳本代碼的使用方法如下:
(1)將代碼拷入記事本,選擇菜單“文件-另存為”,
(2)文件名可以輸入中文,如“圖片加框和EXIF信息.jsx”等,保存類型選擇 所有文件。
(3)將文件存到“C:\Program Files\Adobe\Photoshop CS\預置\腳本”目錄中(根據實際安裝位置),
(4)使用:在Photoshop CS菜單中選擇:文件-〉腳本


 //--- 

displayDialogs = DialogModes.NO; 
var defaultRulerUnits = preferences.rulerUnits; 
preferences.rulerUnits = Units.PIXELS; 

//將一個長字串分解成單個字符串
function explodeArray(item) { 
var i=0;
var Count=0; 
var tempString=new String(item); 
tempArray=new Array(1); 

do{ 

i=tempString.indexOf(":");
if(i>0)
tempString=tempString.substr(i+1,tempString.length-i-1);
i=tempString.indexOf(">");
if(i>0)
{
tempArray[Count]=tempString.substr(0,i); 
tempString=tempString.substr(i+1,tempString.length-i-1);
Count ++;
}
i=tempString.indexOf("<");
if(i>0)
{
tempArray[Count]=tempString.substr(0,i); 
tempString=tempString.substr(i-1,tempString.length-i+1);
Count ++;
}
}while (tempString.indexOf("</x:xmpmeta>")>0);

tempArray[Count]=tempString; 
return tempArray; 


var AD = activeDocument; 
var resRatio = AD.resolution/72; 

if(resRatio!=1){ 
AD.resizeImage(AD.width.value,AD.height.value,72); 


var heightVar = AD.height.value+2; 
var photoWidth = AD.width.value; 
var photoHight = AD.height.value; 

//獲取RAW保存的信息
var exifData = AD.xmpMetadata.rawData.toString();

//將EXIF信息分成單個的相關信息
explodeArray(exifData); 

var stringTemp=""; //臨時字串
var make=""; //相機公司
var model=""; //相機型號
var camera=""; //相機
var lens=""; //鏡頭類型
var apertureValue=""; //
var lensUsed=""; //使用的鏡頭

var focalLength=""; //焦距
var exposureTime=""; //快門
var fNumber=""; //光圈
var ISOSpeedRatings=""; //ISO設置
var exposureBiasValue=""; //曝光補償
var exposureProgram=""; //曝光程序
var Fired=""; //閃光模式
var dateTimeOriginal=""; //拍攝時間

//改成你自己想寫的,比如版權所有和你自己的網名等
//如果為空,將采用相機設置的名字
var creator="myngo"; //拍攝者

var i=0;
var j=0;
var k=0;
var dateArray1="";
var dateArray2="";
var monthsArray="";
var phoDate = "";
var phoTime = "";

//Photoshop CS獲取EXIF信息

for(n = 0; n < tempArray.length; n ++) { 

stringTemp=tempArray[n];

//快門速度
if(stringTemp.indexOf("ExposureTime")!=-1){ 
exposureTime = tempArray[n+1]; 
break;

}

//光圈大小
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(stringTemp.indexOf("FNumber")!=-1){ 
fNumber = tempArray[n+1];
break;

}

//拍攝日期、時間
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(stringTemp.indexOf("DateTimeOriginal")!=-1){ 
dateTimeOriginal = tempArray[n+1]; 
break;

}

//使用焦距
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(tempArray[n]=="FocalLength"){ 
focalLength = tempArray[n+1];
break;

}

//ISO設置
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(stringTemp.indexOf("ISOSpeedRatings")!=-1){ 
ISOSpeedRatings = "ISO"+tempArray[n+5]; 
break;

}

//曝光補償
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(stringTemp.indexOf("ExposureBiasValue")!=-1){ 
exposureBiasValue = tempArray[n+1]; 
break;

}

//曝光程序
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(stringTemp.indexOf("ExposureProgram")!=-1){ 
exposureProgram = tempArray[n+1]; 
break;

}

//閃光模式
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(stringTemp.indexOf("Fired")!=-1){ 
Fired = tempArray[n+1]; 
break;

}

//使用鏡頭類型
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(tempArray[n]=="Lens"){ 
lens=tempArray[n+1]; 
break;

}

//相機廠商
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(stringTemp.indexOf("Make")!=-1){ 
make = tempArray[n+1]; 
break;

}

//相機型號
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(stringTemp.indexOf("Model")!=-1){ 
var model = tempArray[n+1]; 
break;

}

//對于有的相機型號不包括制造商部分
//camera = make+model; 

//對于有的相機型號包括制造商部分
camera = model; 

//相機所有者
for(n = 0; n < tempArray.length; n ++) { 
stringTemp=tempArray[n];
if(stringTemp.indexOf("creator")!=-1 && creator==""){ 
creator = tempArray[n+5]; 
break;

}

//檢查快門速度(全部保留到小數點后一位)
dateArray1 = exposureTime.split("/");
i = dateArray1[0];
j = dateArray1[1];
if(i/j>=1)
exposureTime=parseInt(i/j)+"."+(i-parseInt(i/j)*j);
else{
j=parseInt(j/i);
i=1;
exposureTime=i+"/"+j;
}

//檢查光圈大小
dateArray1 = fNumber.split("/");
i = dateArray1[0];
j = dateArray1[1];
if(j>1)
fNumber=i/j;
else
fNumber=i;

//檢查焦距
dateArray1 = focalLength.split("/");
i = dateArray1[0];
j = dateArray1[1];
if(j>1)
focalLength=parseInt(i/j);
else
focalLength=i;

//檢查曝光補償
dateArray1 = exposureBiasValue.split("/");
i = dateArray1[0];
j = dateArray1[1];
if(i>0)
exposureBiasValue="+"+(parseInt(i*10/j))/10;
else
exposureBiasValue=(parseInt(i*10/j))/10;

//檢查曝光程序
//程序順序根據相機差異調整
dateArray1= exposureProgram;

dateArray2 = ["Manual",
"Program",
"Aperture",
"Shutter",
"A-DEP"];

exposureProgram = dateArray2[dateArray1-1];

//檢查閃光模式
dateArray1 = Fired;
if(dateArray1.indexOf("True")!=-1)
Fired="FlashOn";
else
Fired="FlashOff";

//改變日期格式
dateArray1 = dateTimeOriginal.split("T"); 

phoDate = dateArray1[0];
phoTime = dateArray1[1];

//日期轉換為英文格式(如Jun 22 2005),喜歡可以把注釋符號"//"去掉
//dateArray2 = phoDate.split("-"); 
//monthsArray =["Jan", 
//"Feb", 
//"Mar", 
//"Apr", 
//"May",
//"Jun", 
//"Jul", 
//"Aug", 
//"Sep", 
//"Oct", 
//"Nov", 
//"Dec"]; 
//phoDate = monthsArray[dateArray2[1]-1]+" "+dateArray2[2]+" "+dateArray2[0]; 

dateArray2 = phoTime.split("+");
phoTime = dateArray2[0];

//你有什么鏡頭,就根據鏡頭和最大焦距改吧

if(lens != "")
{

if(lens.indexOf("28.0-70.0 mm")!=-1){
lensUsed = "EF 28-70mm f/2.8L USM"; 

if(lens.indexOf("70.0-200.0 mm")!=-1){
lensUsed = "EF 70-200mm f/2.8L USM";
}
//if(lens.indexOf("85 mm")!=-1){
//lensUsed = "Canon 85mm F1.8 USM"; 
//} 
//if(lens.indexOf("100.0 mm")!=-1){
//lensUsed = "Canon Macro 100mm F2.8 USM"; 
//}

}
else 
{

//如果沒有鏡頭信息,就使用原來的辦法比較

var focLength=parseInt(focalLength);
if(focLength>=28 && focLength<=70){ 
lensUsed = "EF 28-70mm f/2.8L USM"; 

if(focLength>70 && focLength<=200){ 
lensUsed = "EF 70-200mm f/2.8L USM";
}
//if(focLength=="85"){ 
//lensUsed = "Canon 85mm F1.8 USM"; 
//} 
//if(focLength=="100"){ 
//lensUsed = "Canon Macro 100mm F2.8 USM"; 
//} 
}

//畫線和框
//定義黑色,你也可以定義其他顏色喲
var black = new SolidColor(); 
black.rgb.red = black.rgb.green = black.rgb.blue = 51; 

var white = new SolidColor(); 
white.rgb.red = white.rgb.green = white.rgb.blue = 255; 

var grey = new SolidColor(); 
grey.rgb.red = grey.rgb.green = grey.rgb.blue = 153; 

var red = new SolidColor();
red.rgb.red = 255; red.rgb.green = 0; red.rgb.blue = 0;

var yellow = new SolidColor();
yellow.rgb.red = 255; yellow.rgb.green = 153; yellow.rgb.blue = 0;

var blue = new SolidColor();
blue.rgb.red = 0; blue.rgb.green = 0; blue.rgb.blue = 255;

//加入一條白線,你可以將白線寬窄設為2或4,兩邊,實際寬度除以2
backgroundColor = white; 

//如果改為黑線
//backgroundColor = black; 

AD.resizeCanvas(AD.width.value+2,AD.height.value+2, 
AnchorPosition.MIDDLECENTER); 

//加入黑框,這里將黑框寬窄設為圖片寬窄的1/10,兩邊,實際寬度再除以2
backgroundColor = black; 

//如果改為白框
//backgroundColor = white; 

//邊框寬度和高度
var fWidth = parseInt(photoWidth/60);
var fHight = parseInt(photoHight/40);
//字體左邊距和下邊距
var tLeft = parseInt(fWidth/2+10);
var tHight = parseInt(fHight/2);
//字號
var tSize = parseInt(fWidth/2);

AD.resizeCanvas(AD.width.value+fWidth,AD.height.value+fHight, AnchorPosition.MIDDLECENTER); 

//底部再加寬點,便于寫字,這里將下邊的邊框加倍
AD.resizeCanvas(AD.width.value,AD.height.value+fHight+tHight,AnchorPosition.TOPCENTER); 
AD.resizeCanvas(AD.width.value,AD.height.value+fHight+tHight,AnchorPosition.TOPCENTER); 
AD.resizeCanvas(AD.width.value,AD.height.value+fHight+tHight,AnchorPosition.TOPCENTER); 

//標字和參數 

var nameLayer = AD.artLayers.add(); 
nameLayer.kind = LayerKind.TEXT; 
var TI = nameLayer.textItem; 

//右對齊
TI.justification = Justification.RIGHT;

//標字的位置
TI.position = [AD.width.value-tLeft,heightVar-tHight];

//標字的位置1
//TI.position = [AD.width.value-tLeft,heightVar+tHight];

//TI.contents = "By "+creator;

//字體、字號、顏色和加粗等 
TI.font = "Angel"; 

//TI.font = "宋體"; 

TI.size = tSize+16; 
TI.color = red; 

//如果為白框,字體為黑色
//TI.color = black; 

TI.fauxBold = true; 

var infoLayer = AD.artLayers.add(); 
infoLayer.kind = LayerKind.TEXT; 
var TI = infoLayer.textItem; 

//右對齊,如果左對齊可以省略下面這行
TI.justification = Justification.RIGHT;

//標字的位置
TI.position = [AD.width.value-tLeft,heightVar+tHight+tHight+tHight+tHight+tHight];

//顯示:相機型號,鏡頭,焦距,曝光時間,光圈,ISO設置,拍攝日期等

TI.contents = camera+" with "+lensUsed+" @ "+focalLength+"mm "+exposureProgram+" "+exposureTime+"s f/"+fNumber+" "+exposureBiasValue+"EV "+ISOSpeedRatings+" "+Fired+"\u000D Time: "+phoDate+" "+phoTime;

//TI.contents = k+" "+model;

//字體、字號、顏色等 
TI.font = "Tahoma"; 
TI.size = tSize+6; 
TI.color = white; 

//如果為白框,字體為黑色
//TI.color = black; 

AD.flatten();
 


標簽:ps軟件

版權申明:本站文章部分自網絡,如有侵權,請聯系:west999com@outlook.com
特別注意:本站所有轉載文章言論不代表本站觀點,本站所提供的攝影照片,插畫,設計作品,如需使用,請與原作者聯系,版權歸原作者所有

上一篇:Photoshop制作創意的花朵藝術字教程

下一篇:PS雙曲線磨皮教程:學習給廣告級人物后期精修美化皮膚,商業修圖

国产日韩色情在线电影