Konu: Barkod Problemi
Öncelikle Herkese Merhabalar
Ben Etiket Çıkarırken ID Automacion Code 39 Fontu Kullanıyorum ama bu fontun font boyutunu küçültünce 10-9-8 yapınca barkod okuyucuda problem yaşıyorum.Nasıl Bir Yol İzlemeliyim ?
Giriş yapmadınız. Lütfen giriş yapın yada kayıt olun.
fox4um » Raporlar ve Etiketler » Barkod Problemi
Öncelikle Herkese Merhabalar
Ben Etiket Çıkarırken ID Automacion Code 39 Fontu Kullanıyorum ama bu fontun font boyutunu küçültünce 10-9-8 yapınca barkod okuyucuda problem yaşıyorum.Nasıl Bir Yol İzlemeliyim ?
fontu fazla küçültmemelisin...
Ama 9 punto yapmam lazım
barkod okuyucular cizgileri saglıklı olarak okuyabilmeli cok kucuk olursa okuyamaz
başka etiket programlarını inceledim boyutla ilgili bi problem yok
Fox Proda Etiket için Font kullanmadan bu işi çözebilirmiyiz yardımlarınız için şimdiden teşekkürler
barkod yazıcı kullanırsan windows fontu kullanmada en iyi kalitede barkod basarsın. ama onda da fazla küçük yaparsan okumaz. ben birçok üründen çok küçük basılmış barkod gördüm ve bunların okunamadığını da gördüm...
Arkadaşlar Elinde Ean-13 Barkod fontu Olan Var mı ?
bende var gönderebilirim
bende var gönderebilirim
bana da gonderebilirsin Tarık
soykanozcelik@fox4um.com
Arkadaşlar,
12 haneli rakamı ean kodlarına çeviren prg de benden..
Parameters _bar
_bar=cevir(_bar)
Return _bar
Proc cevir
Param _gelen
Do Case
Case Substr(_gelen,1,1)="0"
_gelen="#"+Substr(_gelen,2,11)
Case Substr(_gelen,1,1)="1"
_gelen="$"+Substr(_gelen,2,11)
Case Substr(_gelen,1,1)="2"
_gelen="%"+Substr(_gelen,2,11)
Case Substr(_gelen,1,1)="3"
_gelen="&"+Substr(_gelen,2,11)
Case Substr(_gelen,1,1)="4"
_gelen="'"+Substr(_gelen,2,11)
Case Substr(_gelen,1,1)="5"
_gelen="("+Substr(_gelen,2,11)
Case Substr(_gelen,1,1)="6"
_gelen=")"+Substr(_gelen,2,11)
Case Substr(_gelen,1,1)="7"
_gelen="*"+Substr(_gelen,2,11)
Case Substr(_gelen,1,1)="8"
_gelen="+"+Substr(_gelen,2,11)
Case Substr(_gelen,1,1)="9"
_gelen=","+Substr(_gelen,2,11)
Endcase
_aa=""
For i=8 To 12
_xx=cevir2(Substr(_gelen,i,1))
_aa=_aa+_xx
Endfor
Dimension _b[7]
_xx=Substr(_gelen,1,1)
For i=3 To 7
_b[i]=cevir3(_xx)
Endfor
_check=checkbul(_bar)
_gelen=Substr(_gelen,1,1)+"!"+Substr(_gelen,2,1)+_b[3]+_b[4]+_b[5]+_b[6]+_b[7]+"-"+_aa+_check+"!"
Return _gelen
Proc checkbul
Param c_bul
_x1=0
_x2=0
For i=1 To 12
If Mod(i,2)=0
_x1=_x1+Asc(Substr(c_bul,i,1))-48
Else
_x2=_x2+Asc(Substr(c_bul,i,1))-48
Endif
Endfor
_x1=(3*_x1)+_x2
_x2=10-Mod(_x1,10)
If _x2=10
_x2=0
Endif
_x2=_x2+48
c_bul=Chr(_x2)
c_bul=cevir2(c_bul)
Return c_bul
Proc cevir2
Param _ilkchr
Do Case
Case _ilkchr="0"
_ilkchr="a"
Case _ilkchr="1"
_ilkchr="b"
Case _ilkchr="2"
_ilkchr="c"
Case _ilkchr="3"
_ilkchr="d"
Case _ilkchr="4"
_ilkchr="e"
Case _ilkchr="5"
_ilkchr="f"
Case _ilkchr="6"
_ilkchr="g"
Case _ilkchr="7"
_ilkchr="h"
Case _ilkchr="8"
_ilkchr="i"
Case _ilkchr="9"
_ilkchr="j"
Endcase
Return _ilkchr
Proc cevir3
Param _ilkchr
Do Case
Case _ilkchr="#"
_giden=Substr(_gelen,i,1)
Case _ilkchr="$"
Do Case
Case i=3
_giden=Substr(_gelen,i,1)
Case i=4
_giden=cevir99(Substr(_gelen,i,1))
Case i=5
_giden=Substr(_gelen,i,1)
Case i=6
_giden=cevir99(Substr(_gelen,i,1))
Case i=7
_giden=cevir99(Substr(_gelen,i,1))
Endcase
Case _ilkchr="%"
Do Case
Case i=3
_giden=Substr(_gelen,i,1)
Case i=4
_giden=cevir99(Substr(_gelen,i,1))
Case i=5
_giden=cevir99(Substr(_gelen,i,1))
Case i=6
_giden=Substr(_gelen,i,1)
Case i=7
_giden=cevir99(Substr(_gelen,i,1))
Endcase
Case _ilkchr="&"
Do Case
Case i=3
_giden=Substr(_gelen,i,1)
Case i=4
_giden=cevir99(Substr(_gelen,i,1))
Case i=5
_giden=cevir99(Substr(_gelen,i,1))
Case i=6
_giden=cevir99(Substr(_gelen,i,1))
Case i=7
_giden=Substr(_gelen,i,1)
Endcase
Case _ilkchr="'"
Do Case
Case i=3
_giden=cevir99(Substr(_gelen,i,1))
Case i=4
_giden=Substr(_gelen,i,1)
Case i=5
_giden=Substr(_gelen,i,1)
Case i=6
_giden=cevir99(Substr(_gelen,i,1))
Case i=7
_giden=cevir99(Substr(_gelen,i,1))
Endcase
Case _ilkchr="("
Do Case
Case i=3
_giden=cevir99(Substr(_gelen,i,1))
Case i=4
_giden=cevir99(Substr(_gelen,i,1))
Case i=5
_giden=Substr(_gelen,i,1)
Case i=6
_giden=Substr(_gelen,i,1)
Case i=7
_giden=cevir99(Substr(_gelen,i,1))
Endcase
Case _ilkchr=")"
Do Case
Case i=3
_giden=cevir99(Substr(_gelen,i,1))
Case i=4
_giden=cevir99(Substr(_gelen,i,1))
Case i=5
_giden=cevir99(Substr(_gelen,i,1))
Case i=6
_giden=Substr(_gelen,i,1)
Case i=7
_giden=Substr(_gelen,i,1)
Endcase
Case _ilkchr="*"
Do Case
Case i=3
_giden=cevir99(Substr(_gelen,i,1))
Case i=4
_giden=Substr(_gelen,i,1)
Case i=5
_giden=cevir99(Substr(_gelen,i,1))
Case i=6
_giden=Substr(_gelen,i,1)
Case i=7
_giden=cevir99(Substr(_gelen,i,1))
Endcase
Case _ilkchr="+"
Do Case
Case i=3
_giden=cevir99(Substr(_gelen,i,1))
Case i=4
_giden=Substr(_gelen,i,1)
Case i=5
_giden=cevir99(Substr(_gelen,i,1))
Case i=6
_giden=cevir99(Substr(_gelen,i,1))
Case i=7
_giden=Substr(_gelen,i,1)
Endcase
Case _ilkchr=","
Do Case
Case i=3
_giden=cevir99(Substr(_gelen,i,1))
Case i=4
_giden=cevir99(Substr(_gelen,i,1))
Case i=5
_giden=Substr(_gelen,i,1)
Case i=6
_giden=cevir99(Substr(_gelen,i,1))
Case i=7
_giden=Substr(_gelen,i,1)
Endcase
Endcase
Return _giden
Proc cevir99
Param _gelenchr
Do Case
Case _gelenchr="0"
_gelenchr="A"
Case _gelenchr="1"
_gelenchr="B"
Case _gelenchr="2"
_gelenchr="C"
Case _gelenchr="3"
_gelenchr="D"
Case _gelenchr="4"
_gelenchr="E"
Case _gelenchr="5"
_gelenchr="F"
Case _gelenchr="6"
_gelenchr="G"
Case _gelenchr="7"
_gelenchr="H"
Case _gelenchr="8"
_gelenchr="I"
Case _gelenchr="9"
_gelenchr="J"
Endcase
Return _gelenchr
mail adresim david77beckham@mynet.com buraya gönderirsen çok sevinirim
Arkadaşlar,
12 haneli rakamı ean kodlarına çeviren prg de benden..
...
çok aşırı uzun ve içinde çok fazla case var. bu biraz daha kısa ve daha hızlı:
Lparameters barkod4
m.barkod4=Left(Alltrim(m.barkod4),12)
g1=0
g2=0
g3=0
g1=Val(Substr(m.barkod4,2,1))+Val(Substr(m.barkod4,4,1))+Val(Substr(m.barkod4,6,1));
+Val(Substr(m.barkod4,8,1))+Val(Substr(m.barkod4,10,1))+Val(Substr(m.barkod4,12,1))
g2=Val(Left(m.barkod4,1))+Val(Substr(m.barkod4,3,1))+Val(Substr(m.barkod4,5,1));
+Val(Substr(m.barkod4,7,1))+Val(Substr(m.barkod4,9,1))+Val(Substr(m.barkod4,11,1))
g3=10-Mod((g1*3+g2),10)
m.barkod4=m.barkod4+Right(Allt(Str(g3)),1)
m.barkod4=Substr(Allt(m.barkod4)+Space(20),1,20)
Return m.barkod4
bende var gönderebilirim
denedin mi? çalışıyor mu? ben de ean13 kodlar buldum ama hiçbiri çalışmadı. eğer çalışan bir fontsa benim de işime yarar... metinemre@hotmail.com
internette buldum bende kullanıyorum bi problem yok yalnız 13.karakter olan check digit olmayacak yazdıracağınız barkodda.
yazdırırkende kullandığım kod bu,
lcbar1 = TRANSFORM(thisform.text2.value)
lcChaine = lcbar1
ean13 = ""
* Vérifier qu'il y a 12 caractères
IF LEN(lcChaine) = 12 THEN
* Et que ce sont bien des chiffres
FOR lni = 1 TO 12
IF ASC(SUBSTR(lcChaine, lni, 1)) < 48 OR ASC(SUBSTR(lcChaine, lni, 1)) > 57 THEN
lni = 0
EXIT
ENDIF
ENDFOR
IF lni = 13 THEN
* Calcul de la clé de contrôle
lnCheckSum = 0
FOR lni = 2 TO 12 STEP 2
lnCheckSum = lnCheckSum + VAL(SUBSTR(lcChaine, lni, 1))
ENDFOR
lnCheckSum = lnCheckSum * 3
FOR lni = 1 TO 11 STEP 2
lnCheckSum = lnCheckSum + VAL(SUBSTR(lcChaine, lni, 1))
ENDFOR
lnM = (VAL(SUBSTR(STR(lnCheckSum,3,0),1,2))+1)*10
lnDigit = lnM-lnCheckSum
lcChaine = ALLTRIM(lcChaine)+STR(lnDigit,1,0)
* Le premier chiffre est pris tel quel.
lcCodeBarre = SUBSTR(lcChaine, 1, 1)
*
lnFirst = VAL(SUBSTR(lcChaine, 1, 1))
FOR ix_chiffre = 2 TO 7
tableA = .F.
DO CASE
CASE ix_chiffre = 2
tableA = .T.
CASE ix_chiffre = 3
IF lnFirst >= 0 AND lnFirst <= 3
tableA = .T.
ENDIF
CASE ix_chiffre = 4
IF lnFirst = 0 OR lnFirst = 4 OR lnFirst = 7 OR lnFirst = 8
tableA = .T.
ENDIF
CASE ix_chiffre = 5
IF lnFirst = 0 OR lnFirst = 1 OR lnFirst = 4 OR lnFirst = 5 OR lnFirst = 9
tableA = .T.
ENDIF
CASE ix_chiffre = 6
IF lnFirst = 0 OR lnFirst = 2 OR lnFirst = 5 OR lnFirst = 6 OR lnFirst = 7
tableA = .T.
ENDIF
CASE ix_chiffre = 7
IF lnFirst = 0 OR lnFirst = 3 OR lnFirst = 6 OR lnFirst = 8 OR lnFirst = 9
tableA = .T.
ENDIF
ENDCASE
IF tableA THEN
lcCodeBarre = lcCodeBarre+CHR(65 + VAL(SUBSTR(lcChaine, ix_chiffre, 1)))
ELSE
lcCodeBarre = lcCodeBarre+CHR(75 + VAL(SUBSTR(lcChaine, ix_chiffre, 1)))
ENDIF
ENDFOR
*
lcCodeBarre = lcCodeBarre+"*" && Ajout séparateur central
FOR lni = 8 TO 13
lcCodeBarre = lcCodeBarre+CHR(97 + VAL(SUBSTR(lcChaine, lni, 1)))
ENDFOR
lcCodeBarre = lcCodeBarre+"+" && Ajout de la marque de fin
ean13 = lcCodeBarre
ENDIF
ENDIF
w_ean13 = ean13
lcbar = ean13
LABEL FORM "c:\etiket\barkod2" TO PRINTER PROMPT preview
bu font code39 olarak ekrana goruntu verdi direkt olarak word yada excel de denedim ,
excel deki kullanımı daha farklıydı ,bunu bulduğum sitede vardı ama siteyi hatırlamıyorum,
yukarıdaki kodu kullanrak foxta yazdırmayı dene istersen, ben 7-8 aydır kullanıyorum ne yazmada problem var nede barkod okuyucunun okumasında
bende barcod fonları ver isteyene gönderebilirim..
orginal 123456789101 çevrilmiş hali $!23E5GH-ijbabj! fontu çevrilmiş haline uygulamazsanız basılan barcodu okuyucu okumaz..görüntüsüde ean13 e benzemez..
bende barcod fonları ver isteyene gönderebilirim..
ozellikle ean13 ise gonderirsen sevinirim...
soykanozcelik@fox4um.com
orginal 123456789101 çevrilmiş hali $!23E5GH-ijbabj! fontu çevrilmiş haline uygulamazsanız basılan barcodu okuyucu okumaz..görüntüsüde ean13 e benzemez..
o zaman bendeki ean13 font ta o yüzden yazmıyor demek ki. ben barkod yazıcısı kullanıyorum aynen ean kodunu alıyor onlar. bu fonta özel bir durum demek ki...
Elinde ean128'i kodlara çeviren prg olan var mı?
laser yazıcıyla ean13 basmam gerekiyor. Yukarıdaki ean13 kodlarını denedim tuhaf tuhaf karakterler basıyor. Tarık'ın gönderdiği fontu da denedim Aefe'nin kodlarını da denedim. Bana font + kod ne lazımza birşeyler gerekiyor!!!
fox4um » Raporlar ve Etiketler » Barkod Problemi