Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

PDF417 gotov kod

135 views
Skip to first unread message

Oggy

unread,
Jul 20, 2020, 9:10:01 AM7/20/20
to
Ak' nekome treba kod za kreiranje PF414 (2d) barkode-a...
API prema c++ dll-u, sa gotovim primjerom...
Provjereno na netbankingu Erste banke, radi bez problema.

Oggy

unread,
Jul 21, 2020, 7:01:26 AM7/21/20
to
Evo uputstva

1. Kopirati datoteke iz ove arhive u pripadajuće foldere u Clarion
instalaciji,
npr. iz bin u C:\Clarion11\bin; iz Lib u C:\Clarion11\Lib; iz Libsrc u
C:\Clarion11\Libsrc\win....
2. U svojoj aplikaciji, u Global Embed, u After Global INCLUDEs, dodati kod:
Include('zint_CLASS.inc'),once
3. Napraviti svoju proceduru sa kodom koji kreira PDF417, paziti na obavezni
dio, to mora biti OBAVEZNO, a i piše ti u primjeru.
! Ovo je moj primjer:
! ---------------PRIMJER KOJI U BITI
RADI--------------------------------------
ObradaPDF417 PROCEDURE(string pPodaci, *cstring pNazivBmpa)
! -----------------------------------------
! Ovo je obavezno, NE DIRATI
! -----------------------------------------
zint &zintClass
stxt string(2048)
ref_stxt &string
ctxt cstring(2048)
ref_ctxt &cstring
input_filename string(256)
output_filename string(256)
how_to_clip long
rotate_angle long
AU long
pixel_format long
picStr &string
is_UTF16 long(0)
! -----------------------------------------------------------------------------------
! Deklaracija lokalne grupe sa svim plaćanjima, u ovu grupu učitavaju se
podaci iz
! 1. parametra
! -----------------------------------------------------------------------------------
PlacanjeHUB group,PRE(PLA)
VALUTA STRING(3)
IZNOS STRING(30)
PLATITELJ STRING(30)
ULICA_I_BROJ STRING(27)
PTT_MJESTO STRING(27)
NAZIV_PRIMATELJA STRING(25)
ULICA_I_BROJ_PRIMATELJA STRING(25)
PTT_MJESTO_PRIMATELJA STRING(27)
IBAN STRING(21)
MODEL STRING(4)
POZIV STRING(34)
SIFRA_NAMJENE STRING(4)
OPIS_PLACANJA STRING(35)
END
Code
PlacanjeHUB = pPodaci ! lokalna grupa prima
parametarski podatke
zint &= new zintClass ! deklariramo, new-amo, novu klasu
err# = zint.ZB_Create() ! Najvažniji dio, OBAVEZNO... kreiramo
objekt za sve daljnje obrade
If err# then stop(err#) end ! tu bu vratio neku grešku ak' je
bude, hehehe....
zint.ZS.fgcolour = '000000' ! boja foreground, naravno
zint.ZS.bgcolour = 'FFFFFF' ! boja background, naravno
zint.ZS.whitespace_width = 2 ! širina onog bijelog... "celo selo
šmrće belo"
zint.zs.border_width = 2 ! debljina obruba, ustanovljeno je da
je 2 nabolje. Fata je Fata,....
zint.ZS.scale = 0 ! scale ostaviti kak' je...
zint.ZS.symbology = BARCODE_PDF417 ! equate je 55, ima i
drugih... hehehe

! ---------------------------------------------------------------------
! Ovdje ide konkateniranje grupe u string, prije samog kreiranja...
! Možda bi išlo i drito iz grupe, al' baš me briga...
! ---------------------------------------------------------------------
stxt = CLIP('HRVHUB30')&'<13,10>'&|
CLIP(PLA:VALUTA)&'<13,10>'&|
CLIP(PLA:IZNOS)&'<13,10>'&|
CLIP(PLA:PLATITELJ)&'<13,10>'&|
CLIP(PLA:ULICA_I_BROJ)&'<13,10>'&|
CLIP(PLA:PTT_MJESTO)&'<13,10>'&|
CLIP(PLA:NAZIV_PRIMATELJA)&'<13,10>'&|
CLIP(PLA:ULICA_I_BROJ_PRIMATELJA)&'<13,10>'&|
CLIP(PLA:PTT_MJESTO_PRIMATELJA)&'<13,10>'&|
CLIP(PLA:IBAN)&'<13,10>'&|
CLIP(PLA:MODEL)&'<13,10>'&|
CLIP(PLA:POZIV)&'<13,10>'&|
CLIP(PLA:SIFRA_NAMJENE)&'<13,10>'&|
! -----------------------------------------------------------------------------
! Ovdje je naziv file-a koji se pass-by-address vraća u izvorišnu
proceduru,
! gdje će se negdje nešto s njim dogoditi, a što, jebe mi se živo.
! Ako se postavi prefiks jpg, onda će biti jpeg file...
! -----------------------------------------------------------------------------
output_filename = 'ispis_2D'&Random(1,999999)&'.bmp'

