Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

Image.cs 1.1KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. using System;
  2. using System.IO;
  3. using Foundation;
  4. using UIKit;
  5. namespace System.Drawing
  6. {
  7. // Image
  8. public class Image : MarshalByRefObject, IDisposable
  9. {
  10. // FromStream
  11. public static Image FromStream(Stream stream)
  12. {
  13. return new Image (stream);
  14. }
  15. // properties
  16. public bool Disposed { get; private set; }
  17. public int Height { get; private set; }
  18. public int Width { get; private set; }
  19. // constructor
  20. private Image (Stream stream)
  21. {
  22. using (var image = UIImage.LoadFromData (NSData.FromStream (stream)))
  23. {
  24. this.Width = (int)image.Size.Width;
  25. this.Height = (int)image.Size.Height;
  26. }
  27. }
  28. // destructor
  29. ~Image()
  30. {
  31. Dispose(false);
  32. }
  33. // Dispose
  34. public void Dispose()
  35. {
  36. this.Dispose(true);
  37. GC.SuppressFinalize(this);
  38. }
  39. // Dispose
  40. protected virtual void Dispose(bool disposing)
  41. {
  42. if (this.Disposed)
  43. {
  44. return;
  45. }
  46. try
  47. {
  48. try
  49. {
  50. if (disposing)
  51. {
  52. // dispose managed
  53. }
  54. }
  55. finally
  56. {
  57. // dispose unmanaged
  58. }
  59. }
  60. finally
  61. {
  62. this.Disposed = true;
  63. }
  64. }
  65. }
  66. }