Tôi đang cố gắng thêm chức năng tùy chỉnh vào lớp ImageMagickNet. Nó nên sử dụng phương thức IsSimilarImage magick
từ dự án ImageMagick.NET nhưng tôi nhầm lẫn là liệu tôi có phải định tuyến phương thức này thông qua Magick ++ hay không, vì mọi chức năng có sẵn cho phía .NET bắt nguồn từ Magick ++.Mở rộng ImageMagickNet
23
A
Trả lời
2
Điều này là khá cũ nhưng như nó chưa được trả lời, ở đây đi.
Xin lưu ý rằng tôi chưa xem các thư viện ImageMagick, vì vậy bất kỳ chi tiết triển khai nào trong mã bên dưới đều là một ví dụ. Thay thế rác bằng cách thực hiện chính xác. Giả sử nó đang xuất các đối tượng .NET hợp lệ, đây là cách nó hoạt động:
' Put your extension methods or properties in a clearly labeled module file, on its own within your project
Module ImageMagickNetExtensions
' Define an extension method by using the ExtensionAttribute, and make the first argument
' for the method the type that you wish to extend. This will serve as a reference to the extended
' instance, so that you can reference other methods and properties within your extension code.
<Extension()> _
Public Function SomeExtensionFunction(ByVal imn As ImageMagickNet, ByVal filename As String) As Boolean
Return imn.IsSimilarImage(filename)
End Function
End Module
Class SomeClass
' To use your extension method within your project containing the extension module, simply
' call it on any valid instance of the type you have extended. The compiler will call your code
' whenever it sees reference to it, passing a reference to your extended instance.
Private imn As New ImageMagickNet
Private Sub DoSomething()
If imn.SomeExtensionFunction("c:\someimage.jpg") Then
...
End If
End Sub
End Class
Các vấn đề liên quan
- 1. PHP - mở rộng phương pháp như mở rộng một lớp
- 2. Mở rộng Visual Studio 2010 mở rộng mã
- 3. phương pháp mở rộng để mở rộng lớp tĩnh
- 4. asp.net mở rộng IPrincipal
- 5. Tải tệp mở rộng
- 6. Mở rộng android: WindowTitle
- 7. Mở rộng JFrame
- 8. Lớp động mở rộng
- 9. Mongoose: mở rộng schemas
- 10. Mở rộng UITableViewCell
- 11. Javascript mở rộng lớp
- 12. Mở rộng NUnit
- 13. Mở rộng Java Enums
- 14. Mở rộng System.Convert
- 15. mở rộng đường bezier
- 16. Mở rộng System.Data.Linq.DataContext
- 17. Mở rộng Microsoft.VisualStudio.TestTools.DataSource.XML
- 18. Mở rộng trong javascript
- 19. Mở rộng nhiều lớp
- 20. Backbone.js - Coffeescript mở rộng
- 21. Mở rộng abstract class singleton
- 22. Tiện ích mở rộng PSake?
- 23. Mở rộng ngôn ngữ C#?
- 24. Xem Mở rộng trong Oracle
- 25. Ngăn kéo mở rộng Vector
- 26. Mở rộng MediaController cho android
- 27. angularjs - mở rộng đệ quy
- 28. Cách mở rộng BPMN 2.0
- 29. cookie Xóa chrome mở rộng
- 30. Mở rộng Giỏ hàng Magento