投稿者 魔界の仮面弁士  (社会人) 投稿日時 2021/10/9 19:48:10
> Nugetでも探せず、何を参照したらよいか分かりませんでした。
nuget は特に不要ですよ。


> Gekka さんのソースもVB.NETで試してみたのですが、
プロジェクトのプロパティで、ルート名前空間は何に設定されていますか?

もしも「ルート名前空間」という言葉を御存知ない場合は、
VB中学校の
 初級講座 第51回 クラスライブラリの作成 「6.名前空間」
 初級講座[改訂版] 第31回 クラスライブラリ 「5.名前空間」
などで触れられています。


> Imports Gekka.Text.Font.TrueType.CMAP
> Imports Gekka.Text.Font.TrueType.Naming
> Imports Gekka.Text.Font.TrueType.Common
そのコードのすぐ下の行から
 「Namespace Gekka.Text.Font.TrueType」
で始まる名前空間がありましたよね。

その名前空間の中に、上記 3 つの名前空間
🔶CMAP ◆Naming 🔹Common
が定義されているはずです。

見通せるように、名前空間と型定義の部分を抜粋しておきます。

>> Namespace Gekka.Text.Font.TrueType
>>  Public Class TTC
>>  Friend Class TTCHeader
>>  Public Enum TTFDataReadTypes As ULong
>>  Public Class TTF
>>  Namespace Common    '←🔹
>>   MustInherit Class OffsetBase
>>   Friend Class Offset16
>>   Friend Class Offset32
>>   Friend Class Range
>>   Friend Enum PlatformID As UShort
>>   Friend Enum WindowsEncodingIDs
>>   Friend Enum ISOEncodingIDs
>>  End Namespace
>>  Friend Class FontHeader
>>  Friend Class FontHeader
>>  Friend Class TableRecord
>>  Namespace CMAP    '←🔶
>>   Friend Class CmapTable
>>   Friend Class EncodingRecord
>>   Friend Class UnicodeVariationSequences
>>   Friend Class VariationSelector
>>   Friend Class DefaultUVSTable
>>   Friend Class UnicodeRange
>>   Friend Class NonDefaultUVSTable
>>   Friend Class UVSMapping
>>  End Namespace
>>  Namespace Naming    '←◆
>>   Friend Class NamingTable
>>   Friend Class LangTagRecord
>>   Friend Class NameRecord
>>   Public Enum NameIDs As UShort
>>   Public Class Name
>>  End Namespace
>>  Module BigEndianExtension
>> End Namespace


> 「Imports 」の謎を教えて頂きたいです。
名前空間の指定がうまくいかないのであれば、
 ①ひとまずルート名前空間を空にしてみる
ことを試してみてください。

あるいは、ルート名前空間を任意のものとしたまま
 ②「Namespace Gekka.Text.Font.TrueType」のところを
  「Namespace Global.Gekka.Text.Font.TrueType」にしてみる
という手法もあります。(グローバル名前空間は VB2010 以降の機能です)
https://docs.microsoft.com/ja-jp/dotnet/visual-basic/programming-guide/program-structure/namespaces