30.07.2012 08:43    

k005
Merhaba arkadaşlar;
Bir projede unicode bir karakter var.. Fi(ø) işareti. font olarak da arial içinde.. bunu Autocad de edit kısmından kopyalayıp lisp dosyasına ekliyorum fakat ; ? işareti şeklinde görünüyor.. bu unicode karakterleri lisp dosyasına eklemenin bir yolu varmıdır..?

yardımcı arkadaşa şimdiden teşekkürler..

Herkese kolay gelsin.

30.07.2012 11:59    

Travaci
Windowsun çalıştır komutunu açıp charmap yazın yada, donatılar > sistem araçları > karakter işlem merkezi ne girin oradan istediğiniz karekteri bulup bir kere tıkladığınızda altında gerekli kodu veriyor, onu kullanabilirsiniz diye düşünüyorum : ) autocadde fi için %%c

30.07.2012 12:45    

k005
Alıntı
Travaci :
Windowsun çalıştır komutunu açıp charmap yazın yada, donatılar > sistem araçları > karakter işlem merkezi ne girin oradan istediğiniz karekteri bulup bir kere tıkladığınızda altında gerekli kodu veriyor, onu kullanabilirsiniz diye düşünüyorum : ) autocadde fi için %%c



bahsettiğiniz yolu daha önce denedim.. %%c lisp e eklenebilir bir ifade.. o kısma eklenmesi gereken karakter bu değil.. zaten dosyada da %%c görünmüyor.. öyle olsaydı. kolaydı.. :)

30.07.2012 13:12    

Travaci
Kod:

(defun c:fi (/  )
(princ "\nBaşına fi yazılacak texti seçin:")
(setq ss (ssget (list (cons 0 "TEXT"))))
(if (= ss nil) (progn (princ "\nSeçim yok..."))
(progn
(setq c 0
say (sslength ss)
)
(while (< c say)
(setq tek (ssname ss c) ed1 (entget tek))
(setq ed1 (subst (cons 1 (strcat "%%c" (cdr (assoc 1 (entget tek))))) (assoc 1 ed1) ed1))
(entmod ed1)
(setq c (+ c 1))
)
)
)
(princ)
)

Seçilen yazının başına fi koyar, eğer yazı font'unuz uyumlu deilse soru işareti çıkar. Bu font arial ise ? işareti çıkması mümkün deil -ki zaten arial standart autocad de mevcut, yazılan text in fontunun arial olduğundan emin olun.

Ehya hocaya teşekkürler : )

30.07.2012 13:19    

k005
Alıntı
Travaci :
Kod:

(defun c:fi (/)
(setq data (entget (car (entsel "\nBaşına fi koyulacak yazı. "))))
(while (/= data nil)
(setq wRt (assoc 1 data))
(setq new (strcat "%%c" "wRt"))
(setq data (subst (cons 1 new) wRt data))
(entmod data)
(setq data (entget (car (entsel "\nBaşına fi koyulacak yazı. "))))
)
)

Seçilen yazının başına fi koyar, eğer yazı font'unuz uyumlu deilse soru işareti çıkar. Bu font arial ise ? işareti çıkması mümkün deil -ki zaten arial standart autocad de mevcut, yazılan text in fontunun arial olduğundan emin olun.



? işareti lisp kodunda çıkıyor.. yazıda değil. bu göndermiş olduğunuz lisp ile alakası yok... yinede teşekkürler.

k005 (30.07.2012 13:40 GMT)

30.07.2012 13:29    

Travaci
İkimiz farklı şeyden mi bahsediyoruz ? text dosyasında tabiki çıkmıcak, çünkü text dosyası unicode ları destekliyor.

30.07.2012 13:36    

k005
Alıntı
Travaci :
İkimiz farklı şeyden mi bahsediyoruz ? text dosyasında tabiki çıkmıcak, çünkü text dosyası unicode ları destekliyor.



benim sorduğum soru bu.. text dosyasında çıkarmanın bir yolu varmı.. siz yanlış anladınız sanırım.. bir video ekliyorum.. oradan bakabilirsiniz..

15420-cap.rar

30.07.2012 13:47    

Travaci
Tamam bende diyorumki bu text dosyasında kullanılmaz kullanıcam diyorsanız yukarıdaki örneği oyuzden gonderdım %%c kullanıcaksanız bu bi başka şey ise örnek asci kode kullanımı aşağıdaki gibidir, yukarıdaki kodla yenisini değiştirip farkını görün.
Kod:

(setq ed1 (subst (cons 1 (strcat "\U+0045\U+0052\U+004B\U+0041\U+004E"(cdr (assoc 1 (entget tek))))) (assoc 1 ed1) ed1))

30.07.2012 14:08    

k005
Alıntı
Travaci :

son göndermiş olduğun kod.. olacak gibi..

Kod:

(setq ed1 (subst (cons 1 (strcat "\U+03A6"(cdr (assoc 1 (entget tek))))) (assoc 1 ed1) ed1))


benim işim bu U+03A6 kodu ----> ø bununla değiştirmek.. (ø = Alt+0248)

********************

Tamamdır. arkadaşım.. şimdi oldu.. Eyvallah.. bana gerekli olan kısım burasıydı...
Kod:

(setq os (strcat "\U+03A6"))
yardımın için teşekkür ederim..

k005 (30.07.2012 14:14 GMT)

> 1 <
Copyright © 2004-2022 SQL: 1.44 saniye - Sorgu: 67 - Ortalama: 0.02149 saniye