dgnlib-1.11.zip: Current standalone source with dgndump example mainline.
No, but it does support most 2D and 3D elements. Some of the more esoteric elements are read in "raw data mode", but not interpreted. It does support lines, line strings, curves, bsplines, ellipses, arcs, and text elements, as well as extracting color tables, and master coordinate information.
No, they are a substantially different format, and are not recognised at all. The DGNdirect library from the OpenDWG Alliance does support DGN v8.
Yes, fairly, though as distributed it may be necessary to tweak the cpl_port.h and cpl_config.h files for different platforms. It was developed on Linux for a client deploying on MacOS, and Windows.
Generally speaking no. Only one element at a time is kept in memory. If the file is "indexed" an additional 12 bytes per element is kept in memory after a pre-scan, but this isn't required.
No, but there is a document that tries to indicate how to properly draw DGN elements given the structures returned by DGNLib. The OGR layer re-interprets the drawing information into OGR Feature Style format which is understood by some applications such as UMN MapServer.
DGNLib is under my usual MIT/X style open source license. Thus is can be easily used in commercial, and free products with no concern about licensing issues. See the header of any source file for the full license text.
Yes, there is preliminary support for writing 2D and 3D DGN files in recent releases.
There is a detailed DGN Library API Reference available. There is currently no tutorial style information on how to use the library, but the dgndump.c utility can serve as a limited example.
The initial project is complete, but I am interested in fixing bugs and adding minor features. Improvements are welcome.