Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JIC图像压缩技术不适用于PNG图像_Javascript - Fatal编程技术网

Javascript JIC图像压缩技术不适用于PNG图像

Javascript JIC图像压缩技术不适用于PNG图像,javascript,Javascript,JIC压缩仅适用于JPG图像,但如果我上传PNG文件压缩将无法工作,我的代码如下: var jic = { * @param {Image} source_img_obj The source Image Object * @param {Integer} quality The output quality of Image Object * @param {String} output format. Possible values are jpg and p

JIC压缩仅适用于JPG图像,但如果我上传PNG文件压缩将无法工作,我的代码如下:

var jic = {

     * @param {Image} source_img_obj The source Image Object
     * @param {Integer} quality The output quality of Image Object
     * @param {String} output format. Possible values are jpg and png
     * @return {Image} result_image_obj The compressed Image Object
     */

    compress: function(source_img_obj, quality, output_format){

         var mime_type = "image/jpeg";//mime_type can be png as well.

         var cvs = document.createElement('canvas');
         cvs.width = source_img_obj.naturalWidth;
         cvs.height = source_img_obj.naturalHeight;
         var ctx = cvs.getContext("2d").drawImage(source_img_obj, 0, 0);
         var newImageData = cvs.toDataURL(mime_type, quality/100);
         alert(newImageData);
         var result_image_obj = new Image();
         result_image_obj.src = newImageData;
         return result_image_obj;
    },

请参阅toDataURL中的质量参数方法仅对jpeg(或webp)有效。或者是否有任何方法可以压缩Javascript或jquery中的数据。这样我就可以将压缩数据从浏览器传递到服务器。在服务器端我可以处理压缩。谢谢你的回复客户端PNG图像压缩不是那么容易,因为你应该使用画布的imagebitmap创建优化的PNG二进制文件,就像这样(用日语写的…)好的,谢谢你sirsee toDataURL的质量参数方法只影响jpeg(或webp).或者是否有任何方法可以压缩Javascript或jquery中的数据。这样我就可以将压缩数据从浏览器传递到服务器。在服务器端,我可以处理压缩。谢谢你的回复客户端PNG图像压缩不是那么容易,因为你应该使用画布的imagebitmap创建优化的PNG二进制文件,就像这样(用日语写的…)好的,谢谢你,先生