Quelqu'un peut-il me dire En ASP.NET C#, comment puis-je faire un recadrage d'un aimage enregistré dans le serveur.Je veux supprimer 10 px de la gauche de ma photo. Merci à l'avanceASP.NET C#: Recadrer une image
1
A
Répondre
-1
ici solution de code
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link href="css/jquery.Jcrop.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.Jcrop.js"></script>
</head>
<body>
<form id="form2" runat="server">
<div>
<asp:Panel ID="pnlUpload" runat="server">
<asp:FileUpload ID="Upload" runat="server" />
<br />
<asp:Button ID="btnUpload" runat="server" OnClick="btnUpload_Click" Text="Upload" />
<asp:Label ID="lblError" runat="server" Visible="false" />
</asp:Panel>
<asp:Panel ID="pnlCrop" runat="server" Visible="false">
<asp:Image ID="imgCrop" runat="server" />
<br />
<asp:HiddenField ID="X" runat="server" />
<asp:HiddenField ID="Y" runat="server" />
<asp:HiddenField ID="W" runat="server" />
<asp:HiddenField ID="H" runat="server" />
<asp:Button ID="btnCrop" runat="server" Text="Crop" OnClick="btnCrop_Click" />
</asp:Panel>
<asp:Panel ID="pnlCropped" runat="server" Visible="false">
<asp:Image ID="imgCropped" runat="server" />
</asp:Panel>
</div>
</form>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#imgCrop').Jcrop({
onSelect: storeCoords
});
});
function storeCoords(c) {
jQuery('#X').val(c.x);
jQuery('#Y').val(c.y);
jQuery('#W').val(c.w);
jQuery('#H').val(c.h);
};
</script>
</body>
</html>
C# code pour le téléchargement et l'image des cultures.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using SD = System.Drawing;
using System.Drawing.Imaging;
using System.Drawing.Drawing2D;
namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
String path = HttpContext.Current.Request.PhysicalApplicationPath + "images\\";
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnUpload_Click(object sender, EventArgs e)
{
Boolean FileOK = false;
Boolean FileSaved = false;
if (Upload.HasFile)
{
Session["WorkingImage"] = Upload.FileName;
String FileExtension = Path.GetExtension(Session["WorkingImage"].ToString()).ToLower();
String[] allowedExtensions = { ".png", ".jpeg", ".jpg", ".gif" };
for (int i = 0; i < allowedExtensions.Length; i++)
{
if (FileExtension == allowedExtensions[i])
{
FileOK = true;
}
}
}
if (FileOK)
{
try
{
Upload.PostedFile.SaveAs(path + Session["WorkingImage"]);
FileSaved = true;
}
catch (Exception ex)
{
lblError.Text = "File could not be uploaded." + ex.Message.ToString();
lblError.Visible = true;
FileSaved = false;
}
}
else
{
lblError.Text = "Cannot accept files of this type.";
lblError.Visible = true;
}
if (FileSaved)
{
pnlUpload.Visible = false;
pnlCrop.Visible = true;
imgCrop.ImageUrl = "images/" + Session["WorkingImage"].ToString();
}
}
protected void btnCrop_Click(object sender, EventArgs e)
{
string ImageName = Session["WorkingImage"].ToString();
int w = Convert.ToInt32(W.Value);
int h = Convert.ToInt32(H.Value);
int x = Convert.ToInt32(X.Value);
int y = Convert.ToInt32(Y.Value);
byte[] CropImage = Crop(path + ImageName, w, h, x, y);
using (MemoryStream ms = new MemoryStream(CropImage, 0, CropImage.Length))
{
ms.Write(CropImage, 0, CropImage.Length);
using (SD.Image CroppedImage = SD.Image.FromStream(ms, true))
{
string SaveTo = path + "crop" + ImageName;
CroppedImage.Save(SaveTo, CroppedImage.RawFormat);
pnlCrop.Visible = false;
pnlCropped.Visible = true;
imgCropped.ImageUrl = "images/crop" + ImageName;
}
}
}
static byte[] Crop(string Img, int Width, int Height, int X, int Y)
{
try
{
using (SD.Image OriginalImage = SD.Image.FromFile(Img))
{
using (SD.Bitmap bmp = new SD.Bitmap(Width, Height))
{
bmp.SetResolution(OriginalImage.HorizontalResolution, OriginalImage.VerticalResolution);
using (SD.Graphics Graphic = SD.Graphics.FromImage(bmp))
{
Graphic.SmoothingMode = SmoothingMode.AntiAlias;
Graphic.InterpolationMode = InterpolationMode.HighQualityBicubic;
Graphic.PixelOffsetMode = PixelOffsetMode.HighQuality;
Graphic.DrawImage(OriginalImage, new SD.Rectangle(0, 0, Width, Height), X, Y, Width, Height, SD.GraphicsUnit.Pixel);
MemoryStream ms = new MemoryStream();
bmp.Save(ms, OriginalImage.RawFormat);
return ms.GetBuffer();
}
}
}
}
catch (Exception Ex)
{
throw (Ex);
}
}
}
}
Ici, il travaille démo sur github
+0
J'ai également mis à jour le contenu et le code ici. –
Questions connexes
- 1. JavaScript glisser-déposer recadrer photo recadrer
- 2. Comment recadrer une partie de l'image gif?
- 3. Trouver une image dans une image C#
- 4. C# rogner une image à la petite partie supérieure
- 5. Pourquoi dois-je spécifier une résolution à recadrer?
- 6. Comment puis-je réécrire une image correctement? C# ASP.NET
- 7. Placer une image de filigrane sur d'autres images (C#, ASP.Net)
- 8. essayant de recadrer et de télécharger une image dans un dossier en PHP
- 9. Quel est le meilleur moyen de recadrer une image en HTML?
- 10. Streaming octet [] vers Image dans ASP.NET C#
- 11. Vous cherchez ASP.NET (MVC, AJAX) Image Manager
- 12. Redimensionner vs Recadrer
- 13. C# ajouter une couche à une image
- 14. Comment redimensionner une image pour l'adapter à Image :: Magick?
- 15. Bibliothèque d'images qui va recadrer automatiquement
- 16. Pourquoi ne puis-je pas recadrer cette image dans Python PIL? (problème de syntaxe simple?)
- 17. Recadrer l'image à partir de l'entrée utilisateur
- 18. Image Resizer pour ASP.NET
- 19. ASP.NET Image Listbox
- 20. image Redimensionner dans asp.net
- 21. Image Miniatures ASP.NET
- 22. La meilleure façon d'estamper une image avec une autre image pour créer un filigrane dans ASP.NET?
- 23. C# DataGridView - Image transparente
- 24. C++ Spin Image Resources
- 25. Trouver une Image dans une Image
- 26. Accéder à une image dans une image
- 27. C# excel image
- 28. Oracle + C# Image
- 29. Dessiner une boîte sur une image, javascript seulement?
- 30. C# .NET Convertir une image JPEG en une structure Bitmap
Rappelez-vous que ASP.NET est un moyen de générer des pages HTML. La question est de savoir comment recadrer des images en HTML? –
Dupliquer de: http://stackoverflow.com/questions/794709/c-crop-an-image-at-small-top-portion ainsi que http://stackoverflow.com/questions/734930/how -to-crop-an-image-using-c – womp