Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Meminimumkan Kehilangan Kualiti Imej Apabila Mengubah Saiz Imej dalam C#?
Penskalaan Imej C#: Cara Meminimumkan Kehilangan Kualiti
Penskalaan imej tidak dapat dielakkan mengakibatkan beberapa tahap kehilangan kualiti. Walau bagaimanapun, beberapa teknik boleh mengurangkan kemerosotan ini dengan ketara.
Cabaran Zum
Apabila imej diubah saiz, pikselnya sama ada mengecut (mengecut) atau membesar (membesar). Mengezum keluar mengalih keluar piksel, mengakibatkan kurang terperinci. Zum masuk, sebaliknya, menginterpolasi piksel, berpotensi memperkenalkan artifak.
Meminimumkan kehilangan kualiti
Walaupun tidak mungkin untuk menghapuskan kehilangan kualiti sepenuhnya, dalam C# berikut adalah pendekatan yang disyorkan secara meluas:
<code class="language-csharp">Bitmap newImage = new Bitmap(newWidth, newHeight); using (Graphics gr = Graphics.FromImage(newImage)) { gr.SmoothingMode = SmoothingMode.HighQuality; gr.InterpolationMode = InterpolationMode.HighQualityBicubic; gr.PixelOffsetMode = PixelOffsetMode.HighQuality; gr.DrawImage(srcImage, new Rectangle(0, 0, newWidth, newHeight)); }</code>
Arahan:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Meminimumkan Kehilangan Kualiti Imej Apabila Mengubah Saiz Imej dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!