creating pdf documents using pl/sql create pdf in pl/sql generate pdf in pl/sql
pdf by pl/sql pl/sql Oracle Sql PDF pl/sql pdf generate
tool develop oracle pl/sql download
creating html_db applications
spacer
plsql generate pdf
html_db spacer Home Examples
printemail html_db printed report

34. PageNumber

CREATE OR REPLACE procedure test34 is
-- PageNumber
-- Logical Page | Command | PageNo
-- 1              -         1/2
-- 2              end       2/2
-- 3              -         -
-- 4              -         -
-- 5              start     1/4
-- 6              -         2/4
-- 7              -         3/3
-- 8              -         4/4
-- 9              start     1/2
-- 10             -         2/2
   ---------------
 
  l_blob blob;
  l_filename varchar2(30) := '123.pdf';
 begin   
    plpdf.init; -- initialize, without parameters means: page orientation: portrait, unit: mm, default page format: A4
    Plpdf.nopAlias; -- set alias for "number of pages" (default)
    Plpdf.SetHeaderProcName('xheader',10); -- set header creator procedure
    Plpdf.SetFooterProcName('xxfooter',10); -- set footer creator procedure
   
    Plpdf.NewPage; -- 1
    Plpdf.SetPrintFont('Arial',NULL,12); -- set font attributes: family: Arial, style: regular, font size: 12
    Plpdf.PrintCell(50,10,'Hello World! 1'); -- print text: cell size:50*10
    Plpdf.NewPage; -- 2
    plpdf.SetPageNoEnd; -- 2
    Plpdf.PrintCell(50,10,'Hello World! 2'); -- print text: cell size:50*10
    Plpdf.NewPage; -- 3
    Plpdf.PrintCell(50,10,'Hello World! 3'); -- print text: cell size:50*10
    Plpdf.NewPage; -- 4
    Plpdf.PrintCell(50,10,'Hello World! 4'); -- print text: cell size:50*10
    Plpdf.NewPage; -- 5
    plpdf.SetPageNoStart; -- 5
    Plpdf.PrintCell(50,10,'Hello World! 5'); -- print text: cell size:50*10
    Plpdf.NewPage; -- 6
    Plpdf.PrintCell(50,10,'Hello World! 6'); -- print text: cell size:50*10
    Plpdf.NewPage; -- 7
    Plpdf.PrintCell(50,10,'Hello World! 7'); -- print text: cell size:50*10
    Plpdf.NewPage; -- 8
    Plpdf.PrintCell(50,10,'Hello World! 8'); -- print text: cell size:50*10
    Plpdf.NewPage; -- 9
    plpdf.SetPageNoStart; -- 9
    Plpdf.PrintCell(50,10,'Hello World! 9'); -- print text: cell size:50*10
    Plpdf.NewPage; -- 10
    Plpdf.PrintCell(50,10,'Hello World! 10'); -- print text: cell size:50*10
   
    plpdf.SendDoc(l_blob); -- create content
 
 -- print
 /*
 owa_util.mime_header('application/pdf',false);
        htp.p('Content-Disposition: inline; filename="' || l_filename || '"'); 
        htp.p('Content-Length: ' || dbms_lob.getlength(l_blob));
        owa_util.http_header_close;  
        wpg_docload.download_file(l_blob);
        */
   
 -- or store
 insert into STORE_BLOB (blob_file, created_date) values (l_blob, sysdate);
 commit;
end;
/

Source: test34.prc xheader.prc xxfooter.prc

Result: test34.pdf

spacer
pl/sql pdf
mod_plsql pdf