invoice_printer 0.0.7 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8fc3304fb8f82abe319e931b27297b2caeb636b7
4
- data.tar.gz: 96e10e8e77440dfde5db0f60e32b1affc48114ff
3
+ metadata.gz: b1a1a8627880008c1a2649c81e9c111293174f7a
4
+ data.tar.gz: f3b9a8bbd8f68c316497ef0d20c41d7bcfe43585
5
5
  SHA512:
6
- metadata.gz: 23fc46d3926aebf880c2980403815098fa06a9883811164ab3760ff06c477d3fdd65ee1db53ab2db7c04a5e2d2c5938a82f7f01ca5813e79332b20dd473cb6ab
7
- data.tar.gz: 24a6748f0bf622127fcfa958f72b51711571cf87311ec0cb3aad978e021e55286aee3557ac9349d2037893cbc14c924c05f49e0d0cadbe9836734ec509c68979
6
+ metadata.gz: 64c5b2e41e6699883cef4771215cc5010519dcbaf81c37a2807347e6a5529aa3fe63c890d4f3f9cf1d9eef29f7a24775bafac185b410a11fdbc52ec96538d2bb
7
+ data.tar.gz: fa516cb4c41cdf47e70de492bac1fee3411db89af8c795af1f706b83792791bbe450068c39295985dc9d15b5fb38d7e8063180e803f900f8048384eb2694b007
data/README.md CHANGED
@@ -8,7 +8,7 @@ designed only to provide an interface to build the PDF version of these document
8
8
  **This project is still in development. 0.0.x versions are all development versions.**
9
9
 
10
10
  <a href="https://github.com/strzibny/invoice_printer/raw/master/examples/complex_invoice.pdf">
11
- <img src="https://github.com/strzibny/invoice_printer/raw/master/examples/complex_invoice.png" width="519" />
11
+ <img src="./examples/complex_invoice.png" width="368" />
12
12
  </a>
13
13
 
14
14
  See more usecases in the `examples/` directory.
@@ -25,6 +25,7 @@ See more usecases in the `examples/` directory.
25
25
  - Configurable labels
26
26
  - Configurable font file
27
27
  - Logotype (as image scaled to fit 50px of height)
28
+ - Background (as image)
28
29
  - Stamp & signature (as image)
29
30
  - Note
30
31
  - Well tested
@@ -165,9 +166,11 @@ InvoicePrinter.labels = {
165
166
  }
