The method ESRI.ArcGIS.ADF.Web.Display.Symbol.TextMarkerSymbol::GetDimensions returns wrong values of width and height.
最後に公開された状態: August 25, 2014No Product Found
不具合 ID 番号
NIM012109
送信されました
October 3, 2007
最終更新日
June 5, 2024
適用対象
No Product Found
見つかったバージョン
9.2
ステータス
Will Not Be Addressed
開発チームは、この問題またはリクエストを検討した結果、これに対処しないことに決定しました。 問題の「参考情報」セクションに、さらに詳細な説明が示されていることがあります。
参考情報
No Public Explanation
対処法
The font size is in point unit, which varies according to different font. For example, for font "Arial", the size 20 means 31 pt height; and for the font "Snap ITC", the same size means 35 pt height.Another thing needs to notice is that the formula to convert point unit into pixel unit, 1 pt = 1 px * 1.333.We could get the text string width and height in a specific font through GDI+ directly. Please see code below: //get the text string width and height through GDI+ directly without touching ESRI class System.Drawing.Font font = new System.Drawing.Font("Snap ITC", 20); Bitmap image = new Bitmap(1, 1); Graphics g = Graphics.FromImage(image); double width = g.MeasureString("Hello World!", font).Width; double height = g.MeasureString("Hello World!", font).Height; int widthInt = Convert.ToInt16(width/1.333); int heightInt = Convert.ToInt16(height/1.333);