Extendscript Photoshop: есть ли способ сохранить JPEG с определенными размерами файлов KB для веб-сайтов? - PullRequest
0 голосов
/ 15 сентября 2018

Я пытаюсь использовать следующее.то, что это делает, экономит Jpeg соответственно меньше чем определенный установленный размер.Мне было бы любопытно, если бы кто-нибудь знал, как конкретно указать имя файла, чтобы получить размер файла, равный следующему или максимально близкий.

Filename_160x600.png = Filename_160x600.jpg 39kb

Filename_300x600.png = Filename_300x600.jpg 59kb

Filename_1500x513.png = Filename_1500x513.jpg 150kb

         saveJPG(
         {
         path: activeDocument.path,
         maxSize: 50 //size in kbs
         })

        function saveJPG(_data)
    {
    if (_data.path == undefined) return false;
    _data.name = _data.name == undefined ? activeDocument.name : _data.name;
    _data.quality == undefined && _data.quality = 75;

    if (!new Folder(_data.path).exists)


{
        alert("Output path doesn't exist!"); //you can add a function to create a path if needed
        return false
    }

    var options = new ExportOptionsSaveForWeb(),
        jpgFile = new File(_data.path + '/' + getName(_data.name) + '.jpg');

    options.format = SaveDocumentType.JPEG;
    options.quality = _data.quality;
    activeDocument.exportDocument(jpgFile, ExportType.SAVEFORWEB, options);
    if (_data.maxSize != undefined)
    {
        var ms = _data.maxSize * 1000;
        if (jpgFile.length > ms)
        {
            if (!jpgFile.remove())
            {
                alert('Save file is locked, please make sure it\'s not opened anywhere');
                return
            };
            saveJPG(
            {
                path: _data.path,
                name: _data.name,
                maxSize: _data.maxSize,
                quality: _data.quality - 2
            });
        }
    };
...