Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  verfügbare Schriftnamen

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 Autodesk Produkte
Autor Thema:  verfügbare Schriftnamen (2212 mal gelesen)
joern bosse
Ehrenmitglied
Dipl.-Ing. Vermessung


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

Beiträge: 1734
Registriert: 11.10.2004

Window 10
ACAD 2021
CIVIL 2021
BricsCAD V14-V22
Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz
16.0GB RAM
NVIDIA GeForce GTX 1050<P>

erstellt am: 12. Sep. 2006 09:49    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,
gibt es eine Möglichkeit, sich alle verfügbaren Schriftnamen (die im Dialogfenster "Textstil" im Pulldownmenü "Schriftname" angezeigt werden) auszulesen???
Hintergrund: Ich möchte, wenn ein bestimmter Textstil noch nicht vorhanden ist, diesen neu zu erstellen, aber mit einer bestimmten Schriftart. Dazu muß ich abfragen, ob dieser Schriftname vorhanden ist oder nicht.

------------------
viele Grüße

Jörn

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 12. Sep. 2006 09:58    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 joern bosse 10 Unities + Antwort hilfreich

Ich hätte da das und für die shx sollte findfile reichen..

------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

joern bosse
Ehrenmitglied
Dipl.-Ing. Vermessung


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

Beiträge: 1734
Registriert: 11.10.2004

Window 10
ACAD 2021
CIVIL 2021
BricsCAD V14-V22
Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz
16.0GB RAM
NVIDIA GeForce GTX 1050<P>

erstellt am: 12. Sep. 2006 10:23    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 Thomas,
danke erstmal, aber so ganz ist damit mein Problem noch nicht behoben:
Mit Deiner Funktion werden in meinem Falle 353 Schriftname ausgelesen, im Dialogfenster "Textstil werden aber nur ca. 235 Schriftname angezeigt, und dort sind dann schon die shx'er mit enthalten.
Dann vielleicht nochmal anders gefragt, nach welchen Kriterien werden die vorhandenen Schriftnamen in die AutoCAD-Liste aufgenommen???
Ich möchte eine Liste mit genau den Schriftnamen haben, die von AutoCAD im Dialogfenster "Textstil" auch angeboten werden, geht das???

------------------
viele Grüße

Jörn

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 12. Sep. 2006 10: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 joern bosse 10 Unities + Antwort hilfreich

na evtl kannst du aus der Windowsfontliste nur die ttf's verwenden und nicht die "fon"... also noch mal ein vl-remove-if not rüber..

------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

astlex
Mitglied
cad-admin


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

Beiträge: 40
Registriert: 11.07.2006

acad200x
adt200x

erstellt am: 12. Sep. 2006 10:32    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 joern bosse 10 Unities + Antwort hilfreich


TextStyleActiveAndProps.zip

 
hallo jörn,

schau dir mal meine funktion "TextStyleActiveAndProps" an.
so erzeuge ich neue textstile mit einer bestimmten schrift.
das programm stellt vorübergehend die supportpfade um (bzw. hängt "C:\\Windows\\Fonts\\" an die bestehenden pfade).
wird nach programmablauf natürlich wieder zurückgestellt.

ich hoffe das tool hilft dir
lg alex

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 12. Sep. 2006 10:40    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 joern bosse 10 Unities + Antwort hilfreich

 
Zitat:
Original erstellt von astlex:
hallo jörn,

schau dir mal meine funktion "TextStyleActiveAndProps" an.
so erzeuge ich neue textstile mit einer bestimmten schrift.
das programm stellt vorübergehend die supportpfade um (bzw. hängt "C:\\Windows\\Fonts\\" an die bestehenden pfade).
wird nach programmablauf natürlich wieder zurückgestellt.

ich hoffe das tool hilft dir
lg alex



so ähnlich war auch mein erster Ansatz, aber :
Was, wenn Windows in einem anderen Verzeichnis installiert wurde?.. zumindest solltest du das mit (getenv "Windir") überprüfen
..außerdem sind Filezugriffe zur Erstellung einer Fontliste arschlangsam und der Schriftname ist nicht unbedingt der Dateiname!
Deshalb ist IMHO der Weg über die Registry der sinnvollere, da ja auch das OS dort seine Infos her bezieht.


