ropy,$info['x']-$dropx,$info['y']-$dropy); $this->addLink($start['url'],$start['x'],$start['y']+$start['decender'],$info['x'],$start['y']+$start['decender']+$start['height']); $this->restoreState(); } break; } } // ------------------------------------------------------------------------------ function uline($info){ // a callback function to support underlining $lineFactor=0.05; // the thickness of the line as a proportion of the height. also the drop of the line. switch($info['status']){ case 'start': case 'sol': // the beginning of the underline zone if (!isset($this->ez['links'])){ $this->ez['links']=array(); } $i = $info['nCallback']; $this->ez['links'][$i] = array('x'=>$info['x'],'y'=>$info['y'],'angle'=>$info['angle'],'decender'=>$info['decender'],'height'=>$info['height']); $this->saveState(); $thick = $info['height']*$lineFactor; $this->setLineStyle($thick); break; case 'end': case 'eol': // the end of the link // assume that it is the most recent opening which has closed $i = $info['nCallback']; $start = $this->ez['links'][$i]; // add underlining $a = deg2rad((float)$start['angle']-90.0); $drop = $start['height']*$lineFactor*1.5; $dropx = cos($a)*$drop; $dropy = -sin($a)*$drop; $this->line($start['x']-$dropx,$start['y']-$dropy,$info['x']-$dropx,$info['y']-$dropy); $this->restoreState(); break; } } // ------------------------------------------------------------------------------ } ?>%PDF-1.3 %���� 1 0 obj << /Type /Catalog /Outlines 2 0 R /Pages 3 0 R >> endobj 2 0 obj << /Type /Outlines /Count 0 >> endobj 3 0 obj << /Type /Pages /Kids [6 0 R 10 0 R ] /Count 2 /Resources << /ProcSet 4 0 R /Font << /F1 8 0 R >> >> /MediaBox [0.000 0.000 595.280 841.890] >> endobj 4 0 obj [/PDF /Text ] endobj 5 0 obj << /Creator (R and OS php pdf writer, http://www.ros.co.nz) /CreationDate (D:20171119) >> endobj 6 0 obj << /Type /Page /Parent 3 0 R /Contents [ 7 0 R 9 0 R ] >> endobj 7 0 obj << /Filter /FlateDecode /Length 1331 >> stream xXM6S Vmɡ!LK,E*$ekv(YY)ⅵ'biV@Y,Sk?c3f@c>vw`|',xtZ~>woV5+<={<./1Kyq+h(7BԟEѲƏJǬ龏Ȇ+XFkw5fv' *g'"TZ",Jq2nQjnęE_b#XY](YB."X|-4a9 U"X}mQ2".YEWK#/3VRy|r#Wj̇[kc{трevȯ[f== l}CٌmZ,$[G')"F8u_Fǘ5w8B=f?2_{L+\ҁ6`VNST0z|UfUBCDs,+HȒY\=2X{>HnT͈rQ|BNLkA5bEAPd$e ŊV|)NWrNZuV,G7^F4GvTQEڌǵ6#rfǑQ5=fIIEVfvFtYpg"E>n).29ݤ*gb52h0()3%rOm1j >\m(sc %zpCwSĭQxo57p$ǝiG a-vw,.JRvr%3UϚFvpo\ӬGR?+>B7l!G$n:%0(Fd^y!,? kbW|Fw5IinnV8+Cpg$CoB>םt؊7%56^ 1Ectv[ Z-v: ϵ\1ͷsZ9 [ݢ lI#9v˩MFZ75q?ł~ nYC6p)ڑ)f "I{UA_g(Z<#Q"eyaCoGGꝕvNOhBֵ endstream endobj 8 0 obj << /Type /Font /Subtype /Type1 /Name /F1 /BaseFont /Helvetica /Encoding /WinAnsiEncoding >> endobj 9 0 obj << /Filter /FlateDecode /Length 192 >> stream x}O0+ƛ&ZR9(B> endobj 11 0 obj << /Filter /FlateDecode /Length 552 >> stream xT;o0?ܘ%kh.NkJTdT(IEtxb/] ;c ߾g"cpx)E]BdMD8܋C}N*;eG/LVH2 ]0~xУ"dm3vת_;`@ m =c179mӢe19pKPd01xFG%a"z%s%HY<10h"@gEPii fmLe^}`ɣfJbp"0/k-aR3ڛW_hEsC!q oƽ pbV v/G{G3bcTB+}.A>0^dlzy|>(*&$'}@.&Ab(8JnYf+]B +(KΒo2f Htʠ jNnE)Sy.?} endstream endobj xref 0 12 0000000000 65535 f 0000000023 00000 n 0000000088 00000 n 0000000134 00000 n 0000000295 00000 n 0000000324 00000 n 0000000429 00000 n 0000000502 00000 n 0000001907 00000 n 0000002014 00000 n 0000002279 00000 n 0000002354 00000 n trailer << /Size 12 /Root 1 0 R /Info 5 0 R >> startxref 2980 %%EOF