DWGdirectの話。
DWG内のサムネイルを何とかして残しておく方法はないか。
この命題に一応の決着がついたので記しておく。
DWGdirectライブラリを使った自作アプリで、
任意のDWGを開いて、何らかの編集をして保存する。
これによって、DWG内のサムネイルが消えてしまっていた。
サムネイルの絵が変更できなくてもいいから、
せめて最初の状態が保持できないかということ。
キーワードをあげておこう。
1.setRetainOriginalThumbnailBitmap
2.writeFile の弟4パラメータ
3.gsBitmapDevice
3.が難関だった。
ExSystemServices と ExHostAppServices を継承したクラスで、
gsBitmapDevice をオーバーライドする必要があった。
関数内では、WinGDI.gs を loadModule する。
描画系のモジュールを読み込む処理。
しつこいくらいにQ&Aを見て、ようやくわかったこと。
1つの問題がクリアになり、少し晴れがましい気分だ。
問題は山積みだけど。
サンプルコードをアップしておく。
OdRxObjectImpl<COdvServices> svcs;
…
OdDbDatabasePtr pDb = svcs.createDatabase( false, OdDb::kMetric );
pDb->setRetainOriginalThumbnailBitmap( true );
pDb->readFile( OdString(szDwgFile), false, Oda::kShareDenyNo );
…
pDb->writeFile( &fb, OdDb::kDwg, pDb->originalFileVersion(), true );
OdGsDevicePtr COdvServices::gsBitmapDevice()
{
OdGsModulePtr pGsModule = ::odrxDynamicLinker()->loadModule(_T("WinGDI.gs"));
return pGsModule->createBitmapDevice();
}
urlサムネイルなど,サムネイルが熱い
やっとやり方が分かりました。ランキングサイトなどでブログ画像のサムネイル表示しているところがありますね。あのやり方が分からなかったのです。今日しばらく調べていたらやっと分かりました。ちょっとやり方は教えられません。教えて欲しい人はコメントなどでリクエストしてください。 新機能「サムネイル変更機能」を追加!FlipClipでは、クリップのサムネイル画像などが変更できる「サムネイル変更機能」を、本日から追加しました。 サムネイル変更機能を使えば、自分のクリップのサムネイル画像や…