Mercurial > hg > soundsoftware-site
view vendor/plugins/rfpdf/test_unicode.rfpdf @ 586:658cfb481618 feature_36
Order BibTeX entry types in a sensible order for presentation to user, instead of alphabetically by BibTeX name as previously (requires database re-seed).
Provide a label for each entry type, and use it in the edit dropdown and show page.
Omit duplicate entry type (conference) from edit dropdown.
Use existing entry attribute labels in show_bibtex_fields.
author | Chris Cannam <chris.cannam@soundsoftware.ac.uk> |
---|---|
date | Fri, 12 Aug 2011 13:15:05 +0100 |
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()%>