pironj

ROP2 issue with ITextSymbol

Discussion created by pironj on May 13, 2014
ArcMap 10.0 Service pack 5

When I apply ROP2 = esriRasterOpCode.esriROPNotXOrPen or ROP2 = esriRasterOpCode.esriROPXOrPen to an ISymbol, the text displayed by the associated ITextSymbol is fully deformed and if a IMask (halo) is associated to the ITextSymbol, it doesn't appear.
If I remove the ROP2 property all is OK. Here is the code :

ITextSymbol tipTextSymb = new TextSymbolClass();

stdole.IFontDisp fontDisp = new stdole.StdFontClass() as stdole.IFontDisp;
fontDisp.Name = "Arial";
fontDisp.Size = (decimal) 9;
tipTextSymb.Font = fontDisp;

IRgbColor tipTextRgbCol = new RgbColorClass();
tipTextRgbCol.Blue = 255;
tipTextSymb.Color = tipTextRgbCol;

tipTextSymb.Text = "Foo";

ISymbol tipSymb = _tipTextSymb as ISymbol;
tipSymb.ROP2 = esriRasterOpCode.esriROPNotXOrPen;
tipSymb = tipTextSymb as ISymbol;

IMxDocument mxDoc = _application.Document as IMxDocument;
IActiveView av = mxDoc.ActiveView;
IScreenDisplay scrDisp = av.ScreenDisplay;

scrDisp.StartDrawing(scrDisp.hDC, (short)esriScreenCache.esriNoScreenCache);
scrDisp.SetSymbol(tipSymb);
scrDisp.DrawText(mouseLocation, tipTextSymb.Text);  // mouseLocation : IPoint
scrDisp.FinishDrawing();

Thanks in advance.
JC Piron

Outcomes