From 4de46bcacbb5937f3839514972744698bbe7903a Mon Sep 17 00:00:00 2001 From: Thijs Simons Date: Thu, 3 Aug 2023 15:54:43 +0200 Subject: [PATCH 1/7] fixed issue where item descriptions would overlap. added horizontal lines in the item table --- examples/example.pdf | Bin 4833 -> 4900 bytes examples/index.js | 4 ++-- lib/index.js | 15 ++++++--------- 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/examples/example.pdf b/examples/example.pdf index 28461b9311dcddae691121e20843dda324400092..3ccaeced90c33a4b05385dfeaae6f43dbfd0d628 100644 GIT binary patch delta 1535 zcmaivYd8}M9L6KUWK2T0S?1QZVKai)cIL?g&}6Yu;s2<84!zImf(u!#7b}|IT#bkmD@A zHTes%>jehbR&5Dnas|9~E!-L2&rx0cIx~vW#B$Q>skV*R15+)C-G%-)ze>B^Y|XsL z)NaM6z?!}8gmtT`KF1V&v!cB8+bR#n_%|>X4~|k>C6oC{ltin-0L6Dr^g!S4uN>e; z`Iop)Q<3~HlePzo3LEhZC6mul?P+~P(Qd4bUAm7=|685k-PJI)bZytK!lnShe8y_N zK>8{Hi0+ljPLaP9W3H1|B{QQo`|bL)5pASXJ?knsY00Ws<9Vp|qkuf*W?ui1 zcZ~BtmUf)t^gD+1E|k?=mpV+d9;%hu4(d%i`Ru!Vb$-T41MIY7r=`6lL$!p3 zteONmH^d&UzG14@&_M?@H5$@buS)KwihB2Tnrh#woG{);Ni@jQ2TL(y4;yMJXjoBI z7hNE|zQejh@lUjeKUA-;gm^Je!=5q^^=jXXF||wSC>Ez`%E@&#llmgKqkR#4qp=vv z%PtqxtlzmeT*p8(ddf?kOv?#=Mirx$vLma}3ER^2ksLP9isy!NdQN^k9#Ku;WNCV^ zM3D-_$0&-@uJ=85#HA{JL&UMI0Z)5NpCC4yb=3PD)QxSt@G1vJb%;j?L@FCeT=d%> zl2F1cR*0;-2WGioum|t(xuT{&T!+XE=6#4qx3s+r?rm#_G3<6SWe*w17QuW(?tV83=0n3A-#x2byP0Qgo-SHJx2D}LJtBRi_9=ax*syqFv)S04lL_1a|lp6}ifOU948 zMssmn(@ur&#i#Abww^$n-@*nxr>`Z~R-oyXoWX>m22)fZEi9f;yIYsL#Jh6tJQ*P5 zb;DLE3F#|(bMGae*qaHg4pQgNpK=)|9;TQqSw0oClp2$?G~*`S&6wi;SL$)k3P!Nv zzW9lYRm1IJ5fkl3EouCU9Qq<-fCOAFzS(FTcwBxajZTqbM1w!j^JU!>&EOVrGlUrm zVTP>RmPIOBVbLfE{GWqFLjeB@I1-LT{+A)JaI-zk!U9Q;0R0e(wb)}}EZ}<>+G6ip zG#tGrheGb{qRi* delta 1498 zcmaiudpOez7{|{%<7hj%C53TR?l$eWyGv8F5#^G*F~(+Yv&?N3hDM@O3ytJbE+Lo7 zrKntUd5WAaa!Ju-a*|tWNz{2d=b!UD`{TTSeV@_&eKHbnPiSw0aHc9b}2UIo0ryTUMV+vnBGVb?KqLw~5-1jJa z(f&jNdUaC3Nnif!Ai$RXj(q`v8|Y=NbLw z!SdtRasfvrxPg5;Pe9IA67+;^T+z&fZ~dL##np-k)k$Ccr{AAsjiJiozwqWxO$bqO zI4Y`d7b(g}-|?!2NeaS0yL(v1SRv)?gvv}N0-7Euwr#PnP(}2ThSuI}f_CV_Hiha3 z$%Kg+wGA#fIQQuu=W|L%NK*KLo~M= zY0vZ!*nG5DwQq*I_}32cyp8g_#CGp=FAmvdC;QdJ_Uv39Xg7&44fJc_FIc_t0gffg zx;gfkB$!Fk3ZvqDa?M8rE62u2GBsR-of>e&x(mYb`FQwsT||HB3omD(`+myqt~=}* zo2kFHP<)2<(5bholcMOF$3@Aut(-X{c`a}gRo^g4xvM7r&M#xUb}woO_*rgv!^cC@ z(@a;HEppx?1*R8-@db3B&5P})4i{Bt$riT?YO9pBD?-lCHN%vGoRSl&`fIx>y|o^L z>0A3<(=|vS43#l;4|KfKaXV|hpz!?xO5L>470J!#V(7u67DBZjszYK-nxx3MrtBK$ zaYps(eGf#wnM9TMsoxUkK?~EKc!h&a#gp%c-Fjy4B#XFup}HE8cSZ|?sGo}{MkvA; zCk=k!ld#`vDe}FE3jEIrTyvA+aDPG<$IE+)wqTNP082U7*Blx!nsU=2gA3IIS4GHy zL<#cNzkqKzR^5|95y7H`xBWg^jiwgRwSu*gPIMndH7aY`&Trv14aRf!UuEXjvEvwPrhWlRNc@!X>2RA*ZS8IH)7N_@V0@#u#(26 zj=SA(-m1R4r@2#bw8{+EugLQ9;gVB`fr{l+T}*E~izlg=S6v#PHTcRZL34L$syR%$ zmxd%wFVB!aL!ZQ^uJh|ZRO;-_@jnnjy}e@~u!20A*RbgWmBf&leX~@)+vyB4+)k^^ z)jmr*u2yp|{G?NJ)(c{!)l%T_pZkwFr?#o^+S!`v3tbR$j1gKCt(K_K^Ep&-W6CY4 zd>l4^UA~O9R31d|?Fq~2B+298Emf--ti|oDr%X!z>eXwP>V=YgS8@5!A?7tdUc~JA zCAX6%#NznCy(Fere5#i9rd1|7`^ n#?kRKOb}7W@_!XS2$2Yhj-hd4xEw|>1cSyBAbNTvCo<%3OSy*O diff --git a/examples/index.js b/examples/index.js index 7ae451a..4661942 100644 --- a/examples/index.js +++ b/examples/index.js @@ -84,7 +84,7 @@ let myInvoice = new MicroInvoice({ parts : [ [{ - value : "Nike Air Max" + value : "Nike Air Max Lorem ipsum dolor sit amet, consectetur adipiscing elit Lorem ipsum dolor sit amet, consectetur adipiscing elit Lorem ipsum dolor sit amet, consectetur adipiscing elit" }, { value : 1 }, { @@ -124,7 +124,7 @@ let myInvoice = new MicroInvoice({ }); // Render invoice as PDF -myInvoice.generate("example.pdf").then(() => { +myInvoice.generate("examples/example.pdf").then(() => { console.log("Invoice saved"); }).catch((error) => { console.error(error); diff --git a/lib/index.js b/lib/index.js index 03d5fb8..938534a 100644 --- a/lib/index.js +++ b/lib/index.js @@ -341,10 +341,6 @@ module.exports = class Microinvoice { generateTableRow(type, columns) { let _fontWeight = "normal", _colorCode = "secondary"; - this.storage.cursor.y = this.document.y; - - this.storage.cursor.y += 17; - if (type === "header") { _fontWeight = "bold"; _colorCode = "primary"; @@ -397,12 +393,10 @@ module.exports = class Microinvoice { } }); - // Set y to the max y position this.setCursor("y", _maxY); - if (type === "header") { - this.generateLine(); - } + this.generateLine(); + } /** @@ -412,7 +406,7 @@ module.exports = class Microinvoice { * @return void */ generateLine() { - this.storage.cursor.y += this.options.style.text.regularSize + 2; + // this.storage.cursor.y += this.options.style.text.regularSize + 2; this.document .strokeColor("#F0F0F0") @@ -426,6 +420,9 @@ module.exports = class Microinvoice { this.storage.cursor.y ) .stroke(); + + this.setCursor("y", this.storage.cursor.y + 5); + } /** From 20add98021cf52cbac6d2589b677a918daabbaad Mon Sep 17 00:00:00 2001 From: Thijs Simons Date: Thu, 3 Aug 2023 16:06:45 +0200 Subject: [PATCH 2/7] less space between total costs and legal --- lib/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/index.js b/lib/index.js index 938534a..1779ac7 100644 --- a/lib/index.js +++ b/lib/index.js @@ -485,7 +485,7 @@ module.exports = class Microinvoice { * @return void */ generateLegal() { - this.storage.cursor.y += 60; + this.storage.cursor.y += 20; (this.options.data.invoice.legal || []).forEach(legal => { this.setCursor("x", this.options.style.document.marginLeft * 2); From e53c87767300d5c1bd8de5f83ee7490a1d443d15 Mon Sep 17 00:00:00 2001 From: Thijs Simons Date: Thu, 3 Aug 2023 16:09:55 +0200 Subject: [PATCH 3/7] more spacing adjustments --- examples/example.pdf | Bin 4900 -> 4898 bytes lib/index.js | 5 ++--- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/examples/example.pdf b/examples/example.pdf index 3ccaeced90c33a4b05385dfeaae6f43dbfd0d628..e43ec6c7966eac430a066018b180198f8fc541e2 100644 GIT binary patch delta 1490 zcmaisc|6k%0LI_dh?Qznjz)}T5!!5aIg+ci@H}%C&Zj8qC3c0

(W{m%}S7Y-ZnD*IIO&P9#*0)cAC<2$Qh)Ia)Tk)GbmjW=iDg{o) z^d2U-1a_*hhIN{4oqArL;#hx9jeL?GLNWQ!b%WcyXH_yTrd#Y@!3M7y zDE?kLqb(tua4U*af-HCVCj;{8{KgCj%a+(Zi24Zzmt>o3I`$!)uN@r9iz|1Qm4MTJ zj9h!qjF!rY#n>R^eF zEHM%Kls*vwsiA_7EEhd$|}62C!NdC>v&${`R266 zL_~47a*iNI-(X#rFAd>LU_0E{H(0Js)iaNSC}?bD$mpj~eOG#@@k7^c@dm(Xx{q}8 z{9aaw#2L9tS%%}KHL=#gv(FbAzU(?bQ(opy&!1N;28d@gTgN{8yLuz$Qnsrj&60Dw zPpg%r z`C&NH>JbwFX8`0M7t5)LSy5XbW^iq+zpi^^N>|0~c@ybfobuW7Fww_UxaS-WKW6N( zD%}T&!ryz9#$`U4=nQUOe8;v{K)sMetb0;?&jvM^=*KxX&I@#s+E!MGJqP$4?u{>dtc0U8Y~IkYVGTIKmlqMJ*YPKRova*>))-eLdE{1UOHc%ex5onCd#-uq+p<*6DMDhhIAEV2Treg#52cZIIPq-&-$LtG zywkP0f#*}JRv#pk$+IOzyo`z4S6mLa!Yua@smiE2@kWR0!<*^ZtBu*xPZwZg>f%4* ziG_cT6jl8ul^&87EnX50({AMQ^}|IaEp{|s)yc*BcCtcz$w!5X50o>K@1`l-p delta 1489 zcmaiyYd8}M9L8I@PR5W+YLW4lU7jXX7*WZkl%3nhd^qo?|MR}T=l{GPUXF2valI-4fM$RJ2D*Wsmvzyq z{10_AdJ50!tRsrrIKyb#rgzzsc!n21hdMs&F^6kU|4izBf(CWeIe=I^kzid9dra_4 zT(_{%hN>)HPJ8~kW8?YYYd(BuVc_L&dws98=bUEgx8pKkZG`JlJ!)!?(WT!UpN4Ez zg`>|mGZ*)d(b}ccMQPMj$C6N`H?0g}aL*SmXrtZiEQ ztbWqOPNK8x%^>H2SB8K1X`mYz`aWOATSGFYCyo?+SGT`3B1uIV@G@Nh;APJDh+&KA;d)^gXLIvvYk|UZxl8k_)a3_Py-a zn|WsjEG>qURlK?ponVDQ?$qd-s&fO8lfG786NjudZPSPsnQb(@9TzO|ZztyaZ6<^8 z5Dds-gpVSK83-HaI@CjurhA$VgOrP%;@ZA zWwbT?bXeXvdvqtd8eosy309q}SH(KzaO;5X&{3 zqTF2ZKK;0VhOoLqcUtq3ha@1)B5fR>DadbKHrAm`tss6zoW z7tVhlO7e1VkG^^;?uPwol!C3PIG>iusWZy$Q&et zmdmcRSP%~>%w{pD0A@VoJ&+-mCCJ(!;WmgydpTRBV@Rm=zk { let _mainRatio = 0.6, _secondaryRatio = 0.3; @@ -485,7 +484,7 @@ module.exports = class Microinvoice { * @return void */ generateLegal() { - this.storage.cursor.y += 20; + this.storage.cursor.y += 15; (this.options.data.invoice.legal || []).forEach(legal => { this.setCursor("x", this.options.style.document.marginLeft * 2); From 5fe5465a2e901131427e12ec51f9a445dfe03adc Mon Sep 17 00:00:00 2001 From: Thijs Simons Date: Thu, 17 Aug 2023 13:07:19 +0200 Subject: [PATCH 4/7] layout changes --- examples/example.pdf | Bin 4898 -> 4756 bytes examples/index.js | 19 +------------------ lib/index.js | 37 ++++++++++++++++++------------------- 3 files changed, 19 insertions(+), 37 deletions(-) diff --git a/examples/example.pdf b/examples/example.pdf index e43ec6c7966eac430a066018b180198f8fc541e2..f64149783fc8224c39034a12ca28ab6fac069ee9 100644 GIT binary patch delta 1403 zcmZ3aHbr#*RU^&k#Ct; zXNh?>eEDA8HYGMX=A=_@sw{WZ8V%h_3!CC|6TTgL`1R1^Nhfc|ocU3BK}|2m+04%3 zbEQ<=zM1>}8T#%2_u*7eJX^Xqm(S6kN_weX6*U_*cSkg(pA-_>XdZuTe_Q2`dXo*e z`J;VG+FmWtumAGw?ES;~?a2$}%hyYX8_m1A&W^W^^WW;X`|i%}c(?iUHTKO%1>QG( z%-Qz&!);N~nPzQsc6x0J6bU!-o~W_M@Ll=lznK-g_cF|w(tNgv`k$&%+%Tt2>;gaZYmBVZAbVdi#l!Z0{7RGOn##6*k4PwYPF%(zH9f zA};DZ6fhvU8uZQTvC!|FPFw-+U~2 z6*M<{lXccb*2b$rLNdHMiwssB*PPoNq?&0ZcJ^4)mNin>I#?d>o5a7`&p%t~`cqY7 zvB!&k9qrUDe16)z=xL%4pDK$^keWoQ;KAPqiynS@_$X=T<$8__Q?w(0@)dq8zsPVb z$vbk@E*GiyQ&MLAHLcm~lijX2p>%G_#C0DuT)U4fc-dge$2Z}5)mg1Qp=Yv=#cc4a zJ`vz4;?TYNO<3>KLhH~iFD)&v21c)aq{;Di&&9voEd1UrsT*ZryjJtYa+_(Z>J3c$bMvJ0--WyF$=G-)$e&er;e?e}ra33MFFh(b_3YxO zjotgdo_v37{WrVU)(dw$b%=R(`0yGF!3)dHtd_GIa!Y5txyvfpSiVELd$$g&SmOr& z9;pp_R!dgd*k!C=|J9^xkH6E&!gGw=N$0Y6)%`U#_;1XRr?SoI*<%LYtI6x@|30^G zf1RKAcS_>l*rvr!dQpGF{IC8M)q1&Q{mN{s-mOiEHy5&8aP3=pclD3!?*o)vdaZ8l zd3Q1DY3$X6L*_bFXAXazq2BV_tU@kthfev)=8Yw5MTI$Tuy8HjX4E#1HILEM>hxc} zg5ZrC?_ZsFWbe8?ddAgPKW{D)5lxX@-Ltn|R$h1Me6Q-R8*|=g`2XJ1_01*ZRIH`T zmh{VWRwb@Kv&gk)_2vx0&>L5o&*dLh{&ew@EdTBLxCa-1em#-Q^nHqIYrBW=Hd90E z*}r~0tM4qdR zT9jarcb?*(w(L1>XY9A^$g=NzcWm>vg6*c?-@i2lE>%@me>W}wsj6j3 delta 1546 zcmaiuX*|>k7{^yejVa_Y|=XvvdzR&l0KEE79iF&Q5fFMA`(!~YTKfZsHPAF;~4f4DcC=k@%u|CMZRX5=7G zj@lTtnm9U_)7Iy4a+}i$*9kMlF$>p1C%l^Ex3;R4lD1~jzaIUiBUdUvZNc25U21Nr zw|L4=n28{rXdO(L*`A062iO?{alL*eXon-~>$J$h&ECzJB<)vUY|5e#UmEnf*&S~l zgVFd5nk0}IJGkyMb0#%XP}+YccHju!!M{hAI;P%cVb}k{Ce7?qdQ?+EgVLkO8R?(s z)LK_jpMF!Hi=}W*7y`=PKjbYKc#dWCz!tK=E#5xw)tW2bc(e%2Omc1San}pHN>-Um zm0)xA4qwy0MSoHwZ7O<@2gMJ^hTT($oNxeZDEeip-X57}bK%H-h{V z0x8QgQnnq0+h092S`c4pzncfi{62p59WBlzS0KZ9b@q<6wiuu$uU>!@d&zg|OsgaL zlD#VO5D#^nW~;%R=&Cw)be0v8XxUuT%O~$!r8H=U>G&lYq$nEs=%jfli8D;&S~tee z!UGfZt?dg#>-0mWOqxRmg@r^A=_Yp(Hlqp-nwFiMAe=Odf_CoKhd2UfkR1w1S+D%9je@vc^5U4c;IR z7%xggtRS`crY3(eTeJIVo!jfv#?uj{eKPs1SS{@>4JJQ0Z5rL}M7vIPY^|Mt6hK0u ztAi)Nk0Dx)|&a3&Wn zNtP0VlshIr`8s;Q7gP5tA`DX)y~2KZT0W5amT6LdiA4UMCq~EQwI^!t)X731TN24o z=&{f;rqT&e_(`9;;i$?i-AAQ^sQi8`$`pJU2|}_#z3=BMUEvFy&Ou;gb8@JmZ+uom z*6?X7@ol_Jcx5Q(L%O`%A_g~!J+;9ubf^w=A*LlRMYf3H^tL4BD(bNan2kqN%Y2ZpdWjg!ynr)-zTvD8xs{&Y=22a0;l3$zc`S3_V}kt=pU3 zo%y;4Cu-yxzH}>Sq#cYs&xX^%{#QDQRuZ_Z;sH$;MvW>DiHCW(EHgb8+t$CX@fGYM zc={{D)`fvZlh7q`PvSm1rnz^q*-QHAdWQem^qP(Pi50>$UI{&W`qm|fBOMYZ2MDe* z$Oi6qx7>ppS$P{RdHj#(BqkNPzaB^mY(#Q zlPir~dLjvBA4IC&lY)5P3{o@Js>nTi(%Ip{3&v37%|G{kGf~<_w-IuJqR;>aMFddy zs)Tg+9wp+?%BX)zIYJrsV?gQt-T!3(5e4jE1Oke#C~ge`MBI)Y9#7c8aD<(IaVX3V z4-4$P#bS2k1hBXt-u{1w$KmN~;)Y%nEP%pe(L_AP*N=$PCF6)d0Nx)>04PK}&KJ-% iQa1Qs#S>;^1dERGrN+cjDFHAHMi&i3Ak0r$!2SY_45kYJ diff --git a/examples/index.js b/examples/index.js index 4661942..44f36bb 100644 --- a/examples/index.js +++ b/examples/index.js @@ -78,8 +78,6 @@ let myInvoice = new MicroInvoice({ value : "Description" }, { value : "Quantity" - }, { - value : "Subtotal" }], parts : [ @@ -102,22 +100,7 @@ let myInvoice = new MicroInvoice({ }] ], - total : [{ - label : "Total without VAT", - value : "43", - price : true - }, { - label : "VAT Rate", - value : "20%" - }, { - label : "VAT Paid", - value : "8.6", - price : true - }, { - label : "Total paid with VAT", - value : "51.6", - price : true - }] + total : [] } } } diff --git a/lib/index.js b/lib/index.js index a1235f6..164bf0e 100644 --- a/lib/index.js +++ b/lib/index.js @@ -45,7 +45,7 @@ module.exports = class Microinvoice { }, header : { backgroundColor : "#F8F8FA", - height : 150, + height : 120, image : null, textPosition : 330 }, @@ -88,12 +88,12 @@ module.exports = class Microinvoice { }, { value : "Quantity" }, { - value : "Subtotal" + value : "" }], parts : [], total : [{ - label : "Total", - value : 0 + label : "", + value : "" }] }, legal : [] @@ -252,34 +252,33 @@ module.exports = class Microinvoice { this.setCursor("x", this.options.style.header.textPosition); this.setCursor("y", this.options.style.document.marginTop); + this.setText(this.options.data.invoice.name, { fontSize : "heading", fontWeight : "bold", color : this.options.style.header.regularColor }); + const currentY = this.storage.cursor.y + this.options.data.invoice.header.forEach(line => { this.setText(`${line.label}:`, { fontWeight : "bold", color : this.options.style.header.regularColor, - marginTop : _fontMargin + marginTop : _fontMargin, }); + + }); - let _values = []; - - if (Array.isArray(line.value)) { - _values = line.value; - } else { - _values = [line.value]; - } + this.setCursor('y', currentY) + this.setCursor('x', this.storage.cursor.x + 100) - _values.forEach((value) => { - this.setText(value, { - colorCode : "secondary", - color : this.options.style.header.secondaryColor, - marginTop : _fontMargin - }); - }); + this.options.data.invoice.header.forEach(line => { + this.setText(line.value, { + colorCode : "secondary", + color : this.options.style.header.secondaryColor, + marginTop : _fontMargin + }) }); } From 9213db2464bcef703c9c1875ea1a91e3277b6628 Mon Sep 17 00:00:00 2001 From: Thijs Simons Date: Tue, 26 Sep 2023 09:39:49 +0200 Subject: [PATCH 5/7] fix longer PO numbers --- examples/example.pdf | Bin 4756 -> 4805 bytes examples/index.js | 2 +- lib/index.js | 24 +++++++++++++++--------- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/examples/example.pdf b/examples/example.pdf index f64149783fc8224c39034a12ca28ab6fac069ee9..229964759639da34968df173cc60df9343f8a981 100644 GIT binary patch delta 1435 zcmaivdpOez7{?nqvd$S3xtuuk&_#9H{WqPNlgkQ4F2mesb7x^|En?*|w@}F0L_01O zk}d6|l;bv`T+4NuuuyJMDYqWybpG8R=Y9WqpU?Yw-sk=18Mhh>As|IK43P^38MCuS zF=}x`ZcEC|O9-S9s72LAQWAHdxB5*w&ZuU)MzBX2Nb=@`j;&AZk&!v3TOU(vFgd@y zg@+8{hyciz00-ec?P?YAbt5L5F;rOx&-}^s%9BNb@95&phcWIKJ6X8R%Ue*yA58~Ej#+78U9t~T~T!QFjZ^pnn zw?*Rkc*7Sl`Qmk)3TM`RVn7;`u$VM&$muP$Orf~vtaqnUZ)}S3pev!bh%}b613bbo zx>6^s;M8)oaD?y4zJmX~vxadM(L6wm^Vau2g<0BOk}|k>S3-F2JY3+WtI%;T1I;=V zpx&lTXF7G+*sBZgc8Y=(<3|KLM-6HFVzlukN7KE`q1P-|#j+@3yVnx4AnDkU-+7d~ z*7m`w+^cEVG7gFgZd~s^UXg>^lR==23|599)m4<*2>5FDZ}sBA(~~(m-R>?8umt0q zWs8YkYk6b~>IrR8qGUH!T*Ks*3Muz-eLH&d4w2T99<6%zU;2C4X}Z$7tCMWRBe2oF zN2QY6bgI;<=A_wc+rCLmFt)L+2^8&{O-im!CuMS#c4oDyo1`gd&zo!zBQBU0nMgk8 zAO>1R9_&_UKS})ExnEPuTn{I1{q@l7`YVl;pvtO;wo}hjX;T-vZupS7&irOr54{aAb_A^%LfOXv&J`=u`@InSp%J~q0yKTg9vUAl;#CYeLiV*P^BM-=N$r+BN{}Y51w)GG~@4Wo>!VzYaK?t2k{LH98t<-HQ*iA6U^ed5;?G zM;A&wnuPO?3gx*J-D=|I-1!605|4UX@x1Ew^Tb5R8{s>9wV|RvmjtzT8bHlqhXiFx z1zVuGYX^3R20`z+b`129N~37R4qoPFZSPDj@MjRF3;OPrPkMe8$Xa#kH`pwS9h0?T*$rvwn07HU&P31dA6aW zFZIdBwMO=koLEu$!m2dvoshUsd@;*$)qA4GsKMpnN*#aEFM}I#bGW2Ck@MJ1WX+Z| z6~;yktaa$qD=`)Hm%I?`la`S(ooZ$%dt}SRhvqdKwRhA?0=$ zELx7CvGRA(@Z4UghMByKLd!pf0^~hY0F}E2HS?jOzUT5MlaXWqMJ4;A&}bN%LI(bA m1eJn-;SF&At9XO)crcwoj%Ki;0|LP)BoYQTHnw&kfd2sph=dLR delta 1402 zcmX@AIz@E@A0xAYsqth%M%DT}X>)(Tu^I&R|E7HEz&b0Px*cZjfw@j?F z#5^0me6Mbs5*r!rhu=3QN9$6LqwZ}r=KcV~CJ+x+<&`{ttp@0&j6 zZ2SD-wy5Y#v$i=qy*34kgd2HJ)YxPAu6*;~%!=K68D>mrK3l|n%$7yXVwTWpzor7N zkAG7ScHX$u_;`j#&7vckaZ(J`uYbL`^03vvo;f{;d9Zu6YCpqk}UKu>S{lrPOcM4S**Ve5Hn_}78Te&c4+MQhy z7xkVBtiDscg*%=)#5_BEc#VbNh2>^e%h?UNr8C~#Wfg2J-yz+-TZdJwaf5%4 z)CN7PC97=gGS;vEYSOjG-|1xGIY#cJbJ@G<{u&$nH)hCF+2-`@F$3?_WhCGl@;(_$yRsJ~(USO1D?z1*^XWwurC)~3Xp3t29>_N~0T`p5P60ZJ~tR=4)N zyBPH}_G-c*bDgR)hriBHZ~1LjA(yv9r~G8|#*($7!W=hPxE60SYMaNJ$7pJG`Y&HW z@Wzezug*KNcikR6)-9vbrsiF1k zU%#H!cNSVJ+UuP>AL?bBc>a+9_c^ojjVnGcF#F!M?Zy9GgXfXarFEMQ&&l$6HK!yk zN-)Sf?~g)T_8hk}_FHyj*>}D>wt3saFE`#h3;+7~u+H_Tz8{yw#mV)op_~?m=7t6a zhDH{f@3IN#)-*khKVM23N{3l#B$l$aTS*&7L`;KrKWM27+Dx{sj9mAyKw;kla*u} diff --git a/examples/index.js b/examples/index.js index 44f36bb..a2ef05f 100644 --- a/examples/index.js +++ b/examples/index.js @@ -22,7 +22,7 @@ let myInvoice = new MicroInvoice({ value : 1 }, { label : "Status", - value : "Paid" + value : "Paid afsdf asfdasd asf asdf as asdfasdf asd asd fasf" }, { label : "Date", value : "22/10/21" diff --git a/lib/index.js b/lib/index.js index 164bf0e..e727f16 100644 --- a/lib/index.js +++ b/lib/index.js @@ -45,7 +45,7 @@ module.exports = class Microinvoice { }, header : { backgroundColor : "#F8F8FA", - height : 120, + height : 140, image : null, textPosition : 330 }, @@ -246,7 +246,7 @@ module.exports = class Microinvoice { ); } - let _fontMargin = 4; + let _fontMargin = 2; // Write header details this.setCursor("x", this.options.style.header.textPosition); @@ -259,27 +259,33 @@ module.exports = class Microinvoice { color : this.options.style.header.regularColor }); - const currentY = this.storage.cursor.y + let currentY = this.storage.cursor.y + const currentX = this.storage.cursor.x this.options.data.invoice.header.forEach(line => { + currentY = this.storage.cursor.y this.setText(`${line.label}:`, { fontWeight : "bold", color : this.options.style.header.regularColor, marginTop : _fontMargin, + skipDown: true }); - - }); - this.setCursor('y', currentY) - this.setCursor('x', this.storage.cursor.x + 100) + this.setCursor('x', currentX + 100) + this.setCursor('y', currentY) + - this.options.data.invoice.header.forEach(line => { this.setText(line.value, { colorCode : "secondary", color : this.options.style.header.secondaryColor, - marginTop : _fontMargin + marginTop : _fontMargin, + maxWidth : 145, }) + + this.setCursor('x', currentX) + }); + } /** From bafaa02a5349ce3a3a6150cd5449047f8efda97d Mon Sep 17 00:00:00 2001 From: Thijs Simons Date: Tue, 26 Sep 2023 10:15:41 +0200 Subject: [PATCH 6/7] made the header smaller in height --- examples/example.pdf | Bin 4805 -> 4805 bytes lib/index.js | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/example.pdf b/examples/example.pdf index 229964759639da34968df173cc60df9343f8a981..67bb8c66473a5fa575c1882196b1e0b18ed99dc6 100644 GIT binary patch delta 1186 zcmV;T1YP^ZCB-GML;-(+g&&eMLHkgkUB4B5NMs2p(6mSbq`%)Yl)Uy@ve)gdqRlR> z3vE+}hco94X>T0A^j2R5I(=H;92>mP0R>$_K`{n9vFQeZ01 z7jY?5#Mft=vWq2nmMkF=d-J9JtLd9h4ZHEN#YAVQKJ?{}-n@VLyZPnxS?I^z>&BIg z?`l_{8b1gB)pl(6CZhZ7y!F9s@rbv5!u9XcGtlA-U6DH#s7waaHMLNT+6fJIprUT|UI6&^}F{|)aF{>G~V8QW_p^_+o zfmhkB%H?@GRkZ0jIn`NPt>P)5w%_Qw3nHl%%P@ccTH7AWX^O*Vs;sse$~7XomB%$} z!4QZw1^tr8QWd7bV+Xg5`|Fhv&swYusi%ULP{`EKmeatF8WvYnHjkDE&T{9I-;H05 zKI*qj#Ha!5q(iF8<4Jpc ztGj<_o*x%Gn<>m~_~3b|RzbLx~WT^}2UBTefeS;9 zHcz;yZUJZ54zVl`nlGB-40V=*u=Ff?XkW->7~V=y*kV`OGwHj}Cn8w?3F1hWIuZ&t}&*zig;Tw>6mECdpP&Y^0YWQFv?Id$aqY z`DV8O7?{Rpxd-DO0}~u|iDfTAIEDD(8aT_N>EqyvU~X%=4LzNq_xI?dU)E&F+jwp< zj)}x4N}S^ARyltHJQ{`F;85{!Bn5}Fq$ng3oZjJDgzA}&E#sLESHV4)+KqU)*hJ@m z4jqsDdN9lYa6F$rAu-Ttmj6OijvUHF#!qruMT^@g8Og8WYqKDS*tJ+5CQ`nkU z8Uo3!i#2#FWfI2+b9PeANlp^5tIV`$1Af`B3)>-XCVCh?qA!YEKM|2b_{8IJRmfcM zcAA7b*I;)vSQiA=tdo$5k&7v`nwyo*L8+279E(O{+19FQGZF~}$3{M`JH5o#P2!Rn z&RA5xFoJ(2o}})BT=|q?LS#o6w1e6fWW=&|nWL~{u{_ZT(3C4#`GmOmThxHQ*iz=I zMa|4%B$-BkHD52?+NN`4-9)lTJ={vs;x=eFz{kM>a$k>Gg|~`XjhF=sj>i%zi2@kx zD*IJ!c{!ab+Vqk#)y1@0#ZzF~eyi&)h@@65ga3cEwmp^86o+T3thP$!%7|{|dCjI^ zW?ECwujN>(!ZhUAA=}2o^}2}XQ>+Z3r-GJH$W&^}IkBVC;)crR$@0Kh$hnC;yzqQA z=2<@xihB;kc|JVOiYo?v=0rzXH;`slf>_=|TfmFt4k>O?3d{pxpBOb@bvmS~Jl$w- z?{t3`jl54n$#KpB4l%bi-M#%0nE!47Hws%J^QnP`>UQ0D|66nS)l)wSQvW2tQ6U$t zerrzE^%W}VG}hELoZ4E!u<^W9Rf7)Su;@+@*PWp7 zueVDSH?k~Gf(K)%uN4yrI0zI*9m*Jb5x9Q|)R?5){{ik$Y@DuYui{=;Ugw#8ed}l8 z?WuAR6=WS=Mn>R^rSvmt4?@}IeAJ%teiiNUsFWw=5Yfn{KGlT1GK*$0uFj%aRAFB? zIKL8)VzhLU!^Zm=9^GD#JjHO&SyFg$mawdeIHzfS^Pj|c_+8<$B)?QC^}3(#V2eYT zZJyYo&Vz=zSF}Zc+QFQAZPoe79&@TTsdLhqX+=mwaN`-Sc4{&IFxXZ5Npxz@+J@3& zT!$v~@*i_iFq5hh8y6=| A?EnA( diff --git a/lib/index.js b/lib/index.js index e727f16..6e55244 100644 --- a/lib/index.js +++ b/lib/index.js @@ -45,7 +45,7 @@ module.exports = class Microinvoice { }, header : { backgroundColor : "#F8F8FA", - height : 140, + height : 125, image : null, textPosition : 330 }, From 11ee7aa1a2558cfe57aa128da1b00366db5947e1 Mon Sep 17 00:00:00 2001 From: Thijs Simons Date: Tue, 26 Sep 2023 10:27:19 +0200 Subject: [PATCH 7/7] smaller header again --- lib/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/index.js b/lib/index.js index 6e55244..62bd5e6 100644 --- a/lib/index.js +++ b/lib/index.js @@ -45,7 +45,7 @@ module.exports = class Microinvoice { }, header : { backgroundColor : "#F8F8FA", - height : 125, + height : 120, image : null, textPosition : 330 },