如何在VBScript中引用Photoshop文件夹对象
How to reference Photoshop Folder object in VBScript
使用Adobe PhotoShop CS4脚本,JavaScript提供了File
和Folder
类,但我不知道如何从VBScript中使用这些类。
目前我使用DoJavaScript
函数如下:
Set appRef = CreateObject("Photoshop.Application")
jsCode = Array(_
"var inFolder = Folder.selectDialog('Select a folder to process');",_
"if(inFolder != null){",_
" var fileList = inFolder.getFiles(/'.(jpg|jpeg|tif|)$/i);",_
" var outFolder = new Folder(decodeURI(inFolder) + '/Edited');",_
" if (outFolder.exists == false) outFolder.create();",_
" for(var i = 0 ;i < fileList.length; i++){",_
" var doc = open(fileList[i]);",_
" doc.flatten();",_
" var docName = fileList[i].name.slice(0,-4);",_
" var saveFile = new File(decodeURI(outFolder) + '/' + docName + '.png');",_
" SavePNG(saveFile);",_
" activeDocument.close(SaveOptions.DONOTSAVECHANGES);",_
" }",_
"}",_
"function SavePNG(saveFile){",_
" pngSaveOptions = new PNGSaveOptions();",_
" pngSaveOptions.embedColorProfile = true;",_
" pngSaveOptions.formatOptions = FormatOptions.STANDARDBASELINE;",_
" pngSaveOptions.matte = MatteType.NONE;",_
" pngSaveOptions.quality = 1;",_
" pngSaveOptions.PNG8 = false;",_
" pngSaveOptions.transparency = true;",_
" activeDocument.saveAs(saveFile, pngSaveOptions, true, Extension.LOWERCASE);",_
"}")
appRef.DoJavaScript(Join(jsCode, vbNewLine))
我的问题是:我可以使用Folder
和File
类直接从我的VB脚本?比如:
Set psFolder = appRef.Folder
inputFolder = psFolder.selectDialog("Select a folder to process")
当我尝试这个,appRef.Folder
返回这个错误:
对象不支持此属性或方法
在VBscript中,您可以使用FileSystemObject访问文件夹:
'1.a - user browse for folder
Set objShell = CreateObject( "Shell.Application" )
Set objFolder = objShell.BrowseForFolder( 0, "Select Folder", 0, myStartFolder )
'1.b - or use a fixed one
sFolder = "C:'foo'anyFolder'"
Set fs = CreateObject("Scripting.FileSystemObject")
Set objFolder = fs.GetFolder(sFolder)
'parse the content of the folder
Set oChildren = objFolder.SubFolders
ReDim aList(oChildren.Count)
For i = 1 To oChildren.Count
aList(i) = oChildren.Item(i).Name
Next
相关文章:
- 如何在android中使用phonegap将文件从一个文件夹移动/复制到另一个文件夹
- 如何将乳胶配方奶粉图像保存到Asp.net中的文件夹中
- 展开和折叠文件夹
- 在ng重复循环中显示来自不同文件夹的图像
- 如何将所有JS文件连接到一个文件夹中
- 是否可以用JavaScript显示等效的文件夹对话框
- grunt上的压缩文件夹不起作用
- 如何使用javascript获取从指定文件夹创建的所有文件的名称、大小、类型和日期
- 将Windows文件路径组织到文件夹中
- 链接/按钮从子文件夹下载文件--浏览器只是浏览
- 在更改名称时,使用ajax jsp在下拉菜单中填充多个文件夹的数据
- 我应该将MVC视图特定的javascript文件放在哪个文件夹中
- 如何将JS文件从其他文件夹链接到页面
- 将文件从应用程序文件夹复制到JQM/Phonegap应用程序中的根文件夹
- 在以前的文件夹中加载脚本
- 如何在ExtJs4应用程序上为视图、存储和模型设置自定义文件夹名称
- AngularJS-如何列出给定文件夹中的文件名
- Photoshop 脚本 - 调整文件夹中的图像大小(对话框)
- 如何在VBScript中引用Photoshop文件夹对象
- Photoshop ScriptListener 访问文件夹中的所有文件