| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Создать сишарповый враппер для с++ библиотеки |
| Автор: Cinemaizer[Олег] 11.3.2010, 04:32 |
| Добрый день всем! Суть задачи в следующем. Имеется SDK продвинутой графической библиотеки GFL (http://www.xnview.com/en/gfl.html). На данный момент c# враппера в общедоступном варианте нет, к сожалению, а хотелось бы иметь. К слову, камрады из опенсорс-проекта FreeImage таки идут в ногу со временем и FreeImage.Net C# дистрибуцию выложили (http://freeimage.sourceforge.net/download.html). Однако GFL все же повзрослее по возможностям и скорости, посему выбор пал на нее. В связи с вышеперечисленным, вопрошаю - как долго и сколько бы стоило создание c#-враппера для GFL ? Заранее спасибо! |
| Автор: mrbrooks 11.3.2010, 08:49 |
| дорого, долго |
| Автор: Cinemaizer[Олег] 11.3.2010, 09:38 |
| ок. а если "покомандово"? надеюсь, подешевле и недолго ? если серьезно, то конечно весь арсенал не нужен, сейчас конечно. ряд методов, штук с десяток может.. |
| Автор: mrbrooks 11.3.2010, 09:40 | ||||
недолго, дорого
сделай сам. опыт получишь хороший. DllImport поможет |
| Автор: Cinemaizer[Олег] 11.3.2010, 13:58 | ||||||||||
| Да с удовольствием, но... поскольку только только начал понимать азы шарпа, задача для меня оч. сложная... Вот, возьмем к примеру метод gflLoadThumbnail . (он мне нужон в первую очередь) The gflLoadThumbnail function load a picture file as a thumbnail into memory.
Параметры: filename : Pointer to a null-terminated string that contains the filename to load. width : Width of the thumbnail. height : Height of the thumbnail. bitmap : Address of a pointer to a GFL_BITMAP structure. params : Pointer to a GFL_LOAD_PARAMS structure. This structure must be filled correctly. informations : Pointer to a GFL_FILE_INFORMATION structure. Can be NULL if you don't want it. You must use gflFreeInformation to free his content. Return value : The function returns GFL_NO_ERROR if it is successful or a value of GFL_ERROR. С типом GFL_INT32 все просто, а как быть с указателями на структуры??? Их тут уйма, и потом еще тянут за собой указатели в структурах... вот, перечислю из хелпа тож...
где, The GFL_COLORMAP structure is used for colormap. Data : Pointer of the picture data. Comment : Address of a string used by the comment. You must use gflSetComment to change the comment. MetaData : Pointer of Metadata. You must use gflBitmapGetIPTC & gflBitmapGetEXIF to obtain readable data.
Red: Array of red components. Green: Array of green components. Blue: Array of blue components.
Короче, сие есть для меня пока труднопроходимый лес :( |
| Автор: Cinemaizer[Олег] 11.3.2010, 14:26 |
| В какую сторону копать вроде бы нашел (маршалинг, Marshal.StructureToPtr - в нужную сторону смотрю? Может подскажет кто (кодом имею ввиду..), как мне все эти указатели прописать? |