Mercurial > hg > soundsoftware-site
view .svn/pristine/b7/b71f3760d3a5d5767942f7217207ce51594a67ab.svn-base @ 1543:05d639e5d59b feature_1136
First cut of a git export script
author | Chris Cannam |
---|---|
date | Tue, 12 Jan 2016 15:15:02 +0000 |
parents | cbb26bc654de |
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()%>