Zuletzt veröffentlicht: August 25, 2014No Product Found
Verbesserungs-ID-Nummer
NIM000130
Eingereicht
August 22, 2014
Zuletzt geändert
April 2, 2025
Gilt für
No Product Found
Gefunden in Version
9.1
Status
Will Not Be Addressed
Das Entwicklungsteam hat das Problem bzw. die Anforderung sorgfältig geprüft und ist zu dem Schluss gekommen, es nicht zu beheben bzw. keine weiteren Schritte zu unternehmen. Weitere Erläuterungen finden Sie ggf. im Abschnitt "Zusätzliche Informationen" des jeweiligen Problems.
Zusätzliche Informationen
No Public Explanation
Alternativer Workflow
' Remove outlines from raster legend ' Kirk Kirk Kuykendall ' <a href="http://forums.esri.com/Thread.asp?c=93&f=989&t=83387" target="_blank">http://forums.esri.com/Thread.asp?c=93&f=989&t=83387</a> ' To use: ' add the module (Alt-F11, Insert Module) ' convert legend to graphic, select the graphic & Tools/Macro, run Test ' You can then connect the macro to a button if you wish for quick access. Option Explicit Sub Test() Dim pMxDoc As IMxDocument Set pMxDoc = ThisDocument
Dim pGCS As IGraphicsContainerSelect Set pGCS = pMxDoc.PageLayout
If pGCS.ElementSelectionCount = 0 Then Debug.Print "no elements selected" Else Dim l As Long For l = 0 To pGCS.ElementSelectionCount - 1 HideBorders pGCS.SelectedElement(l) Next l pMxDoc.ActiveView.Refresh End If End Sub
Sub HideBorders(pElement As IElement) ' recursively assign null outlines to all fillshapeelements in the ' element (which might be a group element) If TypeOf pElement Is IFillShapeElement Then Dim pFSE As IFillShapeElement Set pFSE = pElement ' Debug.Print pFSE.Symbol.Outline Is Nothing ' COM contract violation If TypeOf pFSE.Symbol Is IColorSymbol Then ' replace the rasterRGBSymbo with a ' simplefillsymbol Dim pSFS As ISimpleFillSymbol Set pSFS = New SimpleFillSymbol
pSFS.Style = esriSFSSolid pSFS.Color = pFSE.Symbol.Color Dim pSLS As ISimpleLineSymbol Set pSLS = New SimpleLineSymbol pSLS.Style = esriSLSNull pSFS.Outline = pSLS pFSE.Symbol = pSFS End If Else If TypeOf pElement Is IGroupElement Then Dim pGElement As IGroupElement Set pGElement = pElement Dim l As Long For l = 0 To pGElement.ElementCount - 1 HideBorders pGElement.Element(l) Next l End If End If End Sub
Schritte zur Reproduzierung
Benachrichtigung erhalten, wenn sich der Status eines Bugs ändert