一個超長字元串有由PHP進行壓縮,得到壓縮後字元串,再由瀏覽器的javascript進行解壓縮得到原字元串.
有沒有這樣的插件,或者演算法,函數,方法,類等工具,我還是畢竟推薦你去後盾人看看,裡面有很多關於php的這類視頻,你可以去看看
② node圖片壓縮-nodejs使用jimp實現圖片處理
怎麼用JavaScript在線壓縮圖片主要用了兩個html5的API,一個file,一個canvas,壓縮主要使用cnavas做的,file是讀取文件,之後把壓縮好的照片放入內存,最後內存轉入表單下,隨著表單提交。
照片是自己用單反拍的,5M多,壓縮下面3張分別是600多kb,400多kb,300kb的最後那張失真度很大了,壓縮效率蠻高的。
<!DOCTYPEhtml>
<html><head><metacharset="utf-8"/><title>FileAPITest</title><scripttype="text/javascript"src="js/jquery-1.11.0."></script><scripttype="text/javascript"src="js/"></script><style>#test{display:none;}</style></head><body><inputtype="file"id="fileImg"><form><imgsrc=""id="test"alt=""></form><script>functionhandleFileSelect(evt){//varfilebtn=(id);//(filebtn);//varfiles=;//();//(files);varfiles=;for(vari=0,f;f=files[i];i++){//Onlyprocessimagefiles.if(!f.('image.*')){continue;}varreader=newFileReader();//.=(function(theFile){returnfunction(e){//Renderthumbnail.//([0]);//(e.target);(e.);vari=("test");i.src=;($(i).width());($(i).height());$(i).css('width',$(i).width()/10+'px');//$(i).css('height',$(i).height()/10+'px');($(i).width());($(i).height());varquality=50;i.src=(i,quality).src;(i.src);i.="block";};})(f);//ReadintheimagefileasadataURL.(f);}}('fileImg').addEventListener('change',handleFileSelect,false);</script></body></html>
varjic={/***ReceivesanImageObject(canbeJPGORPNG)*@param{Image}source_img_objThesourceImageObject*@param{Integer}*@return{Image}result_image_objThecompressedImageObject*/compress:function(source_img_obj,quality,output_format){varmime_type="image/jpeg";if(output_format!=undefined&&output_format=="png"){mime_type="image/png";}varcvs=('canvas');//naturalWidth真實圖片的寬度=source_img_;=source_img_;varctx=("2d").drawImage(source_img_obj,0,0);varnewImageData=(mime_type,quality/100);varresult_image_obj=newImage();result_image_=newImageData;returnresult_image_obj;},function****(***)
圖片自適應方案討論延伸到sharpP1、一般來說,我們常見的使用圖片的優化方案有base64編碼、雪碧圖、字體圖片、圖片壓縮等
base64編碼
(1優勢:減少http的請求次數;當然字元串那麼長可以放後台數據也可以使用類似node來構建(例如:(dir).toString(『bse64』))
(2劣勢:圖片太多、太大(大於2KB)的話就不好玩了,好high長的字元串
合成sprite圖
(1優勢:減少http的請求次數;不用擔心圖片太多太雜
(2劣勢:生成圖片體積就比較大了,不利於並行載入
字體圖標
(1優勢:簡單,容易生成,體積也小
(2劣勢:適合移動端或兼容性高的瀏覽器,而且復雜的圖案就不好搞了
圖片壓縮
(1優勢:因為是有損或無損壓縮減少圖片大小,所以圖片流量就小了
(2劣勢:伺服器自然需要支持了
2、sharpP是騰訊公司SNG即通產品部音視頻技術中心推出的一種圖片壓縮組件,現已支持iOS、Android、Windows、Linux四個平台。編碼壓縮率、編碼耗時、解碼耗時相比webP有明顯的優勢。
sharpP採用有損壓縮,轉換工具會讀取原圖質量參數,適當降低
nodejs使用jimp實現圖片處理在開發中,圖片處理是逃不開的一個問題。jimp插件可以非常方便的實現圖片的一些常見操作。
jimp插件支持常見的圖片格式:
使用read方法把圖片資源進行讀取。讀取之後可以使用jimp提供的API對圖片做更多的操作。
原圖
縮放之後
crop(x,y,w,h)
參數分別表示開始位置的x,y以及裁剪的寬和高
裁剪的結果
rotate把圖片旋轉指定的角度。
旋轉結果
透明效果
效果
③ 手機移動端html5、js如何實現視頻上傳並壓縮視頻質量,或者降低手機攝像頭拍攝質量
你好 HTML5和javascript是不能壓縮視頻的,只能把視頻傳到伺服器端,由後端來壓縮視頻,也不能控制相機的拍攝質量,除非你用JAVA寫Android客戶端才可以壓縮。希望我的回答能夠幫助到你,如果還有什麼疑問可以繼續追問。