166
167
  ```
167
168
 
169
+ ### Font
170
+
168
171
  To support specific characters you might need to specify a TTF font to be used:
169
172
 
170
- ```
173
+ ``` ruby
171
174
  InvoicePrinter.print(
172
175
  ...
173
176
  font: File.expand_path('../Overpass-Regular.ttf', __FILE__)
@@ -176,6 +179,17 @@ InvoicePrinter.print(
176
179
 
177
180
  We recommend you DejaVuSans and Overpass fonts.
178
181
 
182
+ ### Background
183
+
184
+ To include a background image you might need to create the file according to the size and resolution to be used (see: [examples/background.jpg](https://github.com/strzibny/invoice_printer/blob/master/examples/background.jpg)):
185
+
186
+ ``` ruby
187
+ InvoicePrinter.print(
188
+ ...
189
+ background: File.expand_path('../background.jpg', __FILE__)
190
+ )
191
+ ```
192
+
179
193
  ## Copyright
180
194
 
181
195
  Copyright 2015-2016 &copy; [Josef Strzibny](http://strzibny.name/). MIT licensed.
Binary file
@@ -17,10 +17,15 @@ endobj
17
17
  >>
18
18
  endobj
19
19
  4 0 obj
20
- << /Length 9110
20
+ << /Length 9155
21
21
  >>
22
22
  stream
23
23
  q
24
+
25
+ q
26
+ 612.0 0.0 0.0 842.0 0.0 -50.0 cm
27
+ /I1 Do
28
+ Q
24
29
  /DeviceRGB cs
25
30
  0.000 0.000 0.000 scn
26
31
 
@@ -753,12 +758,12 @@ ET
753
758
 
754
759
  q
755
760
  142.0 0.0 0.0 75.0 434.0 188.728 cm
756
- /I1 Do
761
+ /I2 Do
757
762
  Q
758
763
 
759
764
  q
760
765
  49.6479 0.0 0.0 50.0 36.0 71.0 cm
761
- /I2 Do
766
+ /I3 Do
762
767
  Q
763
768
 
764
769
  BT
@@ -777,37 +782,145 @@ endobj
777
782
  /MediaBox [0 0 612.0 792.0]
778
783
  /Contents 4 0 R
779
784
  /Resources << /ProcSet [/PDF /Text /ImageB /ImageC /ImageI]
780
- /Font << /F1.0 6 0 R
781
- /F2.0 7 0 R
785
+ /XObject << /I1 6 0 R
786
+ /I2 9 0 R
787
+ /I3 11 0 R
782
788
  >>
783
- /XObject << /I1 8 0 R
784
- /I2 10 0 R
789
+ /Font << /F1.0 7 0 R
790
+ /F2.0 8 0 R
785
791
  >>
786
792
  >>
787
793
  >>
788
794
  endobj
789
795
  6 0 obj
796
+ << /Type /XObject
797
+ /Subtype /Image
798
+ /ColorSpace /DeviceRGB
799
+ /BitsPerComponent 8
800
+ /Width 612
801
+ /Height 842
802
+ /Length 32511
803
+ /Filter [/DCTDecode]
804
+ >>
805
+ stream
806
+ ����JFIFHH���ExifMM*>F(�iNHH��d�J��8Photoshop 3.08BIM8BIM%��ُ�� ���B~��Jd"��
807
+ ���}!1AQa"q2���#B��R��$3br�
808
+ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz���������������������������������������������������������������������������
809
+ ���w!1AQaq"2�B���� #3R�br�
810
+ $4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������C ��C  ��'�� ?��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(� JZ(��(��(��(��(��(��$&E<+�`U՜H�f1�5��k6�\YO=�z�}G���-�� �`���͸�
811
+ �v�z�>�����c���&�r��h���}�䷴]��8 {�P;��w�
812
+ !��7Zk�'�-��ޭh���HKg�^= ��������A0Q�|䞵�]x{N�P�R�Q,������'*�z��~{���+�k�Q���N6IͿ^����\�/�BO����}?���J~M1���ִ�x�wVD1d+1��5���{~�Z�w6�9�[��+I�x��?y�H<��_
813
+ y�<c쏆����u*i_�O��c�u Vk�#��D�uyq�,1_}�x��bZ��S���wC�����Q_��X��PNT����� ����?Gh�]Yӵ��=&�.��d�X�<n��a�A�5�_�S�g8;��kf��j�0��*�QER[�*�!�Ϳ<����t`P�=)h��
814
+ (��
815
+ (��?����(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��0J(��
816
+ (��
817
+ (��
818
+ (��
819
+ (��
820
+ (���x4�ڝP��G&�rQNL'��)P
821
+ Ĝ׎^��/��׳�����H9��׌�q�Jd -�>���q)��s��^D�7׭!���� ��+1c���6&��������LEKָ(伆A19gb�rG�5�؉B�ng�������k�r�1�G�Q�( ��Z�<C�t�ao����![��@5���G3�{��<
822
+ �#�j�1U������%�+�2.u3yc��R:m�C�ΛS���y-�Lg��9��M�4���3��PI*{�*�>��Iz�\1v�������Z)F���&���*N+Dy=�嶱mn*��.W�PG��$��ֺY� n8���0�{�ϧ?�+g�^��Au g�$`~���Y1��� �~�?�>���Rt�N5����L�.h��j�N�G�ƣ �p2I�aQɤAw���t���X���5՘���ΑA�҃�rky��m�]�����MW�����w�����c�;�t����3p�7z%�����wǴ�� �����~����<����c#i:��e�;���i���i?vU%O�9�b�;x��ˎU�c����Iት{�?xwP�M�t��m��o.H%�0� <��l`�2��q?���#u(;^�j˻�����[�r<��'��1����o�%�y�K��?�~Ns���<?f���jֿ~4l<S$dY�BB��<�c)�%�'�J|���B˒s��D�Y�7¬V
823
+ w[4��_i.��j�6�o� ~__Yѯ?����_��R�4�ޝF{Gs�(��
824
+ (��
825
+ (��
826
+ (��?����(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(�'q�ʹ��+�>'�g��t�ڎ�v�����&2��BF����{x�<va��Q�#5-���%ݷ�KV쒻6���W��F-��_���=�yB��=N$�%��q�������n�֢l�7�H�vH�`����N����w�j߆�1�_�_��� �@��*�n����#%S��?�������W ���i�gj��6�֚M�.���\��Ӿ�{$�8��^>O�׳���k���b���兇�]�k�:��K�4G1DX�
827
+ �!�ɯ���<~WҠ��o�Y�?�]8{�ؕ�0��}1��l
828
+ L
829
+ �y]5ia��������S��+��� u�9|!�G���9������=y��?d��7�o��RF1O�U�������i��W��༊�9%������G�K���G<��w�y|��u��ڟ����RIp�C�۪����!��~_�LT s��I�y�[\y�]2H�!��0��}6ȣߌ�~ŔR1���|8����ۯ�,��BL�����~�� 5�c͕Vq��m��/�[��]u>��u/ˋ��x������$7���𣃶!�B0x�ҹ����r��m^���s_Z�����4��=L��k�7g�U���{s���sš����
830
+ ��A���b$1a�ҿ�3��ե����uN/�{���K��w~f�F�rń���z���^K�z��/f�pX��Jz��=��*� ��;Ԝ(s�T�t�W�̞E��U��ZQC��Y�v�UU!K`���x��_f�R۹�]���]�:�j��LvSz��g��Wۿ�6��h?4X5������a���X����O��+�'#�|C�O
831
+ ���5������¦��"��� o�KY�gk�9T��_��Q,JTu8��_w�Ʈc<�֌#*Pk�]�N^�iEy��>W�s���m��--�ӻ�[�v�)�����1�QEQEQE`�Q@!����UOQX�օ��m�k6��� 9I0��C���B�S8Fqp��{��FN-4�>N�������"����pX���qB��w�C�:G�>\ oi�Z@ĪLͷp�
832
+ �Ԩ`O=G�5����n7.��&<���גj��-.��zY��o��,u RN����^MK���zՄ��b׬��m��\��g��� g��^�swomc%���X���1��q��~� 5�OW�9����r˂��� `z�W�k�E���5\�� g��FS����=�s�[��&ޫK����wջ%���ԣN],���ګ�=��w�?ڍ;�Zt�\E�XHm�_��G+��� ��=��o��u�ں7�U�n���R�4�7�j�����8��@u���h|��+����� ��Z𝰙�a)�� ��¾c־|s�|l?k����<e��mJ�+���
833
+ S����u4z4�i�9��q���0�̴��Q*�d*J��^��'�-�O���<�0����A�2�ד]��?�s ���O ��,�����}ܚ�(��(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��)4��uV�KrF5���V��_�c�>[%������ʵ���C+?Ձ���~+��/�uo^�0�vwL���P�3�2F=����׵h'���˄�ּE����ؾl�8E�a�ҿ%�O5~���ެ���N
834
+ pF?_N�f خX�8�x�k�I�[�Y� �9�⺄��_)�( 1���ڿ5�^g�s�jl|��-�f�sێ��6�5�����
835
+ �:���f+;rx.��`�O�:�jV��[P�l�rN’9�ې;W�?����=/��.�U�������V1�s��^�+LU�ͱ�*¾Nd�9������Ng{A>�٤�|vaOC���]��-��u=/�}�1��� >���7�H�Z��5�ܿ�$=��*��U@��ꪼ(�M�c5%I�} � ZpJ)y/��{��?*�b*W�*�]�'v��QE�bQEQEQEQETR�1����e�x� QE�U��▊f�(W�ߴ���������l��������H$�����ɟB0��%V�\���qf9v��MN�՜^�[=��jta�Up�cZ��d�k����n��|H�'��Vگ��������N�#���f,����W�x����Ci��\�\���2tڬ29�Pq�½��
836
+ ��J�m��_��������&� l�̀+���tr�Ё�h� ��I�����a��26mD�$���=�����J�6;�&�!(�-�]'��������3��6�6��*��U�KF����q�!��kG���� ����W
837
+
838
+ �����Il4O�-�ԩ4-�� `�Pm=@<�:ֶ��
839
+ �!xS����_�.�摯��g0�8n:���"������Kk�?�G}����qR7y����G_��}���~��o�>+���_q/���
840
+ �~���rV��V���^�^�{�[���>k� �8̺�aN����x=�ߕ�~�^G�EC�wg��d�P(��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(���;��Ԭ4�كŏ|�_�l�G�t�Ȋ��b~zxM'�ö����]������b�����=���.���,ږ�
841
+ ̒��ay���tۚ� D���G�v��=��;u�ҿ��C�*�Rմ�|�Tn�w���3�"��߽I�1:���Su���Ӟ�Zݎy쮂�G��<��N��8]bۤ��u ����g������x���޾r���"����?3�kMK��ŏ�^�]ڙ�lg7�A��c��>vڤt��z�a�P�T�G����ou�w� �0R� �r�S��Q�Wڱ�+�
842
+ E>W��� ����㟎��|%�jVZ�|��šf�c�ζ�%���{9$GierfUpUAU%�|k����luKN��RM�J��Ev����}O��ʍJ�,���&��W���j����������xr��}�����|��m�~��e�'���ٷR�E񇉵�+�VZ�3�
843
+ �����M+�V��{�0�y�
844
+ ��P��/ 83�i'i^+��E${T��_��[��^_�0�Y��Y�U�7_�N���f1��3%��^r�Ǟ�~{W�ë��[ட�;O, ��%� �=���u��+�Ox�4�qY}\ b�˟�4�����/nV���x-�b���II�r��]h�g��������,~��
845
+ k����>�V�mE՜�7%$�D<��H��~��?CW�9��|k��W������V��6&_�Y $N�j1(�‰�R���=�[�6����;�C2��b��̓����4ߙ��e�1�pr�E�����KEW�x�HT�3KE|#�#�=u��C�N��Z��[H�k:rm
846
+ �`O�!H#��+�xf-.�_5�!
847
+ ��#,W9��|G�x�T�Ѥ�X��F��Ȍ���z)����q��e����K{%k+>��K�a+��i/���SP��
848
+ ��E�w7��3m�����D*����ഃ�?���6!��=s����z�M��d�:w���^��6���,Σ���7�O�
849
+ (���Y�5,�h�H;�d�)Wd��dT����(�����
850
+ �����~�1���c�|7�l��TZIg�谳K�CE���vbU���q�vs�~~�h�۫����{���?< �
851
+ ���?� "�Q�A��M�<9�T�$W�q�y�a��q�nt6I�=T����%̼ϩ�x���j�h�>fړ���I��T���+�Y�#���j� U_�1K_b|��?��[߂0��%�jt���V��@m�:0<�� �5�N��]꿲/���<��C��fo�k(Q��+����a߷O�����q�S�~�*�m�xKY�fbLV��Q�2��U�;��9�i�??b�隹hf�D�i�$��c� �7a~��_�?H��x$����� � ����,>*�9Ay}�ќ_�_��_��h�)�E��Ce���w��NX�:�yV�&9h��F͜�Q�_����� F:����
852
+ S^�O+�d�F�s
853
+ 1�����J�u�_/�o�vE�FK��vA��8�+�8�����4��Z�wO����m^ܺz����+h���b���=�hZ/���"�G�3�*��h8ɯ�7z�X���߅���Ï~�����~$_�>�l�KY�(#C���{���+����'� �/^�QԵ
854
+ -�Τ$��}4�_�ocS��=�J1Q�M��_C�
855
+ +��w� �K�����|����B���&@tof���)�"�z�r�XU�j�w��i��{5����E��Y��EV�?����(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(���;���ݥ�T�fU=�US�¼�[nv6��$����Gʿ�l���1��H~5�R�����೽U]ʭ1�|�X1����A"�b�S�9�p=����W1^�x��۹����f�d�9�N6�d�̣M��Zv=��1� �u-�� ����>7�&�|�C<D����9����m ����9����M���`��$.{W���z7ċ��wchʌ��(>W\�k���.��.A��=�l���7'�S��q:�-ŵ���K��u��*�P�xl�^F���\�v�l fF����0�8���U� �W�ßY�����6L�ʞ>�"�����Y�<���,H͆S�`}{���+����1�����Ί�0d�Ҿ���}}���)�V���%����[���>o?�V*��8��U�����F��5�=/Ķ_n�������Gc] 9濡(W�Z�jҒ�^��Q���(I�J� EVĆ�EPEPEPFPEPEPEPY�q^5��E*�������������:�z�%ϙ���v��=����2��ak���-�"�Yٔ�O��W�m�p�C�Vm]�v�����I�ʼ��Z&y��o]ncc*�'�*d]��oL�����y�]B4��㵎Xл���9��) �O�]���x�6��zC$ە��u�1�@$r}�:�H<;���\K&����>V��>��ю����9;RJ���կ%����S G�ӊ�x<�>�,���f�x���n����#�|�&�� ��eə~�����
856
+ ��v�C����"4X�B8N@�{��
857
+ 9��g=�+n��qڶ�[qP0 g����9�Y�������`�}�Vi�S�3x���1��x�Q��:~�0v@<��Wy^�!��@��F�qO&"9g+N-ǛK;u߮��?i���Z}Rv�z�Qjs�M :���������׵e��Q�����"��[�l���fTQӒ ���>¶$�V�)1J@(-���;qȯ��aܥ' 4�w����OEt}�↳�}Z+���(�)�������O�2HϽ~��ޛ��j�T�{y��u錑�+�š��(dl4��2�6���}9��_\| ��g���ӵ�1闒���e<}�z�د�<?⇂k���e���m���.���S퓭I{���{QT4��{�U���e��*�AR=����~�)%(��j�0��*�QEQEQEQEQFq@E) P��n��?�!ŠG��h��e&V^���c޼��4���KY���#�
858
+ ���5;��$��L̥Kmٷ �w63^��k^��uy�P� �Dd�ҷD\u�oz��`�J���q��
859
+ s����R�sY湅Z�[K[-���n_����[��
860
+ �>o�‚ `z��
861
+ m%��Ւ�����h��iQ�&����������X�H��0���X�O�鵳�{��W�h������'�"���/؉_��LFӎN��y��mv�L��m2$���#�!� �%H#������_"~���^�����ϊ�up<3����H�m�n��5Ą�HC��+�W ^x�P��)�E>i��T�������Te'���|m,,jck>XEj�m����(�Q$s�K��9����G��:{W�)���
862
+ P�:S~�c��iY���b��N���o��(��9�(�����(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(���tބV�'b���Jǹ+ �q�z��Ք�)��f�$A��
863
+ 1�Kc��#ӥ��r�t���)s>�ɥ��m%m]���������Iۢ^�J�[U��n-��d��~T�T����G?�zN��X��o��gn'>��/�G��,��$j�X ���ӿN+�
864
+ (��30��(����(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��Cڸ�~$�z�u� �k�׭�kr��k�0NT%n��PiM\����pe`q\���.�3{mli!t\�>��Q�\ºB<����*k�ձ�=G־6�=�%NOt�f�s�ⶱ���ɾ&��-㿉� <a;������ڄ�>�� ��,]���`::j��V�����H0�~P�⾾���?�
865
+ I�K��/���2i^0�-��s�h�)�nk�?�������-�[hI���#8*T��d
866
+ 㵟�Q�w��2)RX��A����y=pH?�{8�3�ST��i*����N-=��Z��zt�N*|���y8�I'��܏��%��F������>0����rsk�G�L�7�T��.�+���?jY���2�2�lz-��6qȜ�u�C�[q��zT�6�cg&�e��e@8�2�t����}/J��; �
867
+ ��
868
+ �6���W'���_�9�y�ք3Z��gzt�'uk��Ik���G��^��y��������̧��oA����"�.�Ln�G���z���Zmr(v�1�7�<2�
869
+ �VF��>�z��w#j�-��Z�n#�Gy�>��s��b����*tcʓZy++���tW\��wgV5���p�����:V]��Ƌsd�v����Y�j�w��z�,�����1]6�{k}e���6Ld�}޸�kԄ�梦�����,�ѝ2B}�yY8�����ÊH�X�.'���j�䓜���O<�%���`b?.c��LZӷa�K:����!L�d����V
870
+ '�C]|;���t��>��}ZX�4���a*[�f\FR����+��q�(7g5gv����w��U��Wg����_%pWn�������5�ž#�A��ߴ��
871
+ U���T�O�t�x��M��d����0��G �F=+��S���Ŀ����#��V��z���Z��6ɢ=�IC�pk�����6�m3G�w@�s�{W�s�O|;�d/��m(>���Q�"���l0��:~�F�y �_�����N�*|�N��'w���[������Ҹ3��e�v�o8�}��k�g�2���t�A yUH#��#�z�?�6��a��2l���=:��u=��E����c�7+�B��;�v� �j�T��`'�rco65P�#�#�~I��V�3 � %ng++�Z�-��TϠ��ɶ���_��o��K�7��RI�>�������J��kt�_1d��� ��1�'�=Mu"�zY�-ِ�S.������=��d�G� n���n�~��I�0wdmS�rA�Gg��“��mu���߻�KZ���RR��K�5��v=V�!�"<���q�^����w���^��<K,_,�.��G��;w��߈�ĺ_�#ռ'����ڢ9%,�������r3�ޯ�<b�<�ѼX�c��@em�FX ci���g���s��c8���t�o-��]t��W+u=4�����ԛ�e��m��Q���T�����,�Vkd�$�c���I���!��[)�sv���m'#={W��:��Y,����G8�z��=
872
+ �ĿgE�g�w����IF�ߡJ-J /�F��…l�
873
+ �Aǯ�lj1^]O����A �:���PKf�2� �w��
874
+ +��(��&�t_���m4$�Q_Ns�Q@Q@����(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(���� 9�OBri�W�*8a����}jm��:�7#Ҽ�]��As 89��^�T�uk�
875
+ ��_���3��U;���s���~��Q��S���6��-��M��<��
876
+ |����t���ov� �Y;P��Ҳ�����\�Tnx�����X�*ჿBG���E�\Ee�N������&�E�Ӕ�~��+�m�c��-! 8��r2 �z��֥�]/�>[::���>���'���ʣs
877
+ 3Ƿ'�5B񦳸�k�dx�����-ZQ�mE�m���������^�a i�3V1�ˁ��}�GkG���Y@*���ф��$BF�Yv���G��P��̂_��N�^ $�V�a(�kH�w�]�ަ���s�<S���� ��y�*ɜ�� ��lj������u1�9H���Չ�
878
+ �“�˓�ާ���%�m�6��"�ہ�9=s^s��֯m���ߗ�D�6���ybO�tz��l,�o��Q-���9��O��sY�})sV�u�K䞖魮�w�sOf׺�ே4��?�Λ������Ė� �"��?6v����|��m����(�ך� ��n�W��?�����
879
+ �3�\�a1�O~�MZ��H��v����qS�
880
+ <�B+N���6tx��l�N{�ֺ���(@%J`p�IS��?7�>i\(��� (��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��L
881
+ Z(���z��@�����?5G�3^g,w�2�E{T��c��OY�O�`3��_=�e�O�S���LO'�-�.���Z�d���)Ԥ���z�⿜�)�I���j�������=t��~�$񆓤�����{���Y-���B��v�����*HR}
882
+ ����F���i+^��k�GI{�KK��b�����2���
883
+ ]r�-RHmoB����ܞճ��!�I�P�l�X��1׷5�l���7�
884
+ ��9#�N~�8����T �仒�.����t�b��H��J�y���n��j���PAl��N+�ot�}"?>peb�� �r����mݧ���fV��Bg�l�x�s�Wg���BU+�-�m��}���:0��6�H�l���S1�dۅ�T�~�
885
+ �2?��l�B����'~�gK#�t��UL�-˳�
886
+ ��݌<�Q��B�Kk��3�^&;(�Kʖ��^Q��=KE�լfҵX�Kk��E#x#�
887
+ �M)_�W� ���m����Z�3�"��K�_&�Pf�-#n���d�_�t�,��٬�mā�‘�=k��\�5Z�E�Q|2��_�����Y�}A��̪���N��G��}��k�`~�2���G�έk.��]��vN����;��-��0�s_�&��>x��ݐ�ƥ��7V�(IC�Jm8ی���s_�_��x Śq�|G����C�ĭˍ�@=��_�o�Y����?�T�4�\n| }3�/N�ʱ�Hl�%�F�I�p+����l=W� 7����iғVV�Y�嫷��w�x�(c�n��W��[����t��7⎑���曢A)�$�؞y���m �$1nn㡯�/
888
+ �3� m<�����oi_����K��=������J^B��ځI�u�9�s�W��G�1Z]|D���yAmyPv�L�r�s�q��V�1��j�9fs�VSq�t��Z/#��w�֊�KݞO�j~&�7���X.mi�n�c8@���pI
889
+ }��|7��x��;w����w0S�J�;t�5������h��-� ,Ϸ��9�ϥv����'+�v����P���^OY$�ջ��>s�q�oOѶϞ�φWVC����0O��@<W�h�
890
+ ���z׵���`�m�H�H��d;���E{8>
891
+ (���ih�=h��(��(�����(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��*��� 9���*��EJq����Ӷ�}�����<��~u��pc�8�ӽzs*��e�i�L2�n ��cr9$�A��륉��<��;�hՓ�Q��Vlo� Q�* �q�zL�q� f�&�A�8ǡ�|����s+3�1�ծw��2w��R����@'��p�s��Rr��%�U �޴�2}L����S6��ܖy��� �* $tɬ� xR�1��� ������(5T*�w��6[ۍٜ�S�
892
+ 朩JJR���d5N��I��݉,-x��GM�;*��u0�c�`c��j�_�;�1Y7 ,���t=}�
893
+ �t��ޝz�*5霆RGҡ�I\�q$������.F1����Ty 1.�$ۏZ�&�*�S�|�WCI&v�xȫ��$��!z WMo�I$|��j߶Ҷ�&!�8oL�}I�r���S�.�he�9S��U�[Z+(g�+�b�Z�
894
+ ;���9#�����cǯ]��(
895
+ (��
896
+ ��o�Ҥ��b�u-:}=�x�Ѻ��0�A�Gj�����kr�lrjJ��%� hPh�q-Ѐ��۝�$�=t�4�7������������m'�QE�!EP����(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��0(�4Q@ uV��MƑ�8�Q�٣���)VV�ʌ�vg��d$Z��vcY��jdE�=x��zA������,�j���?S�b�%cɮ4��Y�D8 �۵�[�����q˅��j����c�mQ����84��H�m�8��E���\-C����r>�3���S�&��dv9�ȼ9�@������g8���>A����3��3�&��eT��G嚝QT`
897
+ pt��S�NR1m��QEj ��(��(��(� �)h�t����Tg����
898
+ �C�=�k{%��.eKr���e���+��sx����i_u�O�_ ���i}J���;]m�*b��켧u��?1�9S�ga_�
899
+ Y}\������_Kjմ�����#�6�f'�OH)k��(������(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(��(����
900
+ endstream
901
+ endobj
902
+ 7 0 obj
790
903
  << /Type /Font
791
904
  /Subtype /Type1
792
905
  /BaseFont /Helvetica
793
906
  /Encoding /WinAnsiEncoding
794
907
  >>
795
908
  endobj
796
- 7 0 obj
909
+ 8 0 obj
797
910
  << /Type /Font
798
911
  /Subtype /Type1
799
912
  /BaseFont /Helvetica-Bold
800
913
  /Encoding /WinAnsiEncoding
801
914
  >>
802
915
  endobj
803
- 8 0 obj
916
+ 9 0 obj
804
917
  << /Type /XObject
805
918
  /Subtype /Image
806
919
  /Height 75
807
920
  /Width 142
808
921
  /BitsPerComponent 8
809
922
  /ColorSpace /DeviceRGB
810
- /SMask 9 0 R
923
+ /SMask 10 0 R
811
924
  /Length 5425
812
925
  /Filter [/FlateDecode]
813
926
  /DecodeParms [<< /Predictor 15
@@ -841,7 +954,7 @@ joIvvvP
841
954
  񶢰�I�t�_@����S:���L�t�j8��뒥����)�r����Ո7��o��3���h
842
955
  endstream
843
956
  endobj
844
- 9 0 obj
957
+ 10 0 obj
845
958
  << /Type /XObject
846
959
  /Subtype /Image
847
960
  /Height 75
@@ -866,14 +979,14 @@ x
866
979
  c��G��U�dt`v� 3=`�}LG��AWn���[���O�O?������ۻ�w��A(�>�g�\:l����;�J�a�X_C:��6k���8�����z��WN2�/R���p��
867
980
  endstream
868
981
  endobj
869
- 10 0 obj
982
+ 11 0 obj
870
983
  << /Type /XObject
871
984
  /Subtype /Image
872
985
  /Height 142
873
986
  /Width 141
874
987
  /BitsPerComponent 8
875
988
  /ColorSpace /DeviceRGB
876
- /SMask 11 0 R
989
+ /SMask 12 0 R
877
990
  /Length 9550
878
991
  /Filter [/FlateDecode]
879
992
  /DecodeParms [<< /Predictor 15
@@ -924,7 +1037,7 @@ q
924
1037
  <YU*�%g��lV�{���ąD����q�|&h7{��m&��“�k����p���Mg�(V��d�uF����3�|��a�f0R)�g%H�_��Ch7[u�O��O���j�@����ȕG�<������E��v<A��S,��V���XΘ)&�He|���a��3e����)�
925
1038
  endstream
926
1039
  endobj
927
- 11 0 obj
1040
+ 12 0 obj
928
1041
  << /Type /XObject
929
1042
  /Subtype /Image
930
1043
  /Height 142
@@ -962,24 +1075,25 @@ y
962
1075
  endstream
963
1076
  endobj
964
1077
  xref
965
- 0 12
1078
+ 0 13
966
1079
  0000000000 65535 f
967
1080
  0000000015 00000 n
968
1081
  0000000109 00000 n
969
1082
  0000000158 00000 n
970
1083
  0000000215 00000 n
971
- 0000009377 00000 n
972
- 0000009603 00000 n
973
- 0000009700 00000 n
974
- 0000009802 00000 n
975
- 0000015489 00000 n
976
- 0000016435 00000 n
977
- 0000026250 00000 n
1084
+ 0000009422 00000 n
1085
+ 0000009658 00000 n
1086
+ 0000042340 00000 n
1087
+ 0000042437 00000 n
1088
+ 0000042539 00000 n
1089
+ 0000048227 00000 n
1090
+ 0000049174 00000 n
1091
+ 0000058989 00000 n
978
1092
  trailer
979
- << /Size 12
1093
+ << /Size 13
980
1094
  /Root 2 0 R
981
1095
  /Info 1 0 R
982
1096
  >>
983
1097
  startxref
984
- 30780
1098
+ 63519
985
1099
  %%EOF
Binary file
@@ -63,5 +63,6 @@ InvoicePrinter.print(
63
63
  labels: labels,
64
64
  stamp: 'stamp.png',
65
65
  logo: 'prawn.png',
66
- file_name: 'complex_invoice.pdf'
66
+ file_name: 'complex_invoice.pdf',
67
+ background: 'background.jpg'
67
68
  )
@@ -55,10 +55,10 @@ module InvoicePrinter
55
55
  @@labels = DEFAULT_LABELS.merge(labels)
56
56
  end
57
57
 
58
- def initialize(document: Document.new, labels: {}, font: nil, stamp: nil, logo: nil)
58
+ def initialize(document: Document.new, labels: {}, font: nil, stamp: nil, logo: nil, background: nil)
59
59
  @document = document
60
60
  @labels = PDFDocument.labels.merge(labels)
61
- @pdf = Prawn::Document.new
61
+ @pdf = Prawn::Document.new(background: background)
62
62
  @font = font
63
63
  @stamp = stamp
64
64
  @logo = logo
@@ -1,3 +1,3 @@
1
1
  module InvoicePrinter
2
- VERSION = '0.0.7'
2
+ VERSION = '0.0.8'
3
3
  end
@@ -54,13 +54,14 @@ module InvoicePrinter
54
54
  # font - font file to use
55
55
  # stamp - stamp & signature (image)
56
56
  # logo - logotype (image)
57
- def self.print(document:, file_name:, labels: {}, font: nil, stamp: nil, logo: nil)
57
+ def self.print(document:, file_name:, labels: {}, font: nil, stamp: nil, logo: nil, background: nil)
58
58
  PDFDocument.new(
59
59
  document: document,
60
60
  labels: labels,
61
61
  font: font,
62
62
  stamp: stamp,
63
63
  logo: logo,
64
+ background: background
64
65
  ).print(file_name)
65
66
  end
66
67
 
@@ -71,13 +72,14 @@ module InvoicePrinter
71
72
  # font - font file to use
72
73
  # stamp - stamp & signature (image)
73
74
  # logo - logotype (image)
74
- def self.render(document:, labels: {}, font: nil, stamp: nil, logo: nil)
75
+ def self.render(document:, labels: {}, font: nil, stamp: nil, logo: nil, background: nil)
75
76
  PDFDocument.new(
76
77
  document: document,
77
78
  labels: labels,
78
79
  font: font,
79
80
  stamp: stamp,
80
- logo: logo
81
+ logo: logo,
82
+ background: background
81
83
  ).render
82
84
  end
83
85
  end
@@ -0,0 +1,21 @@
1
+ require 'test_helper'
2
+
3
+ class BackgroundTest < Minitest::Test
4
+ include InvoicePrinterHelpers
5
+
6
+ def setup
7
+ @invoice = InvoicePrinter::Document.new(default_document_params)
8
+ end
9
+
10
+ def test_background_render
11
+ InvoicePrinter.render(document: @invoice, background: './examples/background.jpg')
12
+ InvoicePrinter.render(document: @invoice, background: nil)
13
+ InvoicePrinter.render(document: @invoice)
14
+ end
15
+
16
+ def test_missing_background_raises_an_exception
17
+ assert_raises(ArgumentError) do
18
+ InvoicePrinter.render(document: @invoice, background: 'missing.jpg')
19
+ end
20
+ end
21
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: invoice_printer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josef Strzibny
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-17 00:00:00.000000000 Z
11
+ date: 2016-09-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -92,6 +92,7 @@ files:
92
92
  - LICENSE.txt
93
93
  - README.md
94
94
  - Rakefile
95
+ - examples/background.jpg
95
96
  - examples/complex_invoice.pdf
96
97
  - examples/complex_invoice.png
97
98
  - examples/complex_invoice.rb
@@ -109,6 +110,7 @@ files:
109
110
  - lib/invoice_printer/document/item.rb
110
111
  - lib/invoice_printer/pdf_document.rb
111
112
  - lib/invoice_printer/version.rb
113
+ - test/background_test.rb
112
114
  - test/dates_box_test.rb
113
115
  - test/inputs_test.rb
114
116
  - test/invoice_printer_test.rb
@@ -139,11 +141,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
139
141
  version: '0'
140
142
  requirements: []
141
143
  rubyforge_project:
142
- rubygems_version: 2.5.1
144
+ rubygems_version: 2.4.8
143
145
  signing_key:
144
146
  specification_version: 4
145
147
  summary: Super simple PDF invoicing in pure Ruby
146
148
  test_files:
149
+ - test/background_test.rb
147
150
  - test/dates_box_test.rb
148
151
  - test/inputs_test.rb
149
152
  - test/invoice_printer_test.rb