- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
internal static System.Drawing.Font ToWindowsFont(Microsoft.Office.Interop.PowerPoint.Font ppFont)
{
FontStyle style = ToGdiFontStyle(ppFont.Style);
System.Drawing.Font gdiFont = new System.Drawing.Font(ppFont.Name, ppFont.Size, style);
// из-за следующей строчки проект не скомпилируется под .NET 2.0, требуя ещё и один из более новых SP
if ( windowsFont.Name != windowsFont.OriginalFontName )
{
windowsFont = new System.Drawing.Font(TextConverter.DefaultUnicodeSubstituteFont, ppFont.Size, style);
}
return windowsFont;
}
Баг был случайно найден на виртуалке с чистой Windows XP и MS Visual Studio 2005, поскольку мы по собственной глупости упустили тот факт, что на хост-машинах давно стоит .NET 3.5. Строчка "if ( windowsFont.Name != ppFont.Name )" решает проблему совместимости. Вот как иногда из-за маленькой, не бросающейся в глаза, ошибки можно завалить весь проект. Каюсь, этот код - мой. ))
guest 31.12.2009 17:36 # 0
guest 31.12.2009 18:17 # 0
guest 31.12.2009 18:35 # 0
смотря что за софт. если ширпотреб - да.
guest 31.12.2009 18:37 # 0
guest 31.12.2009 17:38 # 0
guest 31.12.2009 18:10 # 0
было сказано только, что из-за пустяка "можно завалить весь проект"
guest 31.12.2009 18:34 # 0