资源描述
用Photoshop给照片加边框的方法
1、第一层扩边:把需要的处理都做完后,最后再加边框,本例照片大小设为800X600(不同大小加的边框大小不同),点击菜单的图像-画布大小;
2、画布扩展颜色使用白色,将宽度与高度分别设为4像素(即每一边扩大2像素),注意勾上“相对”的选框,点确定。
3、第二层扩边:继续点击菜单的图像-画布大小,扩展颜色选黑色,宽度与高度为2像素:
4、第三层扩边:扩展颜色重新选为白色,宽度与高度为0.8厘米:
5、第四层扩边:宽度为0,高度1厘米,定位如下图设置:
6、到上面一步做完,边框就加好了,然后我们可以加上自己的LOGO或文字说明,并对图层进行美化;
7、OK,边框加好了,看看效果怎么样。
当然,你完全可以按自己喜好设定边框的参数,也不用完全按上面的步骤做,其实上面讲的只是一个普通的例子,只要知道了方法,做起来很简单。
像下面这个,就是稍做改变做出来的,感觉也不错吧。
然后,可能有的朋友更喜欢用花纹填充的边框,那么该怎么做呢?可以试试下面的方法:
1、做完上面的第5步之后,也就是要写上LOGO之前,选择魔术棒工具,容差设为1,在下面白色边框处点击进行选择;
2、选择菜单的编辑-填充;
3、在填充对话框中选择图案;
4、 从自定义图案中选择一个你所喜欢的花纹,再点确定;
5、这样就OK了,然后我们再来加上LOGO。下面完成后的样子,当然,还可以继续在外面按上面的方法再加几层边框。
最后,可能有些朋友感觉会有些美中不足,因为不能像光影魔术手那样很方便的那EXIF信息添加到照片边框上,那么你再看看下面这一张,想知道是怎样做到的吗?呵呵,等下一节再介绍吧。
这个脚本出处已不可考,因为原来的脚本是直接加上边框和签名还有EXIF,而且对于添加的文字位置以及大小等控制不大方便,本人做了一此修改,成为只具体添加EXIF参数的脚本。
使用的时候,应该先加好边框和签名,然后再调用脚本。照片大小不同和边框类型不同,对EXIF参数字型字号和位置要求也不同,所以使用的时候可根据需要自己对参数进行修改。当然对比较常用的也可以多保存成不同名字的脚本直接调用,而不用每次都修改。
脚本适用CS2中英文版,本人在9.0 CS2试用正常。
将后面的代码拷入记事本,选择菜单“文件-保存或另存为”,
将文件存到“C:\Program Files\Adobe\Photoshop CS\预置\脚本”目录中(根据实际安装位置),
文件名可以输入中文,如“图片加框和EXIF信息.js”等,在编码栏里选unicode,
使用:在Photoshop CS菜单中选择:文件-〉脚本,就可以看到相应的菜单项了。
代码:
//---
//在Photoshop CS中文版中加框和EXIF信息
//将自己需要修改的部分作详细说明,以便于各位自己修改
displayDialogs = DialogModes.NO;
var defaultRulerUnits = preferences.rulerUnits;
preferences.rulerUnits = Units.PIXELS;
function explodeArray(item,delimiter) {
tempArray=new Array(1);
var Count=0;
var tempString=new String(item);
while (tempString.indexOf(delimiter)>0) {
tempArray[Count]=tempString.substr(0,tempString.indexOf(delimiter));
tempString=tempString.substr(tempString.indexOf(delimiter)+1,tempString.length-tempString.indexOf(delimiter)+1);
Count=Count+1;
}
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;
//获取EXIF信息,注意相关参数的具体位置
var exifData = AD.info.exif.toString();
explodeArray(exifData,",");
var stringTemp="";
var make="";
var camera="";
var focLength="";
var expTime="";
var lensUsed="";
var ISONum="";
var dateTime="";
var Lens="";
var psVersion=0;
//判别Photoshop CS是中文版还是英文版
for(n = 0; n < tempArray.length; n = n + 2 ) {
stringTemp=tempArray[n];
if(stringTemp.indexOf("Make")!=-1){
psVersion=1;
}
break;
}
if(psVersion == 0)
{
//----------------------------------------------------------------
//Photoshop CS中文版使用以下部分获取EXIF信息
for(n = 0; n < tempArray.length; n = n + 2 ) {
stringTemp=tempArray[n];
//-------------------------------------------------
//对于有的相机型号不包括制造商部分,请使用以下3行代替下面的相机型号部分
//if(tempArray[n]=="EXIF tag 10027"){
//make=tempArray[n-3];
//}
//相机型号
if(tempArray[n]=="EXIF tag 10027"){
camera=make+tempArray[n-1];
}
//快门速度和光圈大小
if(tempArray[n]=="EXIF tag 13343"){
expTime = tempArray[n-1];
lensUsed = tempArray[n+1];
}
//ISO设置
if(stringTemp.indexOf("EXIF tag 13485")!=-1){
ISONum = ", ISO:" + tempArray[n+1];
}
//拍摄日期、时间
if(tempArray[n]=="EXIF tag 13686"){
dateTime = tempArray[n+1];
}
//使用的焦距
if(tempArray[n]=="EXIF tag 13738"){
focLength = tempArray[n+1];
}
}
}
else
{
//Photoshop CS英文版使用以下部分获取EXIF信息
for(n = 0; n < tempArray.length; n = n + 2 ) {
stringTemp=tempArray[n];
//----------------------------------------------
//对于有的相机型号不包括制造商部分,请增加以下3行
//if(stringTemp.indexOf("Make")!=-1){
//make = tempArray[n+1];
//}
//相机型号
if(stringTemp.indexOf("Model")!=-1){
camera = make+tempArray[n+1];
}
//光圈大小
if(stringTemp.indexOf("F-Stop")!=-1){
var lensUsed = tempArray[n+1];
}
//快门速度
if(stringTemp.indexOf("Exposure Time")!=-1){
expTime = tempArray[n+1];
}
//ISO设置
if(stringTemp.indexOf("ISO Speed Ratings")!=-1){
ISONum = ", ISO "+tempArray[n+1];
}
//拍摄日期、时间
if(stringTemp.indexOf("Date Time Original")!=-1){
dateTime = tempArray[n+1];
}
//使用焦距
if(tempArray[n]=="Focal Length"){
focLength=tempArray[n+1];
}
}
}
//改变日期格式
var dateArray1 = dateTime.split(" ");
if(psVersion == 0)
{
//Photoshop CS中文版使用以下两行
var phoDate = dateArray1[1];
var phoTime = dateArray1[2];
}
else
{
//Photoshop CS英文版使用以下两行
var phoDate = dateArray1[0];
var phoTime = dateArray1[1];
}
var dateArray2 = phoDate.split(":");
var monthsArray =["January",
"February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December"];
phoDate = monthsArray[dateArray2[1]-1]+" "+dateArray2[2]+" "+dateArray2[0];
//--------------------------------------------------------
//你有什么镜头,就根据镜头和最大焦距改吧
//要是焦段重叠也没法玩,还是比较一下吧
var focLength1=parseInt(focLength);
if(focLength1>=17 && focLength1<=40){
Lens = "Canon 17-40mm F4L USM";
}
if(focLength1>=70 && focLength1<=200){
Lens = "Canon 70-200mm F4L USM";
}
if(focLength1=="85"){
Lens = "Canon 85mm F1.8 USM";
}
if(focLength1=="100"){
Lens = "Canon Macro 100mm F2.8 USM";
}
//--------------------------------------------------------
//定义黑色,你也可以定义其他颜色哟
var black = new SolidColor();
black.rgb.red = black.rgb.green = black.rgb.blue = 0;
//定义白色,你也可以定义其他颜色哟
var white = new SolidColor();
white.rgb.red = white.rgb.green = white.rgb.blue = 255;
//定义蓝色,你也可以定义其他颜色哟
var blue = new SolidColor();
blue.rgb.red = 0; blue.rgb.green = 0; blue.rgb.blue = 255;
//标字和参数
var infoLayer = AD.artLayers.add();
infoLayer.kind = LayerKind.TEXT;
var TI = infoLayer.textItem;
//右对齐,如果左对齐可以省略下面这行
//TI.justification = Justification.RIGHT;
//标字的位置 (左边距,底边距)
TI.position = [10,photoHight-28];
//显示:相机型号,镜头,焦距,曝光时间,光圈,ISO设置等
TI.contents =camera+", "+Lens+" @"+focLength+","+expTime+","+lensUsed+ISONum ;
//字体、字号、颜色等
TI.font = "System";
TI.size = 12;
TI.color = blue;
var info2Layer = AD.artLayers.add();
info2Layer.kind = LayerKind.TEXT;
var TI = info2Layer.textItem;
//显示:拍摄日期及时间等 ,当然你也可以加上网址等信息
TI.position = [10,photoHight-10];
TI.contents =" Date/Time: "+phoDate+" "+phoTime + " Http:// ;
//字体、字号、颜色等
TI.font = "System";
TI.size = 12;
TI.color = blue;
//如果为白框,字体为黑色
//TI.color = black;
//AD.flatten();
//上一行为拼合图像,
//---
修改代码时注意,//表示本行后面的内容是注释,对不需要的功能只需在该行前加上//就可以,而要使用原来取消的功能,就将其实前面的//删掉,其它的都有说明。
展开阅读全文