2014-11-05 4 views
0

JQuery Imazen.Crop을 사용하여 이미지를 자릅니다. 여기 메모리에서 이미지를 검색하고 자르고 메모리에 다시 저장하십시오.

는 자르기 buttom의 클릭 이벤트에 캔버스
  • 쇼 메모리 요구 사항

    • 업로드 이미지
    • 저장 메모리에 이미지를 저장합니다.

    aspx 페이지

    <asp:Image ID="imgCanvass" CssClass="imageCanvass" runat="server" ImageUrl="~/photos/inspectors/5500-tmp.png" Width="500" Height="500" /> 
        <ic:CropImage ID="cropImage" runat="server" Image="imgCanvass" CanvasWidth="500" FixedAspectRatio="true" X="100" Y="100" W="132" H="170" /> 
    

    코드 스트림에 이미지를 업로드 캔버스에 표시 저장합니다. 사용자가이 버튼을 저장을 클릭하면

    If filBrowse.HasFile Then 
         fileExtension = System.IO.Path.GetExtension(filBrowse.FileName) 
    
         Dim fs As Stream = filBrowse.PostedFile.InputStream 
         Dim br As New BinaryReader(fs) 
         Dim bytes As [Byte]() = br.ReadBytes(CInt(fs.Length)) 
         Dim base64String As String = Convert.ToBase64String(bytes, 0, bytes.Length) 
    
         imgCanvass.ImageUrl = Convert.ToString("data:image/png;base64,") & base64String 
         Me.panelCanvass.Visible = True 
        End If 
    

    나는 물리적으로 디스크에 이미지를 저장하기 위해 cropImage.Crop 명령을 사용할 수 있지만 대신 나는 디스크 나 데이터베이스에 저장 될 수 있습니다 있도록 메모리에 저장해야 페이지.

    내가 작물 URL 값으로 아무것도 할 수 없습니다 "데이터 : 이미지/PNG 작물 = 261,43,461,203 & cropxunits = 500 & cropyunits = 400"

  • 답변

    0

    당신은 소스 스트림과 함께 ImageResizer에 그 값을 보낼 수 있습니다 , 결과를 MemoryStream에 기록하도록합니다.

    new ImageJob(sourceStream,memoryStream, new Instructions("crop=261,43,461,203&cropxunits=500&cropyunits=400")).Build();

    관련 문제