how_to_clip = -11 ! klipa i još poravnava lijevo, ovak' je
najbolje
rotate_angle = 0 ! ko što narod kaže...
AU = 1 ! naša slova, bolje ne dirati
! -----------------------------------------------------------------------
! Ukoliko se izvozi u bmp, onda pixel format, odnosno depth mora biti
32
! -----------------------------------------------------------------------
pixel_format = 32
picStr &= zint.ZB_Str_Image(stxt, how_to_clip, rotate_angle, AU,
clip(output_filename), pixel_format)

zint.ZS.option_1 = -1 ! provjeriti, mislim da je najbolje ak je -1
zint.ZS.option_2 = 0 ! provjeriti, mislim da je najbojle ak je 0
zint.ZS.option_3 = 0 ! provjeriti, mislim da je nabolje null,
odnosno uopće ne korisiti
Dispose(picStr) ! Pošto je new-ano, obavezno dispose, probao
sam "zagušiti" mem., puca na nekih 10-tak ispisa, ako se ne dispose-a
zint.ZB_Clear() ! "Počistimo" objekt
pNazivBmpa = output_filename ! vraćamo, pass-by-address naziv
datoteke, KRAJ, gotovo, ne treba tu ni return čak...

!----------------------- KRAJ MOG PRIMJERA, KOJI
RADI -------------------------

Princip: ja šaljem grupu parametara koji su OBAVEZNI u HUB3, a grupa se može
poslati kao string parametar.
Moja procedura prima dva parametra, 1. parametar je ta navedena grupa sa
svim potrebnim podacima, a drugi parametar je
*cstring parametar, što znači da je pass-by-address, a ta vraća naziv
datoteke (bmp, jpg, gif...) u izvorišnu proceduru.
3. Slijedi poziv ove procedure koja kreira, ja to pozivam ovako:
Loc:NazivSlike = '' ! cstring varijabla koja će primiti naziv kreirane
datoteke...

! sad ide punjenje te grupe za string, svi ovi elementi grupe su OBAVEZNI

pla:VALUTA = 'HRK'
pla:IZNOS = 150000
pla:PLATITELJ = 'NIVES CELZIJUS'
pla:ULICA_I_BROJ = 'Adresa bb'
pla:PTT_MJESTO = '10000 ZAGREB'
pla:NAZIV_PRIMATELJA = 'OZREN KREŠTAN'
pla:ULICA_I_BROJ_PRIMATELJA = 'Adresa 11'
pla:PTT_MJESTO_PRIMATELJA = '43000 Bjelovar'
pla:IBAN = 'HR0324022063150114135'
! IBAN primatelj
pla:MODEL = 'HR00' ! ili što već
pla:POZIV = 'h1r23a1423fdsa' ! ili
što već
pla:SIFRA_NAMJENE = 'SUPP' ! ili što već...
pla:OPIS_PLACANJA = 'Mali doprinos...hehehe'
ObradaPDF417(LokalnaGrupaHUB, Loc:NazivSlike)
... u ovom trenu imaš u folderu odakle se sve odvija, datoteku sa nazivom:
ispis_2D123123123.bmp ili nešto slično.
Tu sliku staviš na report...

4. U svoju app moraš dodati u solution i zint.lib, koji si već prije kopirao
u C:\Clarion11\lib folder.
I to je to...
Ak nekome trebaju lib i dll...

John

unread,
Jul 22, 2020, 12:49:20 AM7/22/20
to
Pošalji ovdje lib i dll, hvala.

Oggy explained on 21.07.2020 :

Joško Trlaja

unread,
Sep 28, 2020, 3:17:56 PM9/28/20
to
Ako možete poslati na mail bio bih zahvalan
0 new messages