Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  NX 8.5.3.3 - Journal - den Textfont der gesamten Zeichnung ändern

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX
Autor Thema:  NX 8.5.3.3 - Journal - den Textfont der gesamten Zeichnung ändern (2313 mal gelesen)
dirk
Mitglied



Sehen Sie sich das Profil von dirk an!   Senden Sie eine Private Message an dirk  Schreiben Sie einen Gästebucheintrag für dirk

Beiträge: 164
Registriert: 16.11.2000

Siemens NX 2212
Dell Precision Tower 5810
Intel(R) Xeon(R) CPU E5-1630 v4 3,7 GHz
32 GB Ram
NVIDIA Quadro P4000
+++++++++++++++++++++++++++++++++++++++

erstellt am: 10. Apr. 2015 13:46    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

habe noch ein weiteres Problem / Frage:

Wir haben unseren Standard Textfont auf Arial geändert. Ich möchte nun ein Journal haben, welches den Textfont für alle in der Zeichnung befindlichen Texte (Bemaßung, IdSymbol (Positionsnummer), Hinweis) auf Arial ändert, ohne dass die anderen Eigenschaften wie Größe, Farbe usw. geändert werden.
Momentan bin ich dabei 3 einzelne Journale zu schreiben. Eins für Bemaßungen, eins für IdSymbole und eins für Hinweise.
Das Journal für Bemaßung funktioniert einwandfrei. Nur die anderen beiden nicht. Alle Journale sind aber meines Erachtens gleich aufgebaut.
Im Journal für die Bemaßung kann ich z.B. den Eintrag "dimensionText1.Size = 3.5" entfernen. So dass nur die Einträge von den zu änderenden Werten übrig bleiben (toleranceText1.Cfw.Font und toleranceText1.Cfw.Width).
Wenn ich dagegen im Journal für die IdSymbole den Eintrag "generalText1.Size = 3.5" entferne kommt es zu einer Fehlermeldung:
NXOpen.NXException: Die allgemeine Texthöhe muss größer sein als Null.

Kann mir da jemand weiterhelfen?
Danke und Gruß
Dirk

hier das fehlerhafte Journal für IdSymbole

Code:

Option Strict Off
Imports NXOpen

Module set_posnr_text_to_arial

Dim theSession As Session = Session.GetSession()
Dim workPart As Part = theSession.Parts.Work

Sub Main()

Dim markId1 As Session.UndoMarkId
    markId1 = theSession.SetUndoMark(Session.MarkVisibility.Invisible, "change general text to Arial")
    Dim numBad As Integer = 0

Dim fntArial As Integer = workPart.Fonts.AddFont("Arial", FontCollection.Type.Standard)


For Each idSymbol1 As Annotations.IdSymbol In workPart.Annotations.IdSymbols
    Dim symbolPreferences1 As Annotations.SymbolPreferences
symbolPreferences1 = idSymbol1.GetSymbolPreferences()
Dim letteringPreferences1 As Annotations.LetteringPreferences
letteringPreferences1 = idSymbol1.GetLetteringPreferences()

Dim generalText1 As Annotations.Lettering


If generalText1.Size <> 0.01 Then
numBad += 1
generalText1.Size = 3.5
' generalText1.CharacterSpaceFactor = 0.0
generalText1.AspectRatio = 1.0
generalText1.LineSpaceFactor = 1.0
generalText1.Cfw.Color = 7
generalText1.Cfw.Font = fntArial
generalText1.Cfw.Width = Annotations.LineWidth.Thin
' generalText1.Italic = False
letteringPreferences1.SetGeneralText(generalText1)
End if

idSymbol1.SetLetteringPreferences(letteringPreferences1)

letteringPreferences1.Dispose()

Dim nErrs1 As Integer
nErrs1 = theSession.UpdateManager.DoUpdate(markId1)

Next

If numBad > 0 Then
theSession.SetUndoMarkVisibility(markId1, "change dim text to Arial", Session.MarkVisibility.Visible)
    End If

End Sub
End Module


hier das funktionierende für die Bemaßung

Code:

Option Strict Off
Imports NXOpen

Module set_dim_text_to_arial

Dim theSession As Session = Session.GetSession()
Dim workPart As Part = theSession.Parts.Work

Sub Main()

    Dim markId1 As Session.UndoMarkId
    markId1 = theSession.SetUndoMark(Session.MarkVisibility.Invisible, "change dim text to Arial")
    Dim numBad As Integer = 0

