Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

ASCII u RTF u clipper-u

[es] :: Baze podataka :: ASCII u RTF u clipper-u

[ Pregleda: 5718 | Odgovora: 19 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

[email protected]

Član broj: 84995
Poruke: 24
87.250.102.*



Profil

icon ASCII u RTF u clipper-u15.02.2006. u 22:10 - pre 220 meseci
Zbog USB stampaca htio bih da ASCII tekst prebacim u RTF pa onda sa naredbom WORDPAD mojfajl.rtf /p odstampam. Nasao sam jedan program ali mi on ne prebacue u novi red. Ovako ide:
#DEFINE CRLF chr(13)+chr(10)

* Prevod TXT souboru (sestavy) do RTFformatu
* kompatibilni Fox2x, VFPx

FUNCTION Txt2Rtf //(pcInputFile, pcOutputFile, pcFontName,pnFontSize)

Parameters pcInputFile, pcOutputFile, pcFontName, pnFontSize
//* pcInputFile vstupni textovy soubor
//* pcOutputFile vystupni RTF soubor
//* pcFontName jmeno fontu (nepovinne), default Courier New
//* pnFontSize velikost fontu (nepovinne), default 16 bodu, tj. velikost 8


//private all like x*

IF .not.file(pcInputFile)
RETURN '01 file not found: '+pcInputFile

ENDIF
xnHI=FOPen(pcInputFile, 0)
IF xnHI < 1
RETURN '02 file open failed: '+pcInputFile
ENDIF
FSeek(xnHI, 0, 0) && go top
IF FEof(xnHI)
RETURN '03 file is empty: '+pcInputFile
ENDIF

xnHO=FCreate(pcOutputFile, 0)
IF xnHO < 1
RETURN '11 file create failed: '+pcOutputFile
ENDIF
xcReturn=''

//xcRTFh0="{\rtf1\ansi\ansicpg1250\deff0\deflang1029 {\fonttbl{\f0\fmodern\fprq1\fcharset0"
xcRTFh0="{\rtf1\ansi\HTH\deff0\deflang1029 {\fonttbl{\f0\fmodern\fprq1\fcharset0"

xcRTFfn=iif(empty(pcFontName), 'Courier New', pcFontName)
xcRTFh1=";}}\viewkind4\uc1\pard\lang1033\f0\fs"
xcRTFfs=iif(empty(pnFontSize), '14', Alltrim(str(pnFontSize)) )
xcRTFh2=' '

xcRTFnL='\par'

xcRTFfoot='\lang1029\f1\par}'

xnWrote=FWrite(xnHO, xcRTFh0+xcRTFfn+xcRTFh1+xcRTFfs+xcRTFh2)
IF xnWrote < 1
RETURN '12 file write failed: '+pcOutputFile
ENDIF

//prepis jednotlivych radku, CRLF nahrazeno xcRTFnL
DO WHILE .not.FEof(xnHI)
xcLine=StrTran(FGets(xnHI, 32767), '\', '\\')+xcRTFnL
xnWrote=FWrite(xnHO, xcLine)
IF xnWrote < 1
xcReturn='13 file write failed: '+pcOutputFile
exit
ENDIF
ENDDO
// zapis ukonceni RTF souboru
xnWrote=FWrite(xnHO, xcRTFfoot)
IF xnWrote < 1
xcReturn='14 file write failed: '+pcOutputFile
ENDIF
FClose(xnHO)
FClose(xnHI)
RETURN xcReturn

Gdje je greska?
 
Odgovor na temu

damiru_2
Damir Ulovec
Radim za klikere...
127.0.0.1

Član broj: 55541
Poruke: 819
194.106.187.*

Sajt: Pitajte me, možda ću Va..


+2 Profil

icon Re: ASCII u RTF u clipper-u16.02.2006. u 07:35 - pre 220 meseci
Ima tu malo "šminke"...
====================
//Pokusaj da stavis samo jedan od ova dva pa prekompajliraj program
//#DEFINE CRLF chr(10)
///ili
//#DEFINE CRLF chr(13)
#DEFINE CRLF chr(13)+chr(10)

* Prevod TXT souboru (sestavy) do RTFformatu
* kompatibilni Fox2x, VFPx

FUNCTION Txt2Rtf (pcInputFile, pcOutputFile, pcFontName,pnFontSize)

Parameters pcInputFile, pcOutputFile, pcFontName, pnFontSize
//* pcInputFile vstupni textovy soubor
//* pcOutputFile vystupni RTF soubor
//* pcFontName jmeno fontu (nepovinne), default Courier New
//* pnFontSize velikost fontu (nepovinne), default 16 bodu, tj. velikost 8
//private all like x*

//Ako se radi sa promenljivima iz Command Prompt-a,
//trebalo bi dodati deo koda... Zlu ne trebalo.
IF EMPTY(pcInputFile) .OR. EMPTY(pcOutputFile)
RETU 'Name the input and/or output file.'
ENDIF

//Pa tek onda
IF .NOT. FILE(pcInputFile)
RETU '01 file not found: '+pcInputFile
ENDIF

xnHI=FOPen(pcInputFile, 0)

//Zar ne treba da stoji
//IF xnHI == -1
//jer FOpen vraca error code -1 u slucaju neke greske.
IF xnHI < 1
RETU '02 file open failed: '+pcInputFile
ENDIF

FSeek(xnHI, 0, 0) && go top

//Ovo je verovatno korisnicki definisana funkcija,
//u Clipper-u ne postoji kao takva, bar koliko je meni poznato
//IF FEof(xnHI)
//Postoji EOF(), ali za tabelu podataka (.DBF i slicne)
IF FEof(xnHI)
//Dalje nisam mogao da nastavim, jer debugger ovde prekida program
RETU '03 file is empty: '+pcInputFile
ENDIF

xnHO=FCreate(pcOutputFile, 0)

// IF xnHO == -1
IF xnHO < 1
RETU '11 file create failed: '+pcOutputFile
ENDIF

xcReturn=''

//xcRTFh0="{\rtf1\ansi\ansicpg1250\deff0\deflang1029 {\fonttbl{\f0\fmodern\fprq1\fcharset0"
xcRTFh0="{\rtf1\ansi\HTH\deff0\deflang1029 {\fonttbl{\f0\fmodern\fprq1\fcharset0"
xcRTFfn=iif(empty(pcFontName), 'Courier New', pcFontName)
xcRTFh1=";}}\viewkind4\uc1\pard\lang1033\f0\fs"
xcRTFfs=iif(empty(pnFontSize), '14', Alltrim(str(pnFontSize)) )
xcRTFh2=' '
xcRTFnL='\par'
xcRTFfoot='\lang1029\f1\par}'
xnWrote=FWrite(xnHO, xcRTFh0+xcRTFfn+xcRTFh1+xcRTFfs+xcRTFh2)


//IF xnWrote == -1
IF xnWrote < 1
RETU '12 file write failed: '+pcOutputFile
ENDIF

//prepis jednotlivych radku, CRLF nahrazeno xcRTFnL
DO WHIL .NOT. FEof(xnHI)
xcLine=StrTran(FGets(xnHI, 32767), '\', '\\')+xcRTFnL
xnWrote=FWrite(xnHO, xcLine)

//IF xnWrote == -1
IF xnWrote < 1
xcReturn='13 file write failed: '+pcOutputFile
exit
ENDIF
END

// zapis ukonceni RTF souboru
xnWrote=FWrite(xnHO, xcRTFfoot)

//IF xnWrote == -1
IF xnWrote < 1
xcReturn='14 file write failed: '+pcOutputFile
ENDIF
FClose(xnHO)
FClose(xnHI)
RETU xcReturn
====================

[Ovu poruku je menjao damiru_2 dana 16.02.2006. u 08:36 GMT+1]
- Je s' ti normalan? Ko bre da se skida go?
- Ja ću da se skinem do pojasa...
 
Odgovor na temu

dragancesu
subotica

Član broj: 38340
Poruke: 2189
*.192.EUnet.yu.



+73 Profil

icon Re: ASCII u RTF u clipper-u16.02.2006. u 15:49 - pre 220 meseci
RTF nije bas jednostavan format, pretpostavljam da si samo nasao kod i probao. Opis tog format ces naci ovde http://www.wotsit.org/

Pomozite Micro$oftu u borbi protiv piraterije, poklonite prijatelju Linux
 
Odgovor na temu

[email protected]

Član broj: 84995
Poruke: 24
87.250.102.*



Profil

icon Re: ASCII u RTF u clipper-u16.02.2006. u 18:02 - pre 220 meseci
Program radi, ali ne prebacuje u novi red, FSeek nisam ni ja nasao ni u clipper-u ni u drugim lib ali mi ne javlja nikakvu gresku. CRLF koliko vidim se ne koristi nigdje u programu, a definisan je? Ono sto se tice da li je file otvoren itd. nije osnovni problem, bez toga moze, samo da mi prebaci u novi red.
 
Odgovor na temu

dragancesu
subotica

Član broj: 38340
Poruke: 2189
*.voban.co.yu.



+73 Profil

icon Re: ASCII u RTF u clipper-u17.02.2006. u 13:35 - pre 220 meseci
Gde ti se u stvari ne vidi novi red? Ono xcRTFnL='\par' ti je oznaka za novi red u rtf dokumentu.
Pomozite Micro$oftu u borbi protiv piraterije, poklonite prijatelju Linux
 
Odgovor na temu

[email protected]

Član broj: 84995
Poruke: 24
87.250.102.*



Profil

icon Re: ASCII u RTF u clipper-u17.02.2006. u 17:21 - pre 220 meseci
RTF dokument ne prelazi u novi red.
 
Odgovor na temu

[email protected]

Član broj: 84995
Poruke: 24
87.250.102.*



Profil

icon Re: ASCII u RTF u clipper-u22.02.2006. u 15:51 - pre 220 meseci
Rjesio sam problem, ako koga zanima poslacu
 
Odgovor na temu

damiru_2
Damir Ulovec
Radim za klikere...
127.0.0.1

Član broj: 55541
Poruke: 819
195.252.85.*

Sajt: Pitajte me, možda ću Va..


+2 Profil

icon Re: ASCII u RTF u clipper-u22.02.2006. u 16:03 - pre 220 meseci
Pa, ako ti nije teško...
Hvala unapred.
- Je s' ti normalan? Ko bre da se skida go?
- Ja ću da se skinem do pojasa...
 
Odgovor na temu

[email protected]

Član broj: 84995
Poruke: 24
87.250.102.*



Profil

icon Re: ASCII u RTF u clipper-u22.02.2006. u 22:28 - pre 220 meseci
#DEFINE CRLF chr(13)+chr(10)

* Prevod TXT souboru (sestavy) do RTFformatu


FUNCTION Txt2Rtf (pcInputFile, pcOutputFile, pcFontName,pnFontSize)

//* pcInputFile vstupni textovy soubor
//* pcOutputFile vystupni RTF soubor
//* pcFontName jmeno fontu (nepovinne), default Courier New
//* pnFontSize velikost fontu (nepovinne), default 20 bodu, tj. velikost 10


IF .not.file(pcInputFile)
RETURN '01 file not found: '+pcInputFile

ENDIF
xnHI=FOPen(pcInputFile, 0)
IF xnHI < 1
RETURN '02 Greska pri otvaranju '+pcInputFile
ENDIF
FSeek(xnHI, 0, 0) && go top
IF FEof(xnHI)
RETURN '03 Datoteka '+pcInputFile+' je prazna'
ENDIF

xnHO=FCreate(pcOutputFile, 0)
IF xnHO < 1
RETURN '11 Greska pri kreiranju: '+pcOutputFile
ENDIF
xcReturn=''

xcRTFh0="{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fmodern\fcharset0"

xcRTFfn=iif(empty(pcFontName), 'Courier New', pcFontName)
xcRTFh1=";}}\viewkind4\uc1\pard\f0\fs"
xcRTFfs=iif(empty(pnFontSize), '20', Alltrim(str(pnFontSize)) )
xcRTFh2=' '

xcRTFnL='\par '

xcRTFfoot='\lang1029\f1\par}'

xnWrote=FWrite(xnHO, xcRTFh0+xcRTFfn+xcRTFh1+xcRTFfs+xcRTFh2)
IF xnWrote < 1
RETURN '12 Greska u upisu: '+pcOutputFile
ENDIF
line:=' '
//prepis jednotlivych radku, CRLF nahrazeno xcRTFnL
do while freadln(xnHI,@line,2048)
line=strTran(line,CRLF,xcrtfnl)
xnWrote=FWrite(xnHO, Line)
enddo
line=strTran(line,CRLF,xcrtfnl)
xnWrote=FWrite(xnHO, Line)
// zapis ukonceni RTF souboru
xnWrote=FWrite(xnHO, xcRTFfoot)
IF xnWrote < 1
xcReturn='14 Greska u upisu: '+pcOutputFile
ENDIF
FClose(xnHO)
FClose(xnHI)
RETURN xcReturn

function freadln(handle,buffer,max_line)
local ch:=' ', line_size:=0, num_read, save_pos
buffer:=' '
num_read=fread(handle,@ch,1)
do while num_read=1 .and. ch!=CRLF .and. line_size<>max_line
buffer+=ch
line_size++
num_read=fread(handle,@ch,1)
enddo
if ch=CRLF
num_read=fread(handle,@ch,1)
endif
return num_read <>0

//Poziva se
// txt2rtf("zd03.prn","nf10.rtf",,18)
// RUN ("wordpad.exe nf10.rtf /p") - za WinXP
// RUN("start /m wordpad.exe nt10.rtf /p) - za Win ME, 98
 
Odgovor na temu

Baluban_S
Stevan Baluban
Beocin

Član broj: 65585
Poruke: 172
*.NS-BCL81.WLAN.panline.net.



+7 Profil

icon Re: ASCII u RTF u clipper-u19.08.2006. u 19:28 - pre 214 meseci
Nije mi jasno zasto komplikujes. Na USB stampacima mozes stampati tako sto se izlaz sa LPT porta preusmeri sa DOSprn programom (ili nekim slicnim). To je super resenje jer tako mozes da stampas i na PDF stampace. Takodje u programu ne moras da menjas NISTA (ili skoro nista). Bitno je da broj redi na stampi sada nije vise 72 vec oko 64. Broj redi se naravno moze promeniti tako sto podesavas parametre Fonta u DOSprn. Uostalom ako ti nesto ne bude jasno slobodno pitaj.
Baluban S.
 
Odgovor na temu

dragancesu
subotica

Član broj: 38340
Poruke: 2189
*.eunet.yu.



+73 Profil

icon Re: ASCII u RTF u clipper-u21.08.2006. u 14:18 - pre 214 meseci
@Baluban_S mozes li opisati kako ti to radis? To sto pises lepo zvuci ali koji prtogram koristis i koje kontrolne sekvence prepoznaje? Kako menjas velicinu fonta i slicna formatiranja?

Pomozite Micro$oftu u borbi protiv piraterije, poklonite prijatelju Linux
 
Odgovor na temu

Baluban_S
Stevan Baluban
Beocin

Član broj: 65585
Poruke: 172
*.NS-BCL81.WLAN.panline.net.



+7 Profil

icon Re: ASCII u RTF u clipper-u21.08.2006. u 23:09 - pre 214 meseci
Sto se tice DOSprn ja ga koristim vec nekoliko godina za stampanje na USB stampace iz DOS programa u ZIM-u. U programu nisam promenio ni jedan red zbog DOSprn jer sam vec ranije imao podesavanje broja redi za svakog korisnika posebno. U DOSprn moras podesiti pre svega Font sa fiksnom sirinom slova (Courier New), CP na prim.852 (podrzava 10-tak), zatim Size, CPI i LPI za velicinu Fonta, razmak medju redovima i izmedju znakova u redu. Od toga zavisi koliko ce stati znakova u 1 red i koliko ce redi biti na A4 papiru. Ja podesavam te parametre na Size 12, CPI 10 i LPI 6. Tako dobijem u Condenz ispisu 130 znakova a u normal 80 znakova i 63 do 64 reda na A4 papiru. To kad podesis normalno ukljucujes Condens, Bold, Normal i slicno kao na bilo kojem Epsonu (LX-300,LQ570...) ili HP Laseru sa PCL (na primer HP 5L,6L,1320...). Takodje mozes papir podesiti u Portrait i Landscape. Emulacija radi za EPSON ESC P2 ili LASER HP PCL pa ti izaberi sta ti odgovara. Program jednom podesis i zaboravis. On dalje sve sto iz DOS-a posaljes na LPT1: preusmerava na bilo koji stampac koji izaberes tj nemora biti USB vec i bilo koji drugi stampac u mrezi koji izaberes. Ukoliko te program zanima mogu ti ga poslati na meil pa ga isprobaj.

Stevan
[email protected]
Baluban S.
 
Odgovor na temu

dragancesu
subotica

Član broj: 38340
Poruke: 2189
*.eunet.yu.



+73 Profil

icon Re: ASCII u RTF u clipper-u22.08.2006. u 10:11 - pre 214 meseci
Mozda bolje da ga negde okacis jer je interesantan i drugima

Da li si probao i sa win stampacima, tj onima koji ne prepoznaju esc i pcl kodove? Konkretno, da li recimo radi u varijanti sa ink jet stampacima?

Hvala na odgovoru
Pomozite Micro$oftu u borbi protiv piraterije, poklonite prijatelju Linux
 
Odgovor na temu

Baluban_S
Stevan Baluban
Beocin

Član broj: 65585
Poruke: 172
*.NS-BCL81.WLAN.panline.net.



+7 Profil

icon Re: ASCII u RTF u clipper-u22.08.2006. u 21:16 - pre 214 meseci
Program DOSprn radi sa svim stampacima bez obzira da li imaju Epson ESC P2 ili HP PCL kodove. Dakle i Laseri i Ink Jet stampaci. Ono sto se salje na LPT1 port se pretvara u SLOKU koju mozes odstampati na bilo kojem stampacu sa USB ili Paralelnim portom i na PDF printeru. Cesto mi se desavalo da iskoristim DOSprn samo zbog toga sto neki stampac nema u sebi 852 CP (ili ja ne znam da ga ukljucim) a ima Paralelni port. Ja ne znam kako da okacim neki fajl direktno na Forum i da li to uopste moze. Mogu onima koji su zainteresovani DOSprn zajedno sa nekim primerom poslati meilom. Inace imate ga na internetu na WWW.DOSprn.com.
Trenutno je aktuelna verzija 1.79. Ja inace koristim verziju 1.74 koja isto dobro radi.
Ako ima pitanja u vezi DOSprn posaljite meil ili privatnu poruku da ne gnjavimo ostale koji mozda nisu za to zainteresovani.
Baluban S.
 
Odgovor na temu

savkic
Igor Savkić

Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: ASCII u RTF u clipper-u23.08.2006. u 09:06 - pre 214 meseci
Pored DOSPrn može biti interesantan i Printing, radi na nešto drugačijem principu od DOSPrna ali nudi više opcija, poput previewa, slanja na mejl, eksporta u MS Office i Open Office... Adresa je http://www.wings.co.yu/download/wingsprinting.zip.
 
Odgovor na temu

Baluban_S
Stevan Baluban
Beocin

Član broj: 65585
Poruke: 172
*.NS-BCL81.WLAN.panline.net.



+7 Profil

icon Re: ASCII u RTF u clipper-u23.08.2006. u 22:48 - pre 214 meseci
Da Printing je dosta dobar, ali trazi komande za upravljanje stampom u obliku:
<F11.50> za 80 znakova u redu
<F07.10> za 143 znakova u redu
<F-9.60> za 96 znakova u redu
Naravno prima i bilo koju drugi velicinu fonta.
To stvarno nije problem ako pises program ispocetka. Ja u programu vec imam oko 700 izvestaja koji su napisani sa duplim komandama svaki izvestaj (ESC P2 i HP PCL) tako da mi je DOSprn bio brze resenje jer nista nisam morao da menjam u programu. Zvao sam ljude koji su napravili Printing i oni su bili zainteresovani i da u svom programu dodaju podrsku i za Epson i HP komande. Da li su to uradili ne znam.




Baluban S.
 
Odgovor na temu

petarpetarpan
Petar Pan
Konjic

Član broj: 111661
Poruke: 1
*.adsl.net.t-com.hr.



Profil

icon Re: ASCII u RTF u clipper-u14.09.2006. u 13:45 - pre 213 meseci
Ovaj kod ima smisla. Isprobao sam i sve radi. Ono sto je potreba kod ispisa u RTF jeste da se definise margine i orijentacija ispisa (portrait/landscape).
To nisam uspio, mozes li mi pomoci. (Probao sam na onaj pocetni string dodati '/landscape' ali ne pali).

Unaprijed zahvaljujem, Pero.
 
Odgovor na temu

dragancesu
subotica

Član broj: 38340
Poruke: 2189
*.eunet.yu.



+73 Profil

icon Re: ASCII u RTF u clipper-u14.09.2006. u 22:59 - pre 213 meseci
Opis RTF i jos mnogih formata ces naci na

http://www.wotsit.org/search.asp?page=3&s=text
Pomozite Micro$oftu u borbi protiv piraterije, poklonite prijatelju Linux
 
Odgovor na temu

leobar021
Split

Član broj: 16738
Poruke: 25
*.dsl.iskon.hr.



Profil

icon Re: ASCII u RTF u clipper-u13.03.2008. u 11:48 - pre 195 meseci
vezano za DOSprn, kupio sam program ali i dalje imam problema sa slovima čćšžđ...
Postavke su sve kako treba biti (852, arial fotn itd) i pravilno mi ga prikazuje u preview prozou
ESC kod sam postavio za printer koji koristim a to je HP...

U čemu griješim
 
Odgovor na temu

Baluban_S
Stevan Baluban
Beocin

Član broj: 65585
Poruke: 172
..LAN-Lafarge.BCN.panline.net.



+7 Profil

icon Re: ASCII u RTF u clipper-u13.03.2008. u 17:55 - pre 195 meseci
Koristi Font CourierNew ili Lucida Console jer oni u standardnom WIN imaju fiksnu sirinu slova sto je veoma birno za programe koji su napravljeni da iz DOS-a stampaju na Epson ili HP Lasere. U DOSprn podesi CP 852. Ako je tekst koji saljes na ispis u nekom drugom kodnom rasporedu na primer YUSCII moras ga u letu konvertovati u CP 852. To mozes uraditi sa UYU ili nekim drugim slicnim programom stim da tekst za stampanje mora biti u fajlu a UYU ga ocas konvertuje u 852 pa ga zatim posaljes na stampu sa COPY stampa.txt LPT1: direktno iz programa. Nije uopste bitno koji je printer. Na svakom ce YU slova raditi jer stampac dobija stampu u grafickom modu. Mozes stampati i na neki PDF program na primer PDFRedirect ili PrimoPDF sve sa YU slovima, a preview gledati u Acrobat-u ili Foxit Reader-u koji je brzi. Ako imas jos koje pitanje za DOSprn pitaj. Ja ga koristim odavno i savrseno radi.
Baluban S.
 
Odgovor na temu

[es] :: Baze podataka :: ASCII u RTF u clipper-u

[ Pregleda: 5718 | Odgovora: 19 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.