public IntPtr ReadFile(MagickSettings settings)
            {
                IntPtr exception = IntPtr.Zero;
                IntPtr result;

                if (NativeLibrary.Is64Bit)
                {
                    result = NativeMethods.X64.MagickImageCollection_ReadFile(MagickSettings.GetInstance(settings), out exception);
                }
                else
                {
                    result = NativeMethods.X86.MagickImageCollection_ReadFile(MagickSettings.GetInstance(settings), out exception);
                }
                MagickException magickException = MagickExceptionHelper.Create(exception);

                if (MagickExceptionHelper.IsError(magickException))
                {
                    if (result != IntPtr.Zero)
                    {
                        Dispose(result);
                    }
                    throw magickException;
                }
                RaiseWarning(magickException);
                return(result);
            }
            public void WriteFile(MagickImage image, MagickSettings settings)
            {
                IntPtr exception = IntPtr.Zero;

                if (NativeLibrary.Is64Bit)
                {
                    NativeMethods.X64.MagickImageCollection_WriteFile(MagickImage.GetInstance(image), MagickSettings.GetInstance(settings), out exception);
                }
                else
                {
                    NativeMethods.X86.MagickImageCollection_WriteFile(MagickImage.GetInstance(image), MagickSettings.GetInstance(settings), out exception);
                }
                CheckException(exception);
            }
            public IntPtr WriteBlob(MagickImage image, MagickSettings settings, out UIntPtr length)
            {
                IntPtr exception = IntPtr.Zero;
                IntPtr result;

                if (NativeLibrary.Is64Bit)
                {
                    result = NativeMethods.X64.MagickImageCollection_WriteBlob(MagickImage.GetInstance(image), MagickSettings.GetInstance(settings), out length, out exception);
                }
                else
                {
                    result = NativeMethods.X86.MagickImageCollection_WriteBlob(MagickImage.GetInstance(image), MagickSettings.GetInstance(settings), out length, out exception);
                }
                MagickException magickException = MagickExceptionHelper.Create(exception);

                if (MagickExceptionHelper.IsError(magickException))
                {
                    if (result != IntPtr.Zero)
                    {
                        MagickMemory.Relinquish(result);
                    }
                    throw magickException;
                }
                RaiseWarning(magickException);
                return(result);
            }