Dim fntArial As Integer = workPart.Fonts.AddFont("Arial", FontCollection.Type.Standard)

    For Each tempDim As Annotations.Dimension In workPart.Dimensions
        Dim letteringPreferences1 As Annotations.LetteringPreferences
            letteringPreferences1 = tempDim.GetLetteringPreferences()


        Dim dimensionText1 As Annotations.Lettering = letteringPreferences1.GetDimensionText
Dim appendedText1 As Annotations.Lettering = letteringPreferences1.GetAppendedText
Dim toleranceText1 As Annotations.Lettering = letteringPreferences1.GetToleranceText

        Dim mainText() As String
        Dim dualText() As String
tempDim.GetDimensionText(mainText, dualText)


If dimensionText1.Size <> 0.01 Then
            numBad += 1
dimensionText1.Cfw.Font = fntArial
dimensionText1.Cfw.Width = Annotations.LineWidth.Thin
            letteringPreferences1.SetDimensionText(dimensionText1)
        End If

If appendedText1.Size <> 0.01 Then
            numBad += 1
appendedText1.Cfw.Font = fntArial
appendedText1.Cfw.Width = Annotations.LineWidth.Thin
letteringPreferences1.SetAppendedText(appendedText1)
        End If

If toleranceText1.Size <> 0.01 Then
            numBad += 1
toleranceText1.Cfw.Font = fntArial
toleranceText1.Cfw.Width = Annotations.LineWidth.Thin
letteringPreferences1.SetToleranceText(toleranceText1)
        End If
 

        tempDim.SetLetteringPreferences(letteringPreferences1)
        letteringPreferences1.Dispose()


        Dim nErrs1 As Integer
        nErrs1 = theSession.UpdateManager.DoUpdate(markId1)


    Next

    If numBad > 0 Then
        theSession.SetUndoMarkVisibility(markId1, "change dim text to Arial", Session.MarkVisibility.Visible)
        End If

    End Sub

End Module


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


Sehen Sie sich das Profil von mseufert an!   Senden Sie eine Private Message an mseufert  Schreiben Sie einen Gästebucheintrag für mseufert

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 10. Jun. 2015 18:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für dirk 10 Unities + Antwort hilfreich

Hallo Dirk,

die Texthöhe vorher abfragen, CFW ändern und anschliessend wieder die Texthöhe einstellen ?

Gruß, Michael

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Hermes
Mitglied



Sehen Sie sich das Profil von Hermes an!   Senden Sie eine Private Message an Hermes  Schreiben Sie einen Gästebucheintrag für Hermes

Beiträge: 311
Registriert: 08.09.2002

erstellt am: 12. Jul. 2017 14:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für dirk 10 Unities + Antwort hilfreich

Hallo Dirk

das Journal bzw. Module "set_dim_text_to_arial"  hilft mir sehr

Ich möchte nun auch die Texte in "GD&T" (Forme und Lage Toleranzene / Drafting Feature Control Frame)
sinngemäss gleich behandeln; d.h. auf Font "Arial Unicode MS" umstellen

zum Voraus besten Dank
Toni

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Konstrukteur Automotiv (m/w/d)
Die besten Köpfe für die unterschiedlichsten Aufgaben zu finden sowie Menschen und Technologien zu verbinden, und zwar täglich aufs Neue - dafür schätzen unsere Kunden FERCHAU. Unterstütze uns: als Expert:in für unseren Kunden. Wir realisieren spannende Projekte für namhafte OEMs und Zulieferer der Automobilindustrie und überzeugen täglich mit fundierter Expertise und fachlichem Know-how. Du möchtest ...
Anzeige ansehenKonstruktion, Visualisierung
Hermes
Mitglied



Sehen Sie sich das Profil von Hermes an!   Senden Sie eine Private Message an Hermes  Schreiben Sie einen Gästebucheintrag für Hermes

Beiträge: 311
Registriert: 08.09.2002

erstellt am: 19. Jul. 2017 09:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für dirk 10 Unities + Antwort hilfreich


TextUpdate.gif

 
zur Info

Google sei Dank bin ich fündig geworden:
http://www.eng-tips.com/viewthread.cfm?qid=386920

Grund/Veranlassung:

in NX10 kommt es vor dass nach der Umstellung der Schriftart "iso-1" "Arial Unicode MS" einige Schriftzeichen zu dick dargestellt werden. (IR#8843700 - soll in NX11 gelöst sein)
Das Journal aktualisiert die Schriftzeichen; siehe TextUpdate.gif

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz