Оптимизация картинок

lazybones

Client
Регистрация
08.02.2013
Сообщения
242
Благодарностей
31
Баллы
28
Подскажите, как правильно подправить код, чтобы он заработал в зенке
Вот тут есть сам код на C# with .NET - https://tinypng.com/developers/reference
а именно
Код:
using System;
using System.Net;
using System.Text;
using System.IO;

class Program {
  static void Main() {
    string key = "<your api key>";
    string input = "large-input.png";
    string output = "tiny-output.png";

    string url = "https://api.tinypng.com/shrink";

    WebClient client = new WebClient();
    string auth = Convert.ToBase64String(Encoding.UTF8.GetBytes("api:" + key));
    client.Headers.Add(HttpRequestHeader.Authorization, "Basic " + auth);

    try {
      client.UploadData(url, File.ReadAllBytes(input));
      /* Compression was successful, retrieve output from Location header. */
      client.DownloadFile(client.ResponseHeaders["Location"], output);
    } catch (WebException) {
      /* Something went wrong! You can parse the JSON body for details. */
      Console.WriteLine("Compression failed.");
    }
  }
}
Понятно что <your api key> будет вставлен ключ
что large-input.png будет переменная project.Variables["url"].Value
тоже с выходным файлом
Интересует весь остальной код как подогнать, чтобы он заработал в зенке.

Задача, взять картинку из папки на компе, оптимизировать и сохранить ее у себя же на компе
 

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 263
Баллы
113
C#:
 string key = "<your api key>";
    string input = "large-input.png";
    string output = "tiny-output.png";
    string url = "https://api.tinypng.com/shrink";
    WebClient client = new WebClient();
    string auth = Convert.ToBase64String(Encoding.UTF8.GetBytes("api:" + key));
    client.Headers.Add(HttpRequestHeader.Authorization, "Basic " + auth);
    try {
      client.UploadData(url, File.ReadAllBytes(input));
      client.DownloadFile(client.ResponseHeaders["Location"], output);
    } catch (WebException) {
        
    }
 

LexxWork

Client
Регистрация
31.10.2013
Сообщения
1 190
Благодарностей
786
Баллы
113
у меня как не работало так и не работает. что-то с сертификатом или хз... только через курл.
 

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 263
Баллы
113
Я особо не вникал в суть. Что за оптимизация?
 

lazybones

Client
Регистрация
08.02.2013
Сообщения
242
Благодарностей
31
Баллы
28
у меня тоже не работает
Код:
string key = "ключ";
string input = "project.Variables[url].Value";
string output = "project.Variables["url"].Value";
string url = "https://api.tinypng.com/shrink";
WebClient client = new WebClient();
string auth = Convert.ToBase64String(Encoding.UTF8.GetBytes("api:" + key));
client.Headers.Add(HttpRequestHeader.Authorization, "Basic " + auth);
try {
client.UploadData(url, File.ReadAllBytes(input));
client.DownloadFile(client.ResponseHeaders["Location"], output);
} catch (WebException) {   
}
ключ вставлял, пишет -
Компиляция кода Ошибка в действии "CS1002" "ожидалось ;". [Строка 3; Столбец: 36]
Компиляция кода Ошибка в действии "CS1002" "ожидалось ;". [Строка 3; Столбец: 40]
Компиляция кода Ошибка в действии "CS1002" "ожидалось ;". [Строка 4; Столбец: 37]
Компиляция кода Ошибка в действии "CS1002" "ожидалось ;". [Строка 4; Столбец: 41]

по ссылке посмотрите, там примеры даны -https://tinypng.com/developers/reference
 

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 263
Баллы
113
  1. string input = "project.Variables.Value"; убери кавычки

string input = project.Variables[url].Value;
...[/LIST]
 

lazybones

Client
Регистрация
08.02.2013
Сообщения
242
Благодарностей
31
Баллы
28
  1. string input = "project.Variables.Value"; убери кавычки
string input = project.Variables.Value; ...[/LIST]
я понимаю, что вы пишите по тем ошибкам, которые я написал, но вы все таки не вникли что нужно и не посмотрели как нужно

если я сделаю так string input = project.Variables.Value;
то что в итоге то будет?
тут идет объявление переменной input именно тут в скрипте, больше нигде ее нет и я ей назначаю параметр - project.Variables.Value;
Это вообще что?
 

LexxWork

Client
Регистрация
31.10.2013
Сообщения
1 190
Благодарностей
786
Баллы
113
string key = "PrW6mrjTHHtQb_lITkQw3beYasM5ZOp-";
string input = project.Variables["путь_каринки"].Value;
string output = project.Variables["url"].Value;
string url = "https://api.tinypng.com/shrink";
WebClient client = new WebClient();
string auth = Convert.ToBase64String(Encoding.UTF8.GetBytes("api:" key));
client.Headers.Add(HttpRequestHeader.Authorization, "Basic " auth);
client.UploadData(url, File.ReadAllBytes(input));
client.DownloadFile(client.ResponseHeaders["Location"], output);

я не думаю что это вам поможет. там с сертификатом проблема. его наверно нужно устанавливать на комп, но где брать я не знаю.
 
Последнее редактирование:

Dmitry25

Client
Регистрация
18.08.2016
Сообщения
51
Благодарностей
4
Баллы
8
string output = ""+project.Variables["url"].Value+""
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)