我正在使用JQuery Imazen.Crop裁剪图片。
以下是要求
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命令将图像物理存储在磁盘上,但我需要将其保存在内存中,这样当用户单击页面上的保存按钮时,我可以保存在磁盘上或数据库中。
我可以对裁剪网址值执行任何操作“data:image / png?crop = 261,43,461,203&amp; cropxunits = 500&amp; cropyunits = 400”
答案 0 :(得分:0)
您可以将这些值与源流一起发送到ImageResizer,并将结果写入MemoryStream。
new ImageJob(sourceStream,memoryStream, new Instructions("crop=261,43,461,203&cropxunits=500&cropyunits=400")).Build();