GDAL/OGR и шрифты для символов
Добавлено: 12 окт 2021, 12:04
Здравствуйте.
Работаю над программой (С#, WinForms, GDAL 2.4.4), которая создает MapInfo файлы (TAB и MIF) при помощи OGR на основе табличных данных об объектах. Все работает, кроме одной небольшой, но важной детали.
Каждой из точек в полученном MIF-файле должно соответствовать следующее символьное обозначение: "Symbol (60,16711935,10,"Map Symbols",0,0)".
То есть символ номер 60 из шрифта "Map Symbols" размера 10 и цвета #ff00ff (или 16711935 в десятеричном виде).
Для этого я применяю к каждой из точек функцию SetStyleString() со стилем @"SYMBOL(a:0, c:#ff00ff, s:10pt, id:""font-sym-60, ogr-sym-9"", f:""Map Symbols"")".
Вместо желаемого результата получаю "Symbol (35,16711935,10)". То есть правильно считывается только цвет и размер символа, но номер символа не тот, а шрифт вообще не указан.
Стиль @"SYMBOL(a:0, c:#ff00ff, s:10pt, id:""font-sym-60"", f:""Map Symbols"")" дает тот же результат.
С символами OGR никаких проблем нет. Например, стиль @"SYMBOL(a:0, c:#ff00ff, s:10pt, id:""ogr-sym-5"") рисует квадраты как и должен. А вот при указании символа из шрифта что-то идет не так. При этом шрифт "Map Symbols" установлен в системе.
Перечитал документацию несколько раз (gdal.org/user/ogr_feature_style.html), но никак не могу понять, в чем дело. Прошу подсказать, в чем может заключаться проблема.
Работаю над программой (С#, WinForms, GDAL 2.4.4), которая создает MapInfo файлы (TAB и MIF) при помощи OGR на основе табличных данных об объектах. Все работает, кроме одной небольшой, но важной детали.
Каждой из точек в полученном MIF-файле должно соответствовать следующее символьное обозначение: "Symbol (60,16711935,10,"Map Symbols",0,0)".
То есть символ номер 60 из шрифта "Map Symbols" размера 10 и цвета #ff00ff (или 16711935 в десятеричном виде).
Для этого я применяю к каждой из точек функцию SetStyleString() со стилем @"SYMBOL(a:0, c:#ff00ff, s:10pt, id:""font-sym-60, ogr-sym-9"", f:""Map Symbols"")".
Вместо желаемого результата получаю "Symbol (35,16711935,10)". То есть правильно считывается только цвет и размер символа, но номер символа не тот, а шрифт вообще не указан.
Стиль @"SYMBOL(a:0, c:#ff00ff, s:10pt, id:""font-sym-60"", f:""Map Symbols"")" дает тот же результат.
С символами OGR никаких проблем нет. Например, стиль @"SYMBOL(a:0, c:#ff00ff, s:10pt, id:""ogr-sym-5"") рисует квадраты как и должен. А вот при указании символа из шрифта что-то идет не так. При этом шрифт "Map Symbols" установлен в системе.
Перечитал документацию несколько раз (gdal.org/user/ogr_feature_style.html), но никак не могу понять, в чем дело. Прошу подсказать, в чем может заключаться проблема.