> How to declare a TextStyleTable in C#.NET/VB.NET.
> AcDbTextStyleTable *pTsTable;
> es = curDoc()->database()->getSymbolTable(pTsTable, AcDb::kForRead);
> can you give equivalent C#.NET/VB.NET code
Attached is a C# example of adding a new TextStyle by appending an
additional TextStyleTableRecord to the drawing database. Although the Open
mode is kForWrite, it should help you get oriented to using TextStyleTables
I'm also working on adding some new TextStyles using the
GraphicsInterface.TextStyle Class. I'll post them when they're ready.
> Attached is a C# example of adding a new TextStyle by appending an
> additional TextStyleTableRecord to the drawing database. Although the Open
> mode is kForWrite, it should help you get oriented to using
> TextStyleTables and records.
In the previous example, I seem to have omitted the transaction.Commit()
statement at the end of the transaction. Obviously the example will not work
Regarding the problem with AutoCAD recognizing the appended TextStyleTable
record, I noticed it would consistently recognize the new record after I
queried it one time using SnoopDB. As a guess, I tried adding the following
statement, which seems to have resolved the problem.
I also moved the textStyleTableRecordId field declaration outside the method
so I could encapsulate it with a GET accessory. I think I'm going to need
the TextStyleTableRecord ObjectID while constructing the DBText entities, so
I might as well make it available in the class now and avoid having to
retrieve it a second time.
I have no idea whether this is a proper way to append a TextStyleTable, but
it appears to work.
I would appreciate any comments from someone more knowledgeable in this