私は受け入れ答えhereを以下が、そのまだだ私は、画像のためのトリミングツールを作ってるんだし、それが生産だ画像を生成だ、なぜ私は私の人生のために把握することはできません...このイメージ・クロッパーの何が問題なのですか?
奇妙な...ここに私のコード:
public void Crop(
string FileName,
Crop Crop) {
using (Bitmap Source = ((Bitmap)Image.FromFile(FileName))) {
using (Bitmap Target = new Bitmap(Crop.Width, Crop.Height)) {
using (Graphics Graphics = Graphics.FromImage(Target)) {
Graphics.DrawImage(Source, new Rectangle(new Point(Crop.Left, Crop.Top), new Size(Crop.Width, Crop.Height)), new Rectangle(new Point(0, 0), new Size(Target.Width, Target.Height)), GraphicsUnit.Pixel);
};
Target.Save((FileName + ".temp"), JpegCodecInfo, HighQualityEncoder);
};
};
this.NormalizeFileName(FileName);
}
私を助けてください。私は @Aarononthewebについては
は、ここにCrop
クラスだ
UPDATE ...私が取得しています何の画像を添付していますどのようにそれが読み込まれます:
public class Crop {
[Required]
public short Height { get; set; }
[Required]
public short Left { get; set; }
[Required]
public short Top { get; set; }
[Required]
public short Width { get; set; }
}
とjQueryをそれはそれを移入:
$("#Image input:submit").bind("click", function() {
$("#Crop\\.Height").val(Crop.height());
$("#Crop\\.Left").val(Crop.position().left);
$("#Crop\\.Top").val(Crop.position().top);
$("#Crop\\.Width").val(Crop.width());
});
UPDATE 2
気にしないで、私はそれを得ました。私は頭をきれいにするために質問をした後に昼寝を取った後、もう一度それを見ると、私は2つの矩形を切り替えて何が起こるかを見ることにしました。まあ、それはそれを修正したものを推測する。
この時点で、APIのドキュメントに記載されている名前は欺瞞的だと言わざるを得ないでしょう。例えば、文書は出力画像をソースとし、入力画像をとして参照します。おそらく、APIの名前を変更する必要がありますか?
Graphics.drawImageを(ソース、新しいRectangle(新しいポイント(Crop.Left、Crop.Top)、新しいサイズ(Crop.Width、Crop.Height))、新しいRectangle(次の行に
私はあなたの四角形が後方にあると思います... Drawimage(image、destRect、sourceRect、...)APIドキュメントをチェックしてください... – Jaime
Cropクラスのソースを投稿できますか?これはX/Y反転エラーのように見えます(つまり、あなたは.DrawImage関数呼び出しのどこかでXとYを入れ替えました)。 – Aaronontheweb
@Aaronontheweb、私はあなたが望む情報で自分の投稿を更新しました。 – Gup3rSuR4c