分享

压缩图片

 A_POST 2013-05-21
  1. /// <summary>
  2. /// 压缩图片
  3. /// </summary>
  4. /// <param name="filePath">要压缩的图片的路径</param>
  5. /// <param name="filePath_ystp">压缩后的图片的路径</param>
  6. public void ystp(string filePath, string filePath_ystp)
  7. {
  8. //Bitmap
  9. Bitmap bmp = null;
  10. //ImageCoderInfo
  11. ImageCodecInfo ici = null;
  12. //Encoder
  13. Encoder ecd = null;
  14. //EncoderParameter
  15. EncoderParameter ept = null;
  16. //EncoderParameters
  17. EncoderParameters eptS = null;
  18. try
  19. {
  20. bmp = new Bitmap(filePath);
  21. ici = this.getImageCoderInfo("image/jpeg");
  22. ecd = Encoder.Quality;
  23. eptS = new EncoderParameters(1);
  24. ept = new EncoderParameter(ecd, 10L);
  25. eptS.Param[0] = ept;
  26. bmp.Save(filePath_ystp, ici, eptS);
  27. }
  28. catch (Exception ex)
  29. {
  30. throw new Exception(ex.Message);
  31. }
  32. finally
  33. {
  34. bmp.Dispose();
  35. ept.Dispose();
  36. eptS.Dispose();
  37. }
  38. }
  39. /// <summary>
  40. /// 获取图片编码类型信息
  41. /// </summary>
  42. /// <param name="coderType">编码类型</param>
  43. /// <returns>ImageCodecInfo</returns>
  44. private ImageCodecInfo getImageCoderInfo(string coderType)
  45. {
  46. ImageCodecInfo[] iciS = ImageCodecInfo.GetImageEncoders();
  47. ImageCodecInfo retIci = null;
  48. foreach (ImageCodecInfo ici in iciS)
  49. {
  50. if (ici.MimeType.Equals(coderType))
  51. retIci = ici;
  52. }
  53. return retIci;
  54. }
  55. #endregion 压缩图片

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约