C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: C#とSharpMapでの開発について。


(過去ログ 144 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■84378 / inTopicNo.1)  C#とSharpMapでの開発について。
  
□投稿者/ tfkignae (1回)-(2017/06/23(Fri) 18:52:52)

分類:[C#] 

現在C#とSharpMap.dllを利用して地図アプリの作成を試みています。

使用する地図は国土地理院の数値地図(国土基本情報)を想定しており、以下リンクからサンプルデータ (シェープファイル形式)をダウンロードし、試行錯誤している最中です。
http://www.gsi.go.jp/kibanjoho/kibanjoho40027.html

その際、建物等の記号が上手く表示できずに悩んでおります。
(「〒」とか「文」等が全て「●」で表示されてしまう)

これはどのようにしたら表示出来るのでしょうか?
もしご存知の方いらっしゃいましたら、具体的なソースをお教えいただければ幸いです。

まったくの素人で申し訳ございません。お知恵をお貸しください。
よろしくお願いいたします。
引用返信 編集キー/
■84401 / inTopicNo.2)  Re[1]: C#とSharpMapでの開発について。
□投稿者/ ぶなっぷ (110回)-(2017/06/28(Wed) 09:19:15)
>  (「〒」とか「文」等が全て「●」で表示されてしまう)
さすがに、コードなしでは何も答えられないと思います。

すでに試行錯誤してるはずでしょうから、そのコードを提示すれば、
なんらかの返答が得られるかもしれません。

引用返信 編集キー/
■84403 / inTopicNo.3)  Re[2]: C#とSharpMapでの開発について。
□投稿者/ tfkignae (1回)-(2017/06/28(Wed) 11:36:08)
ぶなっぷ様

> すでに試行錯誤してるはずでしょうから、そのコードを提示すれば、
> なんらかの返答が得られるかもしれません。
ご指摘ありがとうございます。
当サイトの利用も初めてでしたので、勉強になりました。

以下、コードとなります。
ご存知の方いらっしゃいましたら、よろしくお願いいたします。


// 地図オブジェクトを生成
System.Drawing.Size MapSize = new System.Drawing.Size((int)MapArea.Width, (int)MapArea.Height);
LocalMap = new Map(MapSize);

// 建物等記号
VectorLayer Layer = new VectorLayer("建物等記号レイヤ");
Layer.DataSource = new ShapeFile(@"ShapeFiles\544022\DKG-SHP-544022-BldSbl-20140226-0001.shp");
LocalMap.Layers.Add(Layer);

// 地図全体が表示されるようにズーム率を設定
LocalMap.ZoomToExtents();

Bitmap bmp = LocalMap.GetMap() as Bitmap;
using (Stream st = new MemoryStream())
{
    bmp.Save(st, ImageFormat.Bmp);
    st.Seek(0, SeekOrigin.Begin);
    MapArea.Source = BitmapFrame.Create(st, BitmapCreateOptions.None, BitmapCacheOption.OnLoad);
}

引用返信 編集キー/
■84404 / inTopicNo.4)  Re[3]: C#とSharpMapでの開発について。
□投稿者/ Jitta (305回)-(2017/06/28(Wed) 17:02:43)
文字化けの基本はエンコーダーを設定する、です。
ShapeFileクラスのEncodingプロパティを正しく設定して下さい。
と、検索したら出てきました。
引用返信 編集キー/
■84405 / inTopicNo.5)  Re[4]: C#とSharpMapでの開発について。
□投稿者/ tfkignae (2回)-(2017/06/28(Wed) 17:22:25)
Jitta様

ご返信ありがとうございます。

ShapeFileクラスのEncodingプロパティを設定することで、文字列は正しく表示されるのですが、
やはり記号は「●」になってしまいます。

もう少し継続調査していきたいと思います。
引用返信 編集キー/
■84406 / inTopicNo.6)  Re[5]: C#とSharpMapでの開発について。
□投稿者/ みい (62回)-(2017/06/29(Thu) 09:13:34)
No84405 (tfkignae さん) に返信
> ShapeFileクラスのEncodingプロパティを設定することで、文字列は正しく表示されるのですが、
> やはり記号は「●」になってしまいます。
記号部分にはARIB外字が使われているのでは?
https://ja.wikipedia.org/wiki/ARIB%E5%A4%96%E5%AD%97
引用返信 編集キー/
■84419 / inTopicNo.7)  Re[6]: C#とSharpMapでの開発について。
□投稿者/ tfkignae (3回)-(2017/06/30(Fri) 13:54:44)
ネットで調査していたところ、ShapeFileの文字列を検索し、
特定のワードと特定のシンボルを結びつける方法が記載されていました。

http://sharpmap.codeplex.com/SourceControl/latest#Tags/v1.1/Examples/WinFormSamples/Samples/ShapefileSampleOsm.cs

お知恵を貸していただいた皆様、この度は貴重なご意見、お時間を拝借し、
感謝申し上げます。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -