|
| 1 | +# ਟਿਊਟੋਰੀਅਲ # |
| 2 | + |
| 3 | +ਮੈਥਡਾਂ ਦੀ ਪੂਰੀ ਡਾਕੂਮੈਂਟੇਸ਼ਨ: [`fpdf.FPDF` API ਡੌਕ](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF) |
| 4 | + |
| 5 | +## ਟਿਊਟੋ 1 - ਸਭ ਤੋਂ ਸਧਾਰਨ ਉਦਾਹਰਨ ## |
| 6 | + |
| 7 | +ਆਓ ਕਲਾਸਿਕ ਉਦਾਹਰਨ ਨਾਲ ਸ਼ੁਰੂ ਕਰੀਏ: |
| 8 | + |
| 9 | +```python |
| 10 | +{% include "../tutorial/tuto1.py" %} |
| 11 | +``` |
| 12 | + |
| 13 | +[ਨਤੀਜਾ PDF](https://github.com/py-pdf/fpdf2/raw/master/tutorial/tuto1.pdf) |
| 14 | + |
| 15 | +ਲਾਇਬ੍ਰੇਰੀ ਫਾਈਲ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਤੋਂ ਬਾਅਦ, ਅਸੀਂ ਇੱਕ `FPDF` ਆਬਜੈਕਟ ਬਣਾਉਂਦੇ ਹਾਂ। |
| 16 | +[FPDF](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF) ਕੰਸਟਰਕਟਰ ਇੱਥੇ ਡਿਫਾਲਟ ਵੈਲਿਊਜ਼ ਨਾਲ ਵਰਤਿਆ ਗਿਆ ਹੈ: |
| 17 | +ਪੰਨੇ A4 ਪੋਰਟਰੇਟ ਵਿੱਚ ਹਨ ਅਤੇ ਮਾਪ ਦੀ ਇਕਾਈ ਮਿਲੀਮੀਟਰ ਹੈ। |
| 18 | +ਇਸ ਨੂੰ ਸਪੱਸ਼ਟ ਤੌਰ 'ਤੇ ਇਸ ਤਰ੍ਹਾਂ ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਸੀ: |
| 19 | + |
| 20 | +```python |
| 21 | +pdf = FPDF(orientation="P", unit="mm", format="A4") |
| 22 | +``` |
| 23 | + |
| 24 | +PDF ਨੂੰ ਲੈਂਡਸਕੇਪ ਮੋਡ (`L`) ਵਿੱਚ ਸੈੱਟ ਕਰਨਾ ਜਾਂ ਹੋਰ ਪੰਨਾ ਫਾਰਮੈਟ |
| 25 | +(ਜਿਵੇਂ ਕਿ `Letter` ਅਤੇ `Legal`) ਅਤੇ ਮਾਪ ਇਕਾਈਆਂ (`pt`, `cm`, `in`) ਵਰਤਣਾ ਸੰਭਵ ਹੈ। |
| 26 | + |
| 27 | +ਇਸ ਵੇਲੇ ਕੋਈ ਪੰਨਾ ਨਹੀਂ ਹੈ, ਇਸ ਲਈ ਸਾਨੂੰ |
| 28 | +[add_page](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.add_page) ਨਾਲ ਇੱਕ ਜੋੜਨਾ ਪਵੇਗਾ। ਮੂਲ ਬਿੰਦੂ ਉੱਪਰ-ਖੱਬੇ ਕੋਨੇ ਵਿੱਚ ਹੈ ਅਤੇ |
| 29 | +ਮੌਜੂਦਾ ਸਥਿਤੀ ਡਿਫਾਲਟ ਤੌਰ 'ਤੇ ਬਾਰਡਰਾਂ ਤੋਂ 1 ਸੈਂਟੀਮੀਟਰ ਦੂਰ ਰੱਖੀ ਜਾਂਦੀ ਹੈ; ਮਾਰਜਿਨ ਨੂੰ |
| 30 | +[set_margins](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.set_margins) ਨਾਲ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ। |
| 31 | + |
| 32 | +ਟੈਕਸਟ ਪ੍ਰਿੰਟ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ, |
| 33 | +[set_font](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.set_font) ਨਾਲ ਫੌਂਟ ਚੁਣਨਾ ਲਾਜ਼ਮੀ ਹੈ, ਨਹੀਂ ਤਾਂ ਡੌਕੂਮੈਂਟ ਅਵੈਧ ਹੋਵੇਗਾ। |
| 34 | +ਅਸੀਂ Helvetica ਬੋਲਡ 16 ਚੁਣਦੇ ਹਾਂ: |
| 35 | + |
| 36 | +```python |
| 37 | +pdf.set_font('Helvetica', style='B', size=16) |
| 38 | +``` |
| 39 | + |
| 40 | +ਅਸੀਂ `I` ਨਾਲ ਇਟੈਲਿਕ, `U` ਨਾਲ ਅੰਡਰਲਾਈਨ ਜਾਂ ਖਾਲੀ ਸਟ੍ਰਿੰਗ ਨਾਲ ਰੈਗੂਲਰ ਫੌਂਟ ਨਿਰਧਾਰਤ ਕਰ ਸਕਦੇ ਸੀ |
| 41 | +(ਜਾਂ ਕੋਈ ਵੀ ਕੰਬੀਨੇਸ਼ਨ)। ਨੋਟ ਕਰੋ ਕਿ ਫੌਂਟ ਸਾਈਜ਼ ਪੁਆਇੰਟਸ ਵਿੱਚ ਦਿੱਤਾ ਗਿਆ ਹੈ, |
| 42 | +ਮਿਲੀਮੀਟਰ (ਜਾਂ ਹੋਰ ਯੂਜ਼ਰ ਯੂਨਿਟ) ਵਿੱਚ ਨਹੀਂ; ਇਹ ਇੱਕੋ ਇੱਕ ਅਪਵਾਦ ਹੈ। |
| 43 | +ਹੋਰ ਬਿਲਟ-ਇਨ ਫੌਂਟ ਹਨ `Times`, `Courier`, `Symbol` ਅਤੇ `ZapfDingbats`। |
| 44 | + |
| 45 | +ਅਸੀਂ ਹੁਣ [cell](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.cell) ਨਾਲ ਇੱਕ ਸੈੱਲ ਪ੍ਰਿੰਟ ਕਰ ਸਕਦੇ ਹਾਂ। ਸੈੱਲ ਇੱਕ ਆਇਤਾਕਾਰ ਖੇਤਰ ਹੈ, |
| 46 | +ਸੰਭਵ ਤੌਰ 'ਤੇ ਫਰੇਮ ਵਾਲਾ, ਜਿਸ ਵਿੱਚ ਕੁਝ ਟੈਕਸਟ ਹੁੰਦਾ ਹੈ। ਇਹ ਮੌਜੂਦਾ ਸਥਿਤੀ 'ਤੇ ਰੈਂਡਰ ਹੁੰਦਾ ਹੈ। |
| 47 | +ਅਸੀਂ ਇਸ ਦੇ ਅਕਾਰ, ਟੈਕਸਟ (ਕੇਂਦਰਿਤ ਜਾਂ ਅਲਾਈਨ), ਬਾਰਡਰ ਖਿੱਚਣੇ ਹਨ ਜਾਂ ਨਹੀਂ, ਅਤੇ ਮੌਜੂਦਾ ਸਥਿਤੀ |
| 48 | +ਇਸ ਤੋਂ ਬਾਅਦ ਕਿੱਥੇ ਜਾਂਦੀ ਹੈ (ਸੱਜੇ, ਹੇਠਾਂ ਜਾਂ ਅਗਲੀ ਲਾਈਨ ਦੀ ਸ਼ੁਰੂਆਤ 'ਤੇ) ਨਿਰਧਾਰਤ ਕਰਦੇ ਹਾਂ। |
| 49 | +ਫਰੇਮ ਜੋੜਨ ਲਈ, ਅਸੀਂ ਇਹ ਕਰਾਂਗੇ: |
| 50 | + |
| 51 | +```python |
| 52 | +pdf.cell(40, 10, 'Hello World!', 1) |
| 53 | +``` |
| 54 | + |
| 55 | +ਇਸ ਦੇ ਨਾਲ ਕੇਂਦਰਿਤ ਟੈਕਸਟ ਨਾਲ ਨਵਾਂ ਸੈੱਲ ਜੋੜਨ ਅਤੇ ਅਗਲੀ ਲਾਈਨ 'ਤੇ ਜਾਣ ਲਈ, |
| 56 | +ਅਸੀਂ ਇਹ ਕਰਾਂਗੇ: |
| 57 | + |
| 58 | +```python |
| 59 | +pdf.cell(60, 10, 'Powered by FPDF.', new_x="LMARGIN", new_y="NEXT", align='C') |
| 60 | +``` |
| 61 | + |
| 62 | +**ਨੋਟ**: ਲਾਈਨ ਬ੍ਰੇਕ [ln](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.ln) ਨਾਲ ਵੀ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਇਹ |
| 63 | +ਮੈਥਡ ਬ੍ਰੇਕ ਦੀ ਉਚਾਈ ਵੀ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। |
| 64 | + |
| 65 | +ਅਖੀਰ ਵਿੱਚ, ਡੌਕੂਮੈਂਟ ਬੰਦ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਦਿੱਤੇ ਫਾਈਲ ਪਾਥ ਅਧੀਨ |
| 66 | +[output](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.output) ਨਾਲ ਸੇਵ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਬਿਨਾਂ ਕਿਸੇ ਪੈਰਾਮੀਟਰ ਦੇ, `output()` |
| 67 | +PDF `bytearray` ਬਫਰ ਵਾਪਸ ਕਰਦਾ ਹੈ। |
| 68 | + |
| 69 | +## ਟਿਊਟੋ 2 - ਹੈਡਰ, ਫੁੱਟਰ, ਪੇਜ ਬ੍ਰੇਕ ਅਤੇ ਚਿੱਤਰ ## |
| 70 | + |
| 71 | +ਇੱਥੇ ਹੈਡਰ, ਫੁੱਟਰ ਅਤੇ ਲੋਗੋ ਵਾਲੀ ਦੋ ਪੰਨਿਆਂ ਦੀ ਉਦਾਹਰਨ ਹੈ: |
| 72 | + |
| 73 | +```python |
| 74 | +{% include "../tutorial/tuto2.py" %} |
| 75 | +``` |
| 76 | + |
| 77 | +[ਨਤੀਜਾ PDF](https://github.com/py-pdf/fpdf2/raw/master/tutorial/tuto2.pdf) |
| 78 | + |
| 79 | +ਇਹ ਉਦਾਹਰਨ ਪੰਨਾ ਹੈਡਰ ਅਤੇ ਫੁੱਟਰ ਪ੍ਰੋਸੈੱਸ ਕਰਨ ਲਈ [header](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.header) ਅਤੇ |
| 80 | +[footer](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.footer) ਮੈਥਡਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ। ਇਹ |
| 81 | +ਆਟੋਮੈਟਿਕ ਕਾਲ ਹੁੰਦੇ ਹਨ। ਇਹ FPDF ਕਲਾਸ ਵਿੱਚ ਪਹਿਲਾਂ ਤੋਂ ਮੌਜੂਦ ਹਨ ਪਰ ਕੁਝ ਨਹੀਂ ਕਰਦੇ, |
| 82 | +ਇਸ ਲਈ ਸਾਨੂੰ ਕਲਾਸ ਨੂੰ ਐਕਸਟੈਂਡ ਕਰਨਾ ਅਤੇ ਇਨ੍ਹਾਂ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਨਾ ਪਵੇਗਾ। |
| 83 | + |
| 84 | +ਲੋਗੋ [image](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.image) ਮੈਥਡ ਨਾਲ ਇਸਦੇ ਉੱਪਰ-ਖੱਬੇ ਕੋਨੇ ਅਤੇ ਚੌੜਾਈ ਨਿਰਧਾਰਤ ਕਰਕੇ ਪ੍ਰਿੰਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਉਚਾਈ ਚਿੱਤਰ ਦੇ ਅਨੁਪਾਤ ਦੀ ਪਾਲਣਾ ਕਰਨ ਲਈ ਆਟੋਮੈਟਿਕ ਗਿਣੀ ਜਾਂਦੀ ਹੈ। |
| 85 | + |
| 86 | +ਪੰਨਾ ਨੰਬਰ ਪ੍ਰਿੰਟ ਕਰਨ ਲਈ, ਸੈੱਲ ਦੀ ਚੌੜਾਈ ਵਜੋਂ ਇੱਕ ਨੱਲ ਵੈਲਿਊ ਪਾਸ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸਦਾ ਮਤਲਬ ਹੈ |
| 87 | +ਕਿ ਸੈੱਲ ਪੰਨੇ ਦੇ ਸੱਜੇ ਮਾਰਜਿਨ ਤੱਕ ਫੈਲਣਾ ਚਾਹੀਦਾ ਹੈ; ਇਹ ਟੈਕਸਟ ਕੇਂਦਰਿਤ ਕਰਨ ਲਈ ਸੌਖਾ ਹੈ। |
| 88 | +ਮੌਜੂਦਾ ਪੰਨਾ ਨੰਬਰ [page_no](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.page_no) ਮੈਥਡ ਦੁਆਰਾ ਵਾਪਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ; |
| 89 | +ਕੁੱਲ ਪੰਨਿਆਂ ਦੀ ਗਿਣਤੀ ਲਈ, ਵਿਸ਼ੇਸ਼ ਵੈਲਿਊ `{nb}` ਵਰਤੀ ਜਾਂਦੀ ਹੈ |
| 90 | +ਜੋ ਡੌਕੂਮੈਂਟ ਬੰਦ ਹੋਣ 'ਤੇ ਬਦਲੀ ਜਾਵੇਗੀ (ਇਸ ਵਿਸ਼ੇਸ਼ ਵੈਲਿਊ ਨੂੰ |
| 91 | +[alias_nb_pages()](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.alias_nb_pages) ਨਾਲ ਬਦਲਿਆ ਜਾ ਸਕਦਾ ਹੈ)। |
| 92 | +ਨੋਟ ਕਰੋ [set_y](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.set_y) ਮੈਥਡ ਦੀ ਵਰਤੋਂ ਜੋ ਪੰਨੇ ਵਿੱਚ ਉੱਪਰ ਜਾਂ ਹੇਠਾਂ ਤੋਂ ਸ਼ੁਰੂ ਕਰਕੇ ਪੂਰਨ ਸਥਿਤੀ ਸੈੱਟ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ। |
| 93 | + |
| 94 | +ਇੱਥੇ ਇੱਕ ਹੋਰ ਦਿਲਚਸਪ ਵਿਸ਼ੇਸ਼ਤਾ ਵਰਤੀ ਗਈ ਹੈ: ਆਟੋਮੈਟਿਕ ਪੇਜ ਬ੍ਰੇਕਿੰਗ। ਜਿਵੇਂ ਹੀ |
| 95 | +ਕੋਈ ਸੈੱਲ ਪੰਨੇ ਵਿੱਚ ਸੀਮਾ ਪਾਰ ਕਰੇਗਾ (ਡਿਫਾਲਟ ਤੌਰ 'ਤੇ ਹੇਠੋਂ 2 ਸੈਂਟੀਮੀਟਰ), |
| 96 | +ਬ੍ਰੇਕ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਅਤੇ ਫੌਂਟ ਬਹਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਭਾਵੇਂ ਹੈਡਰ ਅਤੇ |
| 97 | +ਫੁੱਟਰ ਆਪਣਾ ਫੌਂਟ (`helvetica`) ਚੁਣਦੇ ਹਨ, ਬਾਡੀ `Times` ਨਾਲ ਜਾਰੀ ਰਹਿੰਦੀ ਹੈ। |
| 98 | +ਆਟੋਮੈਟਿਕ ਬਹਾਲੀ ਦੀ ਇਹ ਵਿਧੀ ਰੰਗਾਂ ਅਤੇ ਲਾਈਨ ਦੀ ਚੌੜਾਈ 'ਤੇ ਵੀ ਲਾਗੂ ਹੁੰਦੀ ਹੈ। |
| 99 | +ਜੋ ਸੀਮਾ ਪੇਜ ਬ੍ਰੇਕ ਟ੍ਰਿਗਰ ਕਰਦੀ ਹੈ ਉਹ |
| 100 | +[set_auto_page_break](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.set_auto_page_break) ਨਾਲ ਸੈੱਟ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। |
| 101 | + |
| 102 | + |
| 103 | +## ਟਿਊਟੋ 3 - ਲਾਈਨ ਬ੍ਰੇਕ ਅਤੇ ਰੰਗ ## |
| 104 | + |
| 105 | +ਆਓ ਇੱਕ ਉਦਾਹਰਨ ਨਾਲ ਜਾਰੀ ਰੱਖੀਏ ਜੋ ਜਸਟੀਫਾਈਡ ਪੈਰਾਗ੍ਰਾਫ ਪ੍ਰਿੰਟ ਕਰਦੀ ਹੈ। ਇਹ |
| 106 | +ਰੰਗਾਂ ਦੀ ਵਰਤੋਂ ਵੀ ਦਰਸਾਉਂਦੀ ਹੈ। |
| 107 | + |
| 108 | +```python |
| 109 | +{% include "../tutorial/tuto3.py" %} |
| 110 | +``` |
| 111 | + |
| 112 | +[ਨਤੀਜਾ PDF](https://github.com/py-pdf/fpdf2/raw/master/tutorial/tuto3.pdf) |
| 113 | + |
| 114 | +[ਜੂਲਸ ਵਰਨ ਟੈਕਸਟ](https://github.com/py-pdf/fpdf2/raw/master/tutorial/20k_c1.txt) |
| 115 | + |
| 116 | +[get_string_width](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.get_string_width) ਮੈਥਡ ਮੌਜੂਦਾ ਫੌਂਟ ਵਿੱਚ ਸਟ੍ਰਿੰਗ ਦੀ ਲੰਬਾਈ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ, ਜੋ ਇੱਥੇ ਸਿਰਲੇਖ ਦੇ ਆਲੇ-ਦੁਆਲੇ ਫਰੇਮ ਦੀ ਸਥਿਤੀ ਅਤੇ ਚੌੜਾਈ ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਫਿਰ ਰੰਗ ਸੈੱਟ ਕੀਤੇ ਜਾਂਦੇ ਹਨ |
| 117 | +([set_draw_color](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.set_draw_color), |
| 118 | +[set_fill_color](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.set_fill_color) ਅਤੇ |
| 119 | +[set_text_color](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.set_text_color) ਰਾਹੀਂ) ਅਤੇ ਲਾਈਨ ਦੀ ਮੋਟਾਈ |
| 120 | +[set_line_width](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.set_line_width) ਨਾਲ 1 ਮਿਲੀਮੀਟਰ ਸੈੱਟ ਕੀਤੀ ਜਾਂਦੀ ਹੈ (ਡਿਫਾਲਟ 0.2 ਦੇ ਮੁਕਾਬਲੇ)। ਅਖੀਰ ਵਿੱਚ, ਅਸੀਂ ਸੈੱਲ ਆਉਟਪੁੱਟ ਕਰਦੇ ਹਾਂ (ਆਖਰੀ ਪੈਰਾਮੀਟਰ true ਬੈਕਗ੍ਰਾਊਂਡ ਭਰਨ ਦਾ ਸੰਕੇਤ ਕਰਦਾ ਹੈ)। |
| 121 | + |
| 122 | +ਪੈਰਾਗ੍ਰਾਫ ਪ੍ਰਿੰਟ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਮੈਥਡ [multi_cell](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.multi_cell) ਹੈ। ਟੈਕਸਟ ਡਿਫਾਲਟ ਤੌਰ 'ਤੇ ਜਸਟੀਫਾਈਡ ਹੁੰਦਾ ਹੈ। |
| 123 | +ਹਰ ਵਾਰ ਜਦੋਂ ਲਾਈਨ ਸੈੱਲ ਦੇ ਸੱਜੇ ਕਿਨਾਰੇ 'ਤੇ ਪਹੁੰਚਦੀ ਹੈ ਜਾਂ ਕੈਰੀਜ ਰਿਟਰਨ ਕੈਰੈਕਟਰ (`\n`) ਮਿਲਦਾ ਹੈ, |
| 124 | +ਲਾਈਨ ਬ੍ਰੇਕ ਹੁੰਦੀ ਹੈ ਅਤੇ ਮੌਜੂਦਾ ਦੇ ਹੇਠਾਂ ਆਟੋਮੈਟਿਕ ਨਵਾਂ ਸੈੱਲ ਬਣਦਾ ਹੈ। |
| 125 | +ਸੱਜੀ ਸੀਮਾ ਤੋਂ ਪਹਿਲਾਂ ਸਭ ਤੋਂ ਨੇੜੇ ਦੇ ਸਪੇਸ ਜਾਂ ਸੌਫਟ-ਹਾਈਫਨ (`\u00ad`) 'ਤੇ ਆਟੋਮੈਟਿਕ ਬ੍ਰੇਕ ਹੁੰਦੀ ਹੈ। |
| 126 | + |
| 127 | +ਦੋ ਡੌਕੂਮੈਂਟ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨਿਰਧਾਰਤ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ: ਸਿਰਲੇਖ |
| 128 | +([set_title](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.set_title)) ਅਤੇ ਲੇਖਕ |
| 129 | +([set_author](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.set_author))। ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੋ ਤਰੀਕਿਆਂ ਨਾਲ ਵੇਖੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ। |
| 130 | +ਪਹਿਲਾ, Acrobat Reader ਨਾਲ ਸਿੱਧੇ ਡੌਕੂਮੈਂਟ ਖੋਲ੍ਹੋ, File ਮੈਨੂ 'ਤੇ ਜਾਓ |
| 131 | +ਅਤੇ Document Properties ਵਿਕਲਪ ਚੁਣੋ। ਦੂਜਾ, ਪਲੱਗ-ਇਨ ਤੋਂ ਵੀ ਉਪਲਬਧ, |
| 132 | +ਸੱਜਾ-ਕਲਿੱਕ ਕਰੋ ਅਤੇ Document Properties ਚੁਣੋ। |
| 133 | + |
| 134 | +## ਟਿਊਟੋ 4 - ਮਲਟੀ ਕਾਲਮ ## |
| 135 | + |
| 136 | +ਇਹ ਉਦਾਹਰਨ ਪਿਛਲੀ ਦਾ ਇੱਕ ਰੂਪ ਹੈ, ਜੋ ਦਿਖਾਉਂਦੀ ਹੈ ਕਿ ਟੈਕਸਟ ਨੂੰ ਕਈ ਕਾਲਮਾਂ ਵਿੱਚ ਕਿਵੇਂ ਵਿਛਾਉਣਾ ਹੈ। |
| 137 | + |
| 138 | +```python |
| 139 | +{% include "../tutorial/tuto4.py" %} |
| 140 | +``` |
| 141 | + |
| 142 | +[ਨਤੀਜਾ PDF](https://github.com/py-pdf/fpdf2/raw/master/tutorial/tuto4.pdf) |
| 143 | + |
| 144 | +[ਜੂਲਸ ਵਰਨ ਟੈਕਸਟ](https://github.com/py-pdf/fpdf2/raw/master/tutorial/20k_c1.txt) |
| 145 | + |
| 146 | +ਪਿਛਲੇ ਟਿਊਟੋਰੀਅਲ ਤੋਂ ਮੁੱਖ ਫਰਕ |
| 147 | +[`text_columns`](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.text_column) ਮੈਥਡ ਦੀ ਵਰਤੋਂ ਹੈ। |
| 148 | +ਇਹ ਸਾਰਾ ਟੈਕਸਟ ਇਕੱਠਾ ਕਰਦਾ ਹੈ ਅਤੇ ਬੇਨਤੀ ਕੀਤੇ ਕਾਲਮਾਂ ਦੀ ਗਿਣਤੀ ਵਿੱਚ ਵੰਡਦਾ ਹੈ, ਲੋੜ ਅਨੁਸਾਰ ਆਟੋਮੈਟਿਕ ਪੇਜ ਬ੍ਰੇਕ ਪਾਉਂਦਾ ਹੈ। |
| 149 | + |
| 150 | +## ਟਿਊਟੋ 5 - ਟੇਬਲ ਬਣਾਉਣਾ ## |
| 151 | + |
| 152 | +ਇਹ ਟਿਊਟੋਰੀਅਲ ਦੋ ਵੱਖ-ਵੱਖ ਟੇਬਲ ਬਣਾਉਣ ਦਾ ਤਰੀਕਾ ਦੱਸੇਗਾ। |
| 153 | + |
| 154 | +```python |
| 155 | +{% include "../tutorial/tuto5.py" %} |
| 156 | +``` |
| 157 | + |
| 158 | +[ਨਤੀਜਾ PDF](https://github.com/py-pdf/fpdf2/raw/master/tutorial/tuto5.pdf) - |
| 159 | +[ਦੇਸ਼ਾਂ ਦਾ CSV ਡੇਟਾ](https://github.com/py-pdf/fpdf2/raw/master/tutorial/countries.txt) |
| 160 | + |
| 161 | +ਪਹਿਲੀ ਉਦਾਹਰਨ [`FPDF.table()`](https://py-pdf.github.io/fpdf2/Tables.html) ਨੂੰ ਡੇਟਾ ਫੀਡ ਕਰਕੇ ਸਭ ਤੋਂ ਸਧਾਰਨ ਤਰੀਕੇ ਨਾਲ ਪ੍ਰਾਪਤ ਕੀਤੀ ਗਈ ਹੈ। |
| 162 | + |
| 163 | +ਦੂਜੀ ਟੇਬਲ ਕੁਝ ਸੁਧਾਰ ਲਿਆਉਂਦੀ ਹੈ: ਰੰਗ, ਸੀਮਤ ਟੇਬਲ ਚੌੜਾਈ, ਘੱਟ ਲਾਈਨ ਉਚਾਈ, |
| 164 | +ਕੇਂਦਰਿਤ ਸਿਰਲੇਖ, ਕਸਟਮ ਚੌੜਾਈ ਵਾਲੇ ਕਾਲਮ, ਸੱਜੇ ਅਲਾਈਨ ਕੀਤੇ ਅੰਕੜੇ... |
| 165 | +ਇਸ ਤੋਂ ਇਲਾਵਾ, ਹਰੀਜ਼ੌਂਟਲ ਲਾਈਨਾਂ ਹਟਾ ਦਿੱਤੀਆਂ ਗਈਆਂ ਹਨ। |
| 166 | +ਇਹ ਉਪਲਬਧ ਵੈਲਿਊਜ਼ ਵਿੱਚੋਂ `borders_layout` ਚੁਣ ਕੇ ਕੀਤਾ ਗਿਆ: |
| 167 | +[`TableBordersLayout`](https://py-pdf.github.io/fpdf2/fpdf/enums.html#fpdf.enums.TableBordersLayout)। |
| 168 | + |
| 169 | +## ਟਿਊਟੋ 6 - ਲਿੰਕ ਬਣਾਉਣਾ ਅਤੇ ਟੈਕਸਟ ਸਟਾਈਲ ਮਿਲਾਉਣਾ ## |
| 170 | + |
| 171 | +ਇਹ ਟਿਊਟੋਰੀਅਲ PDF ਡੌਕੂਮੈਂਟ ਅੰਦਰ ਲਿੰਕ ਪਾਉਣ ਦੇ ਕਈ ਤਰੀਕੇ ਦੱਸੇਗਾ, |
| 172 | +ਨਾਲ ਹੀ ਬਾਹਰੀ ਸ੍ਰੋਤਾਂ ਦੇ ਲਿੰਕ ਜੋੜਨਾ। |
| 173 | + |
| 174 | +ਇਹ ਇੱਕੋ ਟੈਕਸਟ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਟੈਕਸਟ ਸਟਾਈਲ |
| 175 | +(ਬੋਲਡ, ਇਟੈਲਿਕ, ਅੰਡਰਲਾਈਨ) ਵਰਤਣ ਦੇ ਕਈ ਤਰੀਕੇ ਵੀ ਦਿਖਾਏਗਾ। |
| 176 | + |
| 177 | +```python |
| 178 | +{% include "../tutorial/tuto6.py" %} |
| 179 | +``` |
| 180 | + |
| 181 | +[ਨਤੀਜਾ PDF](https://github.com/py-pdf/fpdf2/raw/master/tutorial/tuto6.pdf) - |
| 182 | +[fpdf2-ਲੋਗੋ](https://py-pdf.github.io/fpdf2/fpdf2-logo.png) |
| 183 | + |
| 184 | +ਇੱਥੇ ਟੈਕਸਟ ਪ੍ਰਿੰਟ ਕਰਨ ਲਈ ਦਿਖਾਇਆ ਗਿਆ ਨਵਾਂ ਮੈਥਡ |
| 185 | +[write()](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.write) ਹੈ। |
| 186 | +ਇਹ [multi_cell()](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.multi_cell) ਨਾਲ ਬਹੁਤ ਮਿਲਦਾ ਹੈ, ਮੁੱਖ ਫਰਕ ਇਹ ਹਨ: |
| 187 | + |
| 188 | +- ਲਾਈਨ ਦਾ ਅੰਤ ਸੱਜੇ ਮਾਰਜਿਨ 'ਤੇ ਹੈ ਅਤੇ ਅਗਲੀ ਲਾਈਨ ਖੱਬੇ ਮਾਰਜਿਨ ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ। |
| 189 | +- ਮੌਜੂਦਾ ਸਥਿਤੀ ਟੈਕਸਟ ਦੇ ਅੰਤ 'ਤੇ ਚਲੀ ਜਾਂਦੀ ਹੈ। |
| 190 | + |
| 191 | +ਇਸ ਲਈ ਮੈਥਡ ਸਾਨੂੰ ਟੈਕਸਟ ਦਾ ਇੱਕ ਹਿੱਸਾ ਲਿਖਣ, ਫੌਂਟ ਸਟਾਈਲ ਬਦਲਣ, |
| 192 | +ਅਤੇ ਜਿੱਥੇ ਛੱਡਿਆ ਸੀ ਉੱਥੋਂ ਜਾਰੀ ਰੱਖਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। |
| 193 | + |
| 194 | +ਇੰਟਰਨਲ ਲਿੰਕ ਜੋੜਨ ਲਈ ਜੋ ਦੂਜੇ ਪੰਨੇ 'ਤੇ ਲੈ ਜਾਵੇ, ਅਸੀਂ |
| 195 | +[add_link()](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.add_link) ਮੈਥਡ ਵਰਤਿਆ, |
| 196 | +ਜੋ ਇੱਕ ਕਲਿੱਕ ਕਰਨ ਯੋਗ ਖੇਤਰ ਬਣਾਉਂਦਾ ਹੈ। |
| 197 | + |
| 198 | +ਚਿੱਤਰ ਨਾਲ ਬਾਹਰੀ ਲਿੰਕ ਬਣਾਉਣ ਲਈ, ਅਸੀਂ |
| 199 | +[image()](https://py-pdf.github.io/fpdf2/fpdf/fpdf.html#fpdf.fpdf.FPDF.image) ਵਰਤਿਆ। |
| 200 | +ਇਸ ਮੈਥਡ ਵਿੱਚ ਇਸਦੇ ਆਰਗੂਮੈਂਟਾਂ ਵਿੱਚੋਂ ਇੱਕ ਵਜੋਂ ਲਿੰਕ ਪਾਸ ਕਰਨ ਦਾ ਵਿਕਲਪ ਹੈ। |
| 201 | + |
| 202 | +ਵਿਕਲਪ ਵਜੋਂ, ਫੌਂਟ ਸਟਾਈਲ ਬਦਲਣ ਅਤੇ ਲਿੰਕ ਜੋੜਨ ਦਾ ਇੱਕ ਹੋਰ ਤਰੀਕਾ |
| 203 | +`write_html()` ਮੈਥਡ ਵਰਤਣਾ ਹੈ। ਇਹ ਇੱਕ HTML ਪਾਰਸਰ ਹੈ, ਜੋ ਟੈਕਸਟ ਜੋੜਨ, |
| 204 | +ਫੌਂਟ ਸਟਾਈਲ ਬਦਲਣ ਅਤੇ HTML ਨਾਲ ਲਿੰਕ ਜੋੜਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। |
0 commit comments