Mercurial > hg > soundsoftware-site
view vendor/plugins/rfpdf/test_unicode.rfpdf @ 1086:5ebdeb79ea9c feature_550
Add "My Page" box for my projects. Currently this also affects the layout of the non-My-Page version of the My Projects list, need to adjust that
author | Chris Cannam <chris.cannam@soundsoftware.ac.uk> |
---|---|
date | Fri, 23 Nov 2012 14:29:55 +0000 |
parents | cbce1fd3b1b7 |
children |
line wrap: on
line source
<% doc_title = "test title"; doc_subject = "test description"; doc_keywords = "test keywords"; htmlcontent = "< € € € & è è © ><br /><h1>heading 1</h1><h2>heading 2</h2><h3>heading 3</h3><h4>heading 4</h4><h5>heading 5</h5><h6>heading 6</h6>ordered list:<br /><ol><li><b>bold text</b></li><li><i>italic text</i></li><li><u>underlined text</u></li><li><a href=\"http:#www.tecnick.com\">link to http://www.tecnick.com</a></li><li>test break<br />second line<br />third line</li><li><font size=\"+3\">font + 3</font></li><li><small>small text</small></li><li>normal <sub>subscript</sub> <sup>superscript</sup></li></ul><hr />table:<br /><table border=\"1\" cellspacing=\"1\" cellpadding=\"1\"><tr><th>#</th><th>A</th><th>B</th></tr><tr><th>1</th><td bgcolor=\"#cccccc\">A1</td><td>B1</td></tr><tr><th>2</th><td>A2 € € € & è è </td><td>B2</td></tr><tr><th>3</th><td>A3</td><td><font color=\"#FF0000\">B3</font></td></tr></table><hr />image:<br /><img src=\"#{File.join(RAILS_ROOT, 'public')}/logo_example.png\" alt=\"test alt attribute\" width=\"100\" height=\"100\" border=\"0\" />"; # ENGLISH @l = {} # PAGE META DESCRIPTORS -------------------------------------- @l['a_meta_charset'] = "UTF-8"; @l['a_meta_dir'] = "ltr"; @l['a_meta_language'] = "en"; # TRANSLATIONS -------------------------------------- @l['w_page'] = "page"; # create new PDF document (document units are set by default to millimeters) pdf = TCPDF.new # set document information pdf.SetCreator("TCPDF"); pdf.SetAuthor("TCPDF"); pdf.SetTitle(doc_title); pdf.SetSubject(doc_subject); pdf.SetKeywords(doc_keywords); pdf.SetHeaderData("#{File.join(RAILS_ROOT, 'public')}/logo_example.png", 20, "header title", "first row\nsecond row\nthird row"); #set margins pdf.SetMargins(15, 27, 15); #set auto page breaks pdf.SetAutoPageBreak(true, 25); pdf.SetPrintHeader pdf.SetPrintFooter pdf.SetHeaderMargin(5); pdf.SetFooterMargin(10); pdf.SetImageScale(4); #set image scale factor pdf.SetHeaderFont(["FreeSans", '', 10]); pdf.SetFooterFont(["FreeSans", '', 8]); pdf.SetLanguageArray(@l); #set language items #initialize document pdf.alias_nb_pages(); pdf.AddPage(); # set barcode # pdf.SetBarcode(Time.now.strftime("Y-m-d H:i:s")); # output some HTML code pdf.SetFont("vera", "", 10); pdf.writeHTML(htmlcontent, true, 0); # output two html columns first_column_width = 80; current_y_position = pdf.GetY(); pdf.writeHTMLCell(first_column_width, 0, 0, current_y_position, "<b>hello</b>", 0, 0, 0); pdf.writeHTMLCell(0, 0, first_column_width, current_y_position, "<i>world</i>", 0, 1, 0); # output some content pdf.SetFont("vera", "BI", 20); pdf.Cell(0,10,"TEST Bold-Italic Cell",1,1,'C'); # output some UTF-8 test content pdf.AddPage(); pdf.SetFont("FreeSans", "", 12); utf8text = open(File.join(RAILS_ROOT, 'vendor/plugins/rfpdf',"utf8test.txt"), "rb").read; # get utf-8 text form file pdf.SetFillColor(230, 240, 255, true); pdf.Write(5, utf8text, '', 1); # remove page header/footer pdf.SetPrintHeader(false); pdf.SetPrintFooter(false); # Two HTML columns test pdf.AddPage(); right_column = "<b>right column</b> right column right column right column right column right column right column right column right column right column right column right column right column right column right column right column right column"; left_column = "<b>left column</b> left column left column left column left column left column left column left column left column left column left column left column left column left column left column left column left column left column left column"; first_column_width = 80; second_column_width = 80; column_space = 20; current_y_position = pdf.GetY(); pdf.writeHTMLCell(first_column_width, 0, 0, 0, left_column, 1, 0, 0); pdf.Cell(0); pdf.writeHTMLCell(second_column_width, 0, first_column_width+column_space, current_y_position, right_column, 0, 0, 0); # add page header/footer pdf.SetPrintHeader(true); pdf.SetPrintFooter(true); pdf.AddPage(); # Multicell test pdf.MultiCell(40, 5, "A test multicell line 1\ntest multicell line 2\ntest multicell line 3", 1, 'J', 0, 0); pdf.MultiCell(40, 5, "B test multicell line 1\ntest multicell line 2\ntest multicell line 3", 1, 'J', 0); pdf.MultiCell(40, 5, "C test multicell line 1\ntest multicell line 2\ntest multicell line 3", 1, 'J', 0, 0); pdf.MultiCell(40, 5, "D test multicell line 1\ntest multicell line 2\ntest multicell line 3", 1, 'J', 0, 2); pdf.MultiCell(40, 5, "F test multicell line 1\ntest multicell line 2\ntest multicell line 3", 1, 'J', 0); #Close and output PDF document %><%=pdf.Output()%>