На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> Загрузка фотографии на сайт , Обрезка фото
    :'( :'( :'( помогиииите, я уже незнаю с какой стороны подойти.
    Нужно нечто подобное:
    user posted image
    то есть страница регистрации или изменения данных пользователя
    необходимо загрузить/обновить фото аватарки
    представим страница регистрации поля ввода лобелы и т.п.
    нешел сервис AjaxControlToolkit.AsyncFileUpload
    у которого есть ajax функции
    ExpandedWrap disabled
      <script type="text/javascript">
       
              function uploadError(sender, args) {
                  document.getElementById('lblStatus').innerHTML = args.get_fileName(), "<span style='color:red;'>" + args.get_errorMessage() + "</span>";
              }
       
              function StartUpload(sender, args) {
                  var name_input = document.getElementById('lblStatus');
                  name_input.innerHTML = "Ожидайте, идет загрузка файла.";
              }
       
              function UploadComplete(sender, args) {
                  var filename = args.get_fileName();
                  var contentType = args.get_contentType();
                  var text = "Файл " + filename + " размером " + args.get_length() + " байт";
                  if (contentType.length > 0) {
                      text += " был успешно загружен.";
                  }
                  document.getElementById('lblStatus').innerHTML = text;
              }
       
              function fnClearFileInput() {
                  var ctlUpload = document.getElementById("lblStatus");
                  var inputFields = ctlUpload.getElementsByTagName("input");
                  for (var i = 0; i < inputFields.length; i++) {
                      if (inputFields[i].type == "text") {
                          inputFields[i].value = "";
                          inputFields[i].style.backgroundColor = "white";
                      }
                  }
              }
          </script>


    по сути мне нужно в function UploadComplete открыть новое окно (или отобразить div),
    которое загрузит - загруженную фото (сори за туфталогию) в новое окно(или отображенный div)
    после редактирования фото(отредактированное) должно от рисоваться в основном окне на страница регистрации или изменения данных пользователя
    поясню:
    страница загрузки:
    user posted image
    нажимаем кнопочку "Загрузить фото"
    открывается окно с уже загруженной фото (как на примере-первое фото)
    редактируем, сохраняем.

    закрывается модальное окно, остается родительское
    в родительском окне должна отобразится отредактированная фото.

    у меня есть немного кода-примеров:
    вот например со стороны сервера
    ExpandedWrap disabled
      Private Function CropImageFile(ByVal imageFile As Byte(), ByVal targetW As Integer, ByVal targetH As Integer, ByVal targetX As Integer, ByVal targetY As Integer) As Byte()
              Dim imgMemoryStream As MemoryStream = New MemoryStream()
              Dim imgPhoto As System.Drawing.Image = System.Drawing.Image.FromStream(New MemoryStream(imageFile))
              Dim bmPhoto As Bitmap = New Bitmap(targetW, targetH, PixelFormat.Format24bppRgb)
              bmPhoto.SetResolution(72, 72)
              Dim grPhoto As Graphics = Graphics.FromImage(bmPhoto)
              'Adjust settings to make this as high-quality as possible  
              grPhoto.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias
              grPhoto.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic
              grPhoto.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality
              Try
                  grPhoto.DrawImage(imgPhoto, New Rectangle(0, 0, targetW, targetH),
                                          targetX, targetY, targetW, targetH, GraphicsUnit.Pixel)
                  'Only JPG format for this demo
                  bmPhoto.Save(imgMemoryStream, System.Drawing.Imaging.ImageFormat.Jpeg)
              Catch ex As Exception
                  Throw ex
              Finally
                  imgPhoto.Dispose()
                  bmPhoto.Dispose()
                  grPhoto.Dispose()
              End Try
              Return imgMemoryStream.GetBuffer()
          End Function
          Private Sub writeByteArrayToFile(ByVal byteImage() As Byte)
              strPath = MapPath("~/Avatars/") + Random.STR(10) + ".jpeg"
              Using binWriter As BinaryWriter = New BinaryWriter(File.Open(strPath, FileMode.Create))
                  binWriter.Write(byteImage)
              End Using
          End Sub

    есть тотже код со стороны пользователя. но вот прикол я даже не могу вызвать модальное окно (div)
    настолько запутался в ява скриптах. (терпеть немогу языки с непонятными объявлениями переменных и функций)
    тут такое количество скриптов что например openWindow повторяется трижды и все разные (насколько я понял в ява нет перегрузок xDD)

    у кого какие идеи будут?
      какой еще openWindow? используй ModalPopup

      Добавлено
      Цитата -=VIRUS=- @
      насколько я понял в ява

      javascript, а не ява
      Сообщение отредактировано: UncleBob -
        Насколько я понял речь идет о "animated modal popup", я пока не вкурил как использовать, ща ночку по гуглю завтро будет много вопросов :blush:

        Добавлено
        эмм, я чет может не понимаю, нашел пример :
        Dynamic AJAX Modal Popup тут юзают CourtService.asmx насколько я понял это веб служба, верно?
        если верно, то мне нужно посредством этой службы взять фото загрузить его, отредактировать и вернуть той же службе, я правильно понимаю? остается момент как обновить/загрузить фото в родительское окно? обновлять окно не допустимо, если рассматривать окно с перезагрузкой то весь этот гемор не нужен. Я это и так могу реализовать.
        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
        0 пользователей:


        Рейтинг@Mail.ru
        [ Script execution time: 0,0224 ]   [ 16 queries used ]   [ Generated: 2.05.24, 06:10 GMT ]