преобразовать изображение

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by kokoulin, 13 Dec 2011.

  1. kokoulin

    kokoulin Member

    Joined:
    8 Jan 2011
    Messages:
    63
    Likes Received:
    5
    Reputations:
    5
    как преобразовать string в control.image c#
    я получаю очень страшную строку вида
    Code:
    �PNG\r\n\n\0\0\0\rIHDR\0\0\0\0\0�\b\0\0\0��yN\0\0\0\tpHYs\0\0\v\0\0\v\0��\0\0\nOiCCPPhotoshop ICC profile\0\0xڝSgTS�=���BK���KoR\b RB���&*!\tJ�!��Q�EEȠ�����Q,\f�\n�\a�!���������{�kּ������>���\a�\b\f�H3Q5�\f�B������.@�\n$p\0\b�d!s�#\0�~<<+\"�\a�\0x�\v\b\0�M��0���B�\\���t�8K\b�\0@z�B�
    ...
    \0@F���&S\0�\0`�cb�\0P-\0`'��\0����{\0[�!��\0 e�D\0h;\0��V�E\0X0\0fK�9\0�-\00IWfH\0��\0��\v�\0\b\f\00Q��)\0{\0`�##x\0��\0F�W<�+��*\0\0x��<�$9E�[\b-\n\f\f���Շ��q�ou%�f���4Bsڋ��Ƿ[ZZڣG=�i�~~~�
    �aaa�[���d�\n���S�҄��jMe噳gϜ9�e��W�����\0\0�
    ее мне нужно преобразовать в изображение
    каким образом это можно сделать
    это фрагмент строки
     
    #1 kokoulin, 13 Dec 2011
    Last edited: 13 Dec 2011
  2. altblitz

    altblitz Elder - Старейшина

    Joined:
    5 Jun 2009
    Messages:
    3,697
    Likes Received:
    3,139
    Reputations:
    236
    это не изображение, а говно-код.
    скачивайте ещё раз, само изображение.

    IrfanView вам поможет с обработкой.
     
  3. $asha

    $asha New Member

    Joined:
    6 Jul 2011
    Messages:
    14
    Likes Received:
    4
    Reputations:
    0
    Code:
    public Image GetImage(string url, string referer)
            {
                Image image = null;
                try
                {
                    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
                    req.AllowAutoRedirect = false;
                    req.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
                    req.Referer = referer;
                    req.Method = "GET";
                    req.Accept = "image/png,image/*;q=0.8,*/*;q=0.5";
                    req.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0.1) Gecko/20100101 Firefox/8.0.1";
                    req.Headers.Add("Accept-Encoding", "gzip, deflate");
                    req.Headers.Add("Accept-Language", "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3");//
                    req.Headers.Add("Accept-Charset", "windows-1251,utf-8;q=0.7,*;q=0.3");
                    if (!string.IsNullOrEmpty(_cookie))
                        req.Headers.Add("Cookie", _cookie);
                    HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
                    using (Stream stream = resp.GetResponseStream())
                    {
                        byte[] bytes = ReadFully(stream);
                        image = bytesToImage(bytes);
                    }
                }
                catch(Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                return image;
            }
    
    Image img = GetImage("http://....png", "");
    img.Save("image.png");
    
     
  4. $asha

    $asha New Member

    Joined:
    6 Jul 2011
    Messages:
    14
    Likes Received:
    4
    Reputations:
    0
    Бред не неси, ок?
    Это не код, а изображение, которое он получил в виде строки.
    Надо просто преобразовать строку в набор байтов, а затем в изображение.
    Первый способ я уже показал, есть и второй способ:
    Code:
     
            public static System.Drawing.Image bytesToImage(byte[] byteArrayIn)
            {
                MemoryStream ms = new MemoryStream(byteArrayIn);
                System.Drawing.Image returnImage = System.Drawing.Image.FromStream(ms);
                return returnImage;
            }
    
    public static byte[] StrToByteArray(string str)
    {
        System.Text.UTF8Encoding  encoding=new System.Text.UTF8Encoding();
        return encoding.GetBytes(str);
    }
    
    image_string - твоя строка с картинкой
    Image img = bytesToImage(StrToByteArray(image_string));
    
    
    
    
     
    1 person likes this.
  5. kokoulin

    kokoulin Member

    Joined:
    8 Jan 2011
    Messages:
    63
    Likes Received:
    5
    Reputations:
    5
    Большое Спасибо