Image cropping issue in C#
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
In my asp.net C# application, I am trying to crop the below image:
I have selected only the face part, but the cropped image always selecting from top left corner like below:
I am using the below code to crop image:
Rectangle sourceRect = new Rectangle(iX1, iY1, w, h);
System.Drawing.Image imgNew = CropImage(imgOrig, sourceRect);
private static System.Drawing.Image CropImage(System.Drawing.Image img, Rectangle cropArea)
{
Bitmap bmpImage = new Bitmap(img);
Bitmap bmpCrop = bmpImage.Clone(cropArea, bmpImage.PixelFormat);
img.Dispose();
return (System.Drawing.Image)bmpCrop;
}
c# asp.net image image-processing
add a comment |
In my asp.net C# application, I am trying to crop the below image:
I have selected only the face part, but the cropped image always selecting from top left corner like below:
I am using the below code to crop image:
Rectangle sourceRect = new Rectangle(iX1, iY1, w, h);
System.Drawing.Image imgNew = CropImage(imgOrig, sourceRect);
private static System.Drawing.Image CropImage(System.Drawing.Image img, Rectangle cropArea)
{
Bitmap bmpImage = new Bitmap(img);
Bitmap bmpCrop = bmpImage.Clone(cropArea, bmpImage.PixelFormat);
img.Dispose();
return (System.Drawing.Image)bmpCrop;
}
c# asp.net image image-processing
The second image is cropped not from the top-left corner of the first one. AndBitmap.Clone()
should work fine. Check youriX1
andiY1
values, it can be incorrect.
– Alex Skiba
Jul 10 '14 at 6:37
add a comment |
In my asp.net C# application, I am trying to crop the below image:
I have selected only the face part, but the cropped image always selecting from top left corner like below:
I am using the below code to crop image:
Rectangle sourceRect = new Rectangle(iX1, iY1, w, h);
System.Drawing.Image imgNew = CropImage(imgOrig, sourceRect);
private static System.Drawing.Image CropImage(System.Drawing.Image img, Rectangle cropArea)
{
Bitmap bmpImage = new Bitmap(img);
Bitmap bmpCrop = bmpImage.Clone(cropArea, bmpImage.PixelFormat);
img.Dispose();
return (System.Drawing.Image)bmpCrop;
}
c# asp.net image image-processing
In my asp.net C# application, I am trying to crop the below image:
I have selected only the face part, but the cropped image always selecting from top left corner like below:
I am using the below code to crop image:
Rectangle sourceRect = new Rectangle(iX1, iY1, w, h);
System.Drawing.Image imgNew = CropImage(imgOrig, sourceRect);
private static System.Drawing.Image CropImage(System.Drawing.Image img, Rectangle cropArea)
{
Bitmap bmpImage = new Bitmap(img);
Bitmap bmpCrop = bmpImage.Clone(cropArea, bmpImage.PixelFormat);
img.Dispose();
return (System.Drawing.Image)bmpCrop;
}
c# asp.net image image-processing
c# asp.net image image-processing
edited Nov 29 '18 at 2:27
Cœur
19.3k9116155
19.3k9116155
asked Jul 10 '14 at 6:26
Praveen VRPraveen VR
92121229
92121229
The second image is cropped not from the top-left corner of the first one. AndBitmap.Clone()
should work fine. Check youriX1
andiY1
values, it can be incorrect.
– Alex Skiba
Jul 10 '14 at 6:37
add a comment |
The second image is cropped not from the top-left corner of the first one. AndBitmap.Clone()
should work fine. Check youriX1
andiY1
values, it can be incorrect.
– Alex Skiba
Jul 10 '14 at 6:37
The second image is cropped not from the top-left corner of the first one. And
Bitmap.Clone()
should work fine. Check your iX1
and iY1
values, it can be incorrect.– Alex Skiba
Jul 10 '14 at 6:37
The second image is cropped not from the top-left corner of the first one. And
Bitmap.Clone()
should work fine. Check your iX1
and iY1
values, it can be incorrect.– Alex Skiba
Jul 10 '14 at 6:37
add a comment |
1 Answer
1
active
oldest
votes
Use this code to crop your image.
static Bitmap CropImage(Image originalImage, Rectangle sourceRectangle, Rectangle destinationRectangle)
{
var croppedImage = new Bitmap(destinationRectangle.Width, destinationRectangle.Height);
using (var graphics = Graphics.FromImage(croppedImage))
{
graphics.DrawImage(originalImage, destinationRectangle, sourceRectangle, GraphicsUnit.Pixel);
}
return croppedImage;
}
The problem is that your original algorithm doesn't specify where to start cropping from. It therefore always starts from the origin, which is not what you want.
What is destination rectangle?
– Praveen VR
Jul 10 '14 at 8:32
If you look at the example, you'll see thatdestinationRectangle
defines the dimensions of the cropped image.sourceRectangle
defines where to crop from. IfsourceRectangle
anddestinationRectangle
have different dimensions, the cropped image will be stretched/compressed.
– Levi Botelho
Jul 10 '14 at 9:01
@PraveenVR - Did this help you?
– Levi Botelho
Jul 10 '14 at 15:20
it works..Great.!!
– Praveen VR
Jul 11 '14 at 10:21
Fantastic - Glad to hear it :)
– Levi Botelho
Jul 11 '14 at 12:31
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f24669780%2fimage-cropping-issue-in-c-sharp%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Use this code to crop your image.
static Bitmap CropImage(Image originalImage, Rectangle sourceRectangle, Rectangle destinationRectangle)
{
var croppedImage = new Bitmap(destinationRectangle.Width, destinationRectangle.Height);
using (var graphics = Graphics.FromImage(croppedImage))
{
graphics.DrawImage(originalImage, destinationRectangle, sourceRectangle, GraphicsUnit.Pixel);
}
return croppedImage;
}
The problem is that your original algorithm doesn't specify where to start cropping from. It therefore always starts from the origin, which is not what you want.
What is destination rectangle?
– Praveen VR
Jul 10 '14 at 8:32
If you look at the example, you'll see thatdestinationRectangle
defines the dimensions of the cropped image.sourceRectangle
defines where to crop from. IfsourceRectangle
anddestinationRectangle
have different dimensions, the cropped image will be stretched/compressed.
– Levi Botelho
Jul 10 '14 at 9:01
@PraveenVR - Did this help you?
– Levi Botelho
Jul 10 '14 at 15:20
it works..Great.!!
– Praveen VR
Jul 11 '14 at 10:21
Fantastic - Glad to hear it :)
– Levi Botelho
Jul 11 '14 at 12:31
add a comment |
Use this code to crop your image.
static Bitmap CropImage(Image originalImage, Rectangle sourceRectangle, Rectangle destinationRectangle)
{
var croppedImage = new Bitmap(destinationRectangle.Width, destinationRectangle.Height);
using (var graphics = Graphics.FromImage(croppedImage))
{
graphics.DrawImage(originalImage, destinationRectangle, sourceRectangle, GraphicsUnit.Pixel);
}
return croppedImage;
}
The problem is that your original algorithm doesn't specify where to start cropping from. It therefore always starts from the origin, which is not what you want.
What is destination rectangle?
– Praveen VR
Jul 10 '14 at 8:32
If you look at the example, you'll see thatdestinationRectangle
defines the dimensions of the cropped image.sourceRectangle
defines where to crop from. IfsourceRectangle
anddestinationRectangle
have different dimensions, the cropped image will be stretched/compressed.
– Levi Botelho
Jul 10 '14 at 9:01
@PraveenVR - Did this help you?
– Levi Botelho
Jul 10 '14 at 15:20
it works..Great.!!
– Praveen VR
Jul 11 '14 at 10:21
Fantastic - Glad to hear it :)
– Levi Botelho
Jul 11 '14 at 12:31
add a comment |
Use this code to crop your image.
static Bitmap CropImage(Image originalImage, Rectangle sourceRectangle, Rectangle destinationRectangle)
{
var croppedImage = new Bitmap(destinationRectangle.Width, destinationRectangle.Height);
using (var graphics = Graphics.FromImage(croppedImage))
{
graphics.DrawImage(originalImage, destinationRectangle, sourceRectangle, GraphicsUnit.Pixel);
}
return croppedImage;
}
The problem is that your original algorithm doesn't specify where to start cropping from. It therefore always starts from the origin, which is not what you want.
Use this code to crop your image.
static Bitmap CropImage(Image originalImage, Rectangle sourceRectangle, Rectangle destinationRectangle)
{
var croppedImage = new Bitmap(destinationRectangle.Width, destinationRectangle.Height);
using (var graphics = Graphics.FromImage(croppedImage))
{
graphics.DrawImage(originalImage, destinationRectangle, sourceRectangle, GraphicsUnit.Pixel);
}
return croppedImage;
}
The problem is that your original algorithm doesn't specify where to start cropping from. It therefore always starts from the origin, which is not what you want.
answered Jul 10 '14 at 6:35
Levi BotelhoLevi Botelho
19.3k43987
19.3k43987
What is destination rectangle?
– Praveen VR
Jul 10 '14 at 8:32
If you look at the example, you'll see thatdestinationRectangle
defines the dimensions of the cropped image.sourceRectangle
defines where to crop from. IfsourceRectangle
anddestinationRectangle
have different dimensions, the cropped image will be stretched/compressed.
– Levi Botelho
Jul 10 '14 at 9:01
@PraveenVR - Did this help you?
– Levi Botelho
Jul 10 '14 at 15:20
it works..Great.!!
– Praveen VR
Jul 11 '14 at 10:21
Fantastic - Glad to hear it :)
– Levi Botelho
Jul 11 '14 at 12:31
add a comment |
What is destination rectangle?
– Praveen VR
Jul 10 '14 at 8:32
If you look at the example, you'll see thatdestinationRectangle
defines the dimensions of the cropped image.sourceRectangle
defines where to crop from. IfsourceRectangle
anddestinationRectangle
have different dimensions, the cropped image will be stretched/compressed.
– Levi Botelho
Jul 10 '14 at 9:01
@PraveenVR - Did this help you?
– Levi Botelho
Jul 10 '14 at 15:20
it works..Great.!!
– Praveen VR
Jul 11 '14 at 10:21
Fantastic - Glad to hear it :)
– Levi Botelho
Jul 11 '14 at 12:31
What is destination rectangle?
– Praveen VR
Jul 10 '14 at 8:32
What is destination rectangle?
– Praveen VR
Jul 10 '14 at 8:32
If you look at the example, you'll see that
destinationRectangle
defines the dimensions of the cropped image. sourceRectangle
defines where to crop from. If sourceRectangle
and destinationRectangle
have different dimensions, the cropped image will be stretched/compressed.– Levi Botelho
Jul 10 '14 at 9:01
If you look at the example, you'll see that
destinationRectangle
defines the dimensions of the cropped image. sourceRectangle
defines where to crop from. If sourceRectangle
and destinationRectangle
have different dimensions, the cropped image will be stretched/compressed.– Levi Botelho
Jul 10 '14 at 9:01
@PraveenVR - Did this help you?
– Levi Botelho
Jul 10 '14 at 15:20
@PraveenVR - Did this help you?
– Levi Botelho
Jul 10 '14 at 15:20
it works..Great.!!
– Praveen VR
Jul 11 '14 at 10:21
it works..Great.!!
– Praveen VR
Jul 11 '14 at 10:21
Fantastic - Glad to hear it :)
– Levi Botelho
Jul 11 '14 at 12:31
Fantastic - Glad to hear it :)
– Levi Botelho
Jul 11 '14 at 12:31
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f24669780%2fimage-cropping-issue-in-c-sharp%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
The second image is cropped not from the top-left corner of the first one. And
Bitmap.Clone()
should work fine. Check youriX1
andiY1
values, it can be incorrect.– Alex Skiba
Jul 10 '14 at 6:37