西西軟件園多重安全檢測(cè)下載網(wǎng)站、值得信賴的軟件下載站!
西西首頁(yè) 電腦軟件 安卓軟件 電腦游戲 安卓游戲 排行榜 專(zhuān)題合集

JS腳本與CSS樣式批量壓縮工具(SoCompressor)

V1.0綠色免費(fèi)版
  • JS腳本與CSS樣式批量壓縮工具(SoCompressor)V1.0綠色免費(fèi)版
  • 軟件大小:10.9M
  • 更新時(shí)間:2013-07-04 08:36
  • 軟件語(yǔ)言:中文
  • 軟件廠商:
  • 軟件類(lèi)別:國(guó)產(chǎn)軟件 / 免費(fèi)軟件 / 壓縮解壓
  • 軟件等級(jí):4級(jí)
  • 應(yīng)用平臺(tái):WinAll, WinXP
  • 官方網(wǎng)站:暫無(wú)
  • 應(yīng)用備案:
好評(píng):50%
壞評(píng):50%

軟件介紹

SoCompressor- JS腳本與CSS樣式批量壓縮、混淆、美化、格式化GUI工具.  

本軟件有以下幾個(gè)特點(diǎn):

1.壓縮、混淆、美化、格式化都支持,斷網(wǎng)條件下可以使用,軟件不是使用的在線API.

1.支持批量操作,可以同時(shí)處理JS與CSS文件,可以多文件導(dǎo)入,多文件夾搜尋,當(dāng)然直接復(fù)制代碼進(jìn)行操作也可。

2.可以選擇對(duì)原文件的備份處理操作:如 “在各原文件所在目錄新建名為"SoCompressor_backup"的文件夾并將原文件移到到此目錄下”,"將原文件名附加標(biāo)識(shí)".bak"以備份原文件“,移動(dòng)到桌面,或者不進(jìn)行處理等。

3.可以在備份目錄下生成還原腳本。此還原腳本的作用不是壓縮備份原文件,而是可以將最近一次用SoCompressor備份的原文件以其備份前的文件名還原到其各自的應(yīng)有位置(有點(diǎn)繞。。)。

3.對(duì)輸出文件的文件名可自定義附加標(biāo)識(shí),也有預(yù)設(shè)標(biāo)識(shí),如".min",則如果原文件名為a.js,那么輸出文件的文件名則為a.min.js.

4.輸出路徑問(wèn)題。有時(shí)候我們對(duì)不同目錄下的文件一起壓縮,這時(shí)候如果用傳統(tǒng)的方法我們還得指定一個(gè)統(tǒng)一的輸出路徑,然后再將文件一個(gè)個(gè)導(dǎo)到其它地方,所以為了方便除了可以自定義輸出路徑外,也可以讓輸出文件與其各自對(duì)應(yīng)的原文件位置相同。

5.支持多個(gè)處理引擎,目前添加了YUI Compressor與UglifyJS,如果后續(xù)有需要的話還會(huì)添加.各個(gè)處理引擎的詳細(xì)參數(shù)設(shè)置在“設(shè)置”里面可以調(diào)整。關(guān)于UglifyJS:大家都知道如果要使用UglifyJS的話需要Node.js環(huán)境,所以我在軟件里面加了處理引擎初始化,如果大家要使用UglifyJS而沒(méi)有配置好的話,軟件會(huì)自動(dòng)配置Node.js環(huán)境與UglifyJS,這也是安裝包頗大的原因,包含了Node.js在x86與x64的兩個(gè)安裝包。

貼一段其中的處理代碼:

[csharp] view plaincopy
public class JSYUI:ISoCompressor
{
public string CompressionType { get; set; }
public bool DisableOptimizations { get; set; }
public bool IgnoreEval { get; set; }
public bool ObfuscateJavascript { get; set; }
public bool PreserveAllSemicolons { get; set; }

public FileInfoAndException Execute(string inFile, string outFile, Encoding encoding)
{
FileInfoAndException fe = new FileInfoAndException();
string strContent = "";
try
{
Yahoo.Yui.Compressor.JavaScriptCompressor jsCompressor = new Yahoo.Yui.Compressor.JavaScriptCompressor();
jsCompressor.Encoding = encoding;
Yahoo.Yui.Compressor.CompressionType ct1 = Yahoo.Yui.Compressor.CompressionType.Standard;
switch (CompressionType)
{
case "Standard":
ct1 = Yahoo.Yui.Compressor.CompressionType.Standard;
break;
case "None":
ct1 = Yahoo.Yui.Compressor.CompressionType.None;
break;
}
jsCompressor.CompressionType = ct1;
jsCompressor.DisableOptimizations = this.DisableOptimizations;
jsCompressor.IgnoreEval = this.IgnoreEval; //大小寫(xiě)變換
jsCompressor.ObfuscateJavascript = this.ObfuscateJavascript; //代碼混淆
jsCompressor.PreserveAllSemicolons = this.PreserveAllSemicolons; //保留所有分號(hào)
jsCompressor.ThreadCulture = System.Globalization.CultureInfo.CurrentCulture;
strContent = jsCompressor.Compress(System.IO.File.ReadAllText(inFile, encoding));
System.IO.File.WriteAllText(outFile, strContent);
fe.outFileInfo = new FileInfo(outFile);
}
catch (Exception e)
{
fe.strException = "處理文件時(shí)出錯(cuò),錯(cuò)誤原因:" + e.Message; //此處在之后要改為捕捉具體的異常
}
return fe;
}

public bool Init()
{
return true;
}
}

public class CSSYUI:ISoCompressor
{
public string CompressionType { get; set; }
public bool RemoveComments { get; set; }

public FileInfoAndException Execute(string inFile, string outFile, Encoding encoding)
{
FileInfoAndException fe = new FileInfoAndException();
string strContent = "";
try{
Yahoo.Yui.Compressor.CssCompressor cssCompressor = new Yahoo.Yui.Compressor.CssCompressor();
Yahoo.Yui.Compressor.CompressionType ct1 = Yahoo.Yui.Compressor.CompressionType.Standard;
switch (CompressionType)
{
case "Standard":
ct1 = Yahoo.Yui.Compressor.CompressionType.Standard;
break;
case "None":
ct1 = Yahoo.Yui.Compressor.CompressionType.None;
break;
}
cssCompressor.CompressionType = ct1;
cssCompressor.RemoveComments = this.RemoveComments;
strContent = cssCompressor.Compress(System.IO.File.ReadAllText(inFile, encoding));
System.IO.File.WriteAllText(outFile, strContent);
fe.outFileInfo = new FileInfo(outFile);
}catch(Exception e)
{
fe.strException = "處理文件時(shí)出錯(cuò),錯(cuò)誤原因:" + e.Message; //此處在之后要改為捕捉具體的異常
}
return fe;
}

public bool Init()
{
return true;
}
}

軟件標(biāo)簽: JS腳本

其他版本下載

最新評(píng)論查看所有(1)條評(píng)論 >

第 1 樓 河北邯鄲聯(lián)通ADSL 網(wǎng)友 客人 發(fā)表于: 2013/7/6 14:07:29
編輯好快,我還說(shuō)自己傳到貴網(wǎng)站呢。

支持( 0 ) 蓋樓(回復(fù))

發(fā)表評(píng)論

昵稱(chēng):
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
查看所有(1)條評(píng)論 > 字?jǐn)?shù): 0/500

TOP
軟件下載