/// <summary> /// Creates an image from a given <see cref="T:Bitmap"/>, resized as requested. /// If <paramref name="supportHSV"/> is true, also creates an HSVa-encoded version of the image. /// </summary> /// <param name="image"><see cref="T:Bitmap"/> from which to extract image pixels.</param> /// <param name="width">Width of image.</param> /// <param name="height">Height of image.</param> /// <param name="supportHSV">When true, create an HSVa-encoded version of the image.</param> public void CreateImage(Bitmap image, int width, int height, bool supportHSV) { using (DdsFile ddsFileBase = new DdsFile()) { ddsFileBase.CreateImage(image, false); CreateImage(ddsFileBase.Resize(new Size(width, height)), supportHSV); } }
private void btnOpenMask_Click(object sender, EventArgs e) { openFileDialog1.FileName = "*.dds"; openFileDialog1.FilterIndex = 0; string caption = openFileDialog1.Title; try { openFileDialog1.Title = "Select DDS Image to use as a mask"; DialogResult dr = openFileDialog1.ShowDialog(); if (dr != DialogResult.OK) return; } finally { openFileDialog1.Title = caption; } using (FileStream fs = new FileStream(openFileDialog1.FileName, FileMode.Open, FileAccess.Read)) { using (DdsFile ddsfile = new DdsFile()) { ddsfile.Load(fs, false); fs.Position = 0; DdsFile ddsfile2 = ddsfile.Resize(ddsMaskCh1.Size); ddsMaskCh1.DDSLoad(ddsfile2); ddsMaskCh2.DDSLoad(ddsfile2); ddsMaskCh3.DDSLoad(ddsfile2); ddsMaskCh4.DDSLoad(ddsfile2); } ddsPanel1.LoadMask(fs); lbMaskW.Text = ddsPanel1.MaskSize.Width + ""; lbMaskH.Text = ddsPanel1.MaskSize.Height + ""; tlpMaskSize.Visible = true; fs.Close(); } }