none
Как узнать высоту и ширину swf баннера при загрузке на сайт через форму. RRS feed

  • Вопрос

  • Подскажите, как узнать высоту и ширину swf баннера при загрузке на сайт через форму.

    Этот код работает только на картинках.

    Image bmp = Image.FromFile(FileName);
    int w = bmp.Width;
    int h = bmp.Height;
    

    А при загрузки swf баннеров пишет ошибку.

    Для PHP этот код:

    $size = getimagesize ("logo.swf");
    var_dump($size);
    А для swf баннеров в C# нельзя узнать размер в пикселах?

    29 августа 2015 г. 19:23

Ответы

  • Вот ведь. Обновил пакет и всё. Перезапустил Visual Studio и всё заработало.

    В общем кто хочет узнать высоту и ширину swf баннера при загрузке на сайт через форму:

    Устанавливайте через Диспетчер пакетов NuGet: SwfDotNet.IO.dll с ним в комплекте идут log4net.dll, SharpZipLib.dll.

    Затем находите пакет SharpZipLib.Portable 0.86. Ставите и наслаждаетесь.

    Добавляем на страницу:

    @usingSwfDotNet.IO;

    SwfReader swfReader = new SwfReader(FileName);
    SwfHeader swf = swfReader.ReadSwfHeader();
    
    Version: @swf.Version
    Size: @swf.Width x @swf.Height
    Fps: @swf.Fps
    File size: @swf.FileSize
    Frames count: @swf.Frames
    Signature: @swf.Signature



    30 августа 2015 г. 19:32

Все ответы

  • Т.е. файл у вас находится на сервере, нужно загрузить и узнать его размер? Посмотрите вот тут, инфа старая но должна работать.

    Сделаем содержимое сообщества лучше, вместе!

    30 августа 2015 г. 16:52
    Модератор
  • Я в интернете вот такую инфу нашёл.

    Файл SwfDotNet.IO.dll для папки Bin.

    Ниже код для страницы:

    1. SwfReader swfReader = new SwfReader(fileSavePath);
    2. Swf swf = swfReader.ReadSwf();
    3. int swfWidth = swf.Header.Width;
    4. int swfHeight = swf.Header.Height;

    Visual Studio ошибок не находит.

    Но при загрузки Флеш часиков через форму происходит ошибка 500 на второй строке кода выше.

    Разобраться не могу в чём проблема.


    30 августа 2015 г. 17:34
  • Вот какая ошибка:

    Invalid swf version: 10, the max supported version is 7.

    Не подходит Файл SwfDotNet.IO.dll для папки Bin.

    И как исправить?

    30 августа 2015 г. 18:21
  • Версия файла не поддерживается, придётся икать другие решения. Или может есть обновления данной библиотеки.

    Сделаем содержимое сообщества лучше, вместе!

    30 августа 2015 г. 18:46
    Модератор
  • Обновил библиотеки. Тоже самое.

    Там пакет из 3 файлов: log4net.dll, SharpZipLib.dll, SwfDotNet.IO.dll.

    Они тоже обновились, но ошибка не исчезла.

    Может картинку вытянуть из баннера, а потом у неё узнать размер?

    30 августа 2015 г. 19:06
  • Вот ведь. Обновил пакет и всё. Перезапустил Visual Studio и всё заработало.

    В общем кто хочет узнать высоту и ширину swf баннера при загрузке на сайт через форму:

    Устанавливайте через Диспетчер пакетов NuGet: SwfDotNet.IO.dll с ним в комплекте идут log4net.dll, SharpZipLib.dll.

    Затем находите пакет SharpZipLib.Portable 0.86. Ставите и наслаждаетесь.

    Добавляем на страницу:

    @usingSwfDotNet.IO;

    SwfReader swfReader = new SwfReader(FileName);
    SwfHeader swf = swfReader.ReadSwfHeader();
    
    Version: @swf.Version
    Size: @swf.Width x @swf.Height
    Fps: @swf.Fps
    File size: @swf.FileSize
    Frames count: @swf.Frames
    Signature: @swf.Signature



    30 августа 2015 г. 19:32