Und nochwas.. Warum soviele einzelne Dateien, man kann dch auch zusammengehörende Funktionen in eine lsp packen..
------------------
      - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

joern bosse
Ehrenmitglied
Dipl.-Ing. Vermessung


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

Beiträge: 1734
Registriert: 11.10.2004

Window 10
ACAD 2021
CIVIL 2021
BricsCAD V14-V22
Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz
16.0GB RAM
NVIDIA GeForce GTX 1050<P>

erstellt am: 12. Sep. 2006 11:23    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,

ich habe mich jetzt erstmal an Cadmium's Variante gemacht, und bei einem oberflächlichen Vergleich scheinen genau die Schriftnamen herauszukommen, die sonst auch von AutoCAD angezeigt werden.

Code:

(defun MyTest  ()
  (vl-sort
    (vl-remove-if
      (function (lambda (A) (not (vl-string-search ".ttf" (cdr A)))))
      (mapcar
'(lambda (X)
  (cons
    X
    (vl-registry-read
      "HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows NT\\CurrentVersion\\Fonts"
      X)))
(vl-registry-descendents
  "HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows NT\\CurrentVersion\\Fonts"
  ""))
      )
    (function (lambda (e1 e2) (< (car e1) (car e2))))))

Aber, nun noch mal zu den SHX-Schriften. Ich weiß das alle SHX-Dateien im ACAD/Fonts Verzeichnis sind, aber wie kann ich herausfinden, welche SHX-Dateien Schriften beinhalten???
z.B. bekomme ich durch AutoCAD den Schriftname ISO8.SHX angeboten, ich habe im Fontverzeichnis aber keine Datei ISO8.SHX gefunden.

Da stehe ich zur Zeit ganz schön auf dem Schlauch.

------------------
viele Grüße

Jörn

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 12. Sep. 2006 11:50    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 joern bosse 10 Unities + Antwort hilfreich

so vielleicht:?

(defun GET-SHXFILES(/ DIRS SHX LISTE STD OLDFONT)
  (setq DIRS(vl-string-translate "\\" "/" (getenv "ACAD")))
  (setq STD(vla-item(vla-get-textstyles(vla-get-activedocument(vlax-get-acad-object)))"STANDARD"))
  (setq OLDFONT(vla-get-fontfile STD))
  (while (setq POS (vl-string-search ";" DIRS))
    (foreach SHX (vl-directory-files (vl-string-right-trim "/" (substr DIRS 1 POS)) "*.shx")
      (if(and(not(vl-catch-all-error-p
                  (vl-catch-all-apply
                    'vla-put-fontfile (list STD SHX)
                  )
                )
            )
            (not(member(strcase SHX) LISTE))
        )
        (setq LISTE(cons (strcase SHX) LISTE))
      ) 
    )     
    (setq DIRS(substr DIRS (+ POS 2)))             
  )
  (vla-put-fontfile STD OLDFONT)
  (vl-sort LISTE '< )
)

------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

CAD-Huebner
Ehrenmitglied V.I.P. h.c.
Verm.- Ing., ATC-Trainer



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

Beiträge: 9732
Registriert: 01.12.2003

One AutoCAD 2.5 - 2023, Civil 3D, Win10/win11

erstellt am: 12. Sep. 2006 11:55    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 joern bosse 10 Unities + Antwort hilfreich

@astlex
Vielen Dank an dieser Stelle mal für deinen übersichtlichen und gut dokumentierten Code (Jörn und Cadmium lobe ich jetzt mal nicht extra, die werden hier im Forum schon häufig genug - natürlich zu Recht - mit Dank überschüttet).
Mir gefällt auch das konsequente Einsetzen der ActiveX Funktionalität von Visual Lisp in deinen Code. Mach bitte weiter so.

@Cadmium - man muss auch mal loben - nicht immer nur nörgeln. Kritik ist ja wichtig, gerade bei Programmierung ist Sie ja nicht persönlich gemeint, allerdings kann man seine Kritik aber auch etwas konstruktiver formulieren - so jetzt krieg ich bestimmt auch mein Fett weg.

------------------
Mit freundlichem Gruß

Udo Hübner

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

astlex
Mitglied
cad-admin


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

Beiträge: 40
Registriert: 11.07.2006

acad200x
adt200x

erstellt am: 12. Sep. 2006 11:58    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 joern bosse 10 Unities + Antwort hilfreich

hola CADmium,

ein klein wenig stört mich, dass sehr viel zu tode-kritisiert wird.

primär ging es darum, zu zeigen, wie man einen textstil ändert bzw. neu erzeugt.
es handelt sich hierbei um ein tool, das bei uns eingesetzt wird - und somit kann ich sicherstellen, dass nicht in einem anderen verzeichnis installiert wurde; bzw. fontname = dateiname.
von langsam habe ich noch nichts bemerkt.

einzelne dateien:
ist bei mir aus zwecken der übersicht so, damit ich verschiedene standard-funktionen in anderen funktionen verwenden kann (will nicht immer verschiedenste projekte durchsuchen müssen, um einzelne tools zu finden) - modularer aufbau
einzelne dateien werden zu einer *.vlx zusammengefasst.

natürlich steht es jedem frei, die von mir ins netz gestellten werkzeuge, zu verändern - ich wollte nur ein beispiel aufzeigen - hab' nie gemeint, dass es die perfekte lösung ist.

lg alex

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

astlex
Mitglied
cad-admin


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

Beiträge: 40
Registriert: 11.07.2006

acad200x
adt200x

erstellt am: 12. Sep. 2006 12:01    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 joern bosse 10 Unities + Antwort hilfreich

hola udo,

freue mich immer, freundliche stimmen zu hören.

danke
alex

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 12. Sep. 2006 12:20    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 joern bosse 10 Unities + Antwort hilfreich

okok ... lob ich auch mal .. kannst aber trotzdem über meine Hinweise nachdenken, du bist nicht verpflichtet sie umzusetzen 

Wenn du später aus den ganzen files ne vlx machst ist es auch wieder ok. Meinereiner hat sich trotzdem das zusammenfassen in Funktionsbibos angewöhnt, für Single-Tools wird dann separiert. Sonst sind es einfach zu viele Files..

Warum wird jeder Hinweis als nörgeln oder persönlicher Angriff interpretiert? War was unsachlich?

Da ich Jörn's Lispkenntnisse denke einschätzen zu können, bin ich auf Textstilerzeugung ect. nicht weiter eingegangen... Für die Allgemeinheit ist dein Code  aber sicher ein gutes Bsp.


Ach ja, noch ein Hinweis    :

Um z.B. Zitat aus deinem Header :"Vorsicht: Nachdem zBsp. keine TrueType-Fonts gefunden werden, verändert das Programm die Supportpfade (temporär)
"C:\\Windows\\Fonts\\" ... zu vermeiden , guck dir mal den Konstrukt

Code:

(not(vl-catch-all-error-p
      (vl-catch-all-apply
          ....
      )
    )
)


und die darin verwendeten Funktionen an.
------------------
       - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

joern bosse
Ehrenmitglied
Dipl.-Ing. Vermessung


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

Beiträge: 1734
Registriert: 11.10.2004

Window 10
ACAD 2021
CIVIL 2021
BricsCAD V14-V22
Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz
16.0GB RAM
NVIDIA GeForce GTX 1050<P>

erstellt am: 12. Sep. 2006 13:24    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

@astlex
auch von mir ein Dankeschön, ich habe den Code mal durchgeschaut, aber Cadmium's Code war für mich erstmal überschaubarer.

@Cadmium
Der zweite Ansatz mit den SHX-Dateien war schon mal toll, aber, es werden auch die SHX-Dateien ausgegeben, die Symbole beinhalten.
Wenn ich dann z.B. mit dem Code von astlex einen Textstil erzeuge

(CreateTextStyle "alexx" '(("fontFile" . "NORM_B.SHX") ("Height" . 0.0)))

erscheint folgenden Meldung:

"D:\Programme\AutoCAD 2006\SHX\bfr99_4.shx ist eine Symboldatei, keine
Schriftdatei."

Desweiteren habe ich mich bei den ttf-Schriften wohl auch zu früh gefreut, ich habe (vl-string-search ".ttf" (cdr A)) gegen (vl-string-search ".TTF" (strcase(cdr(A)))) ausgetauscht.
Daraus folgt, das ich doch wieder viel mehr Schriften habe als AutoCAD offiziell anzeigt.

Es ist also für mich weiterhin ungeklärt, nach welchen Kriterien AutoCAD die angebotenen Schriftnamen auflistet.

Heute werde ich aber aus Zeitgründen mit dem Thema Schluß machen, aber ich hoffe, daß ich zum Ende der Woche noch was sinnvolles zusammengebastelt bekomme.

------------------
viele Grüße

Jörn

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

joern bosse
Ehrenmitglied
Dipl.-Ing. Vermessung


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

Beiträge: 1734
Registriert: 11.10.2004

Window 10
ACAD 2021
CIVIL 2021
BricsCAD V14-V22
Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz
16.0GB RAM
NVIDIA GeForce GTX 1050<P>

erstellt am: 18. Sep. 2006 07:51    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,
ich wollte dieses Thema nochmal aufwärmen, ich selbst bin nicht weitergekommen.

Hat irgendwer vielleicht noch eine Idee, wie ich eine gefundene SHX-Datei prüfen kann, ob es sich bei ihr um eine Symboldatei oder Schriftdatei handelt???

------------------
viele Grüße

Jörn

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 18. Sep. 2006 08:10    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 joern bosse 10 Unities + Antwort hilfreich

naja, du kannst noch testen, ob

(vl-catch-all-error-p
                (vl-catch-all-apply
                  'vla-loadshapefile(list
                                      (vla-get-activedocument(vlax-get-acad-object))
                                      (findfile SHX)
                                    )
                )
            )
einen Fehler auswirft.. wenn ja sollte es eine Schriftdatei sein, wenn nicht, eine Symboldatei...

ich dachte ja im Umkehrschluß, das ACAD auch hierbei meckert:

(not(vl-catch-all-error-p
                  (vl-catch-all-apply
                    'vla-put-fontfile (list STD SHX)
                  )
                )
            )

------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

joern bosse
Ehrenmitglied
Dipl.-Ing. Vermessung


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

Beiträge: 1734
Registriert: 11.10.2004

Window 10
ACAD 2021
CIVIL 2021
BricsCAD V14-V22
Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz
16.0GB RAM
NVIDIA GeForce GTX 1050<P>

erstellt am: 18. Sep. 2006 09:52    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

@Cadmium,
es klappt, aber bei der Funktion "vla-loadshapefile" wird leider die ganze Eingabeaufforderung mit den Meldungen, ob Schriftdatei oder Symboldatei zugepflastert, ob es da eine Möglichkeit gibt, das zu unterdrücken???

Der derzeitige Stand:

Code:

defun Fonts  ( / )
  (vl-sort
  (GET-SHXFILES
    (vl-remove-if
      (function (lambda (A) (not (vl-string-search ".TTF" (strcase(car A))))))
      (mapcar
'(lambda (X)
  (cons
   
    (vl-registry-read
      "HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows NT\\CurrentVersion\\Fonts"
      X)X))
(vl-registry-descendents
  "HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows NT\\CurrentVersion\\Fonts"
  ""))
      ))
  (function (lambda (e1 e2) (< (car e1)(car e2)))))
)

(defun GET-SHXFILES(LISTE / DIRS SHX POS)
  (setq DIRS(vl-string-translate "\\" "/" (getenv "ACAD")))
  (while (setq POS (vl-string-search ";" DIRS))
    (foreach SHX (vl-directory-files (vl-string-right-trim "/" (substr DIRS 1 POS)) "*.shx")
      (if(and(vl-catch-all-error-p
                  (vl-catch-all-apply
    'vla-loadshapefile(list
                                      (vla-get-activedocument(vlax-get-acad-object))
                                      (findfile SHX))
                  )
                            )
            (not(assoc(strcase SHX) LISTE))
        )
(setq LISTE(cons(cons (strcase SHX)"shx") LISTE)))
      )
       
    (setq DIRS(substr DIRS (+ POS 2)))           
  )
 
  LISTE
)



------------------
viele Grüße

Jörn

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