Sub Process_Globals
Dim sWriteDir As String
Dim PDFWriter As PDF
Dim PDFReader As RenderPDF
End Sub
Sub Activity_Create(FirstTime As Boolean)
Dim b1 As Bitmap
Dim o1 As OutputStream
Dim r As Rect
Dim b As Bitmap
Dim c As Canvas
b.InitializeMutable(100,200)
c.Initialize2(b)
c.DrawColor(Colors.Blue)
r.Initialize(100,150,200,300)
If File.Exists(File.DirRootExternal,"PDFTest") = False Then
File.MakeDir(File.DirRootExternal,"PDFTest")
End If
sWriteDir = File.DirRootExternal & "/PDFTest"
If File.Exists(sWriteDir,"Test.pdf") = True Then
File.Delete(sWriteDir,"Test.pdf")
End If
'Generate PDF Test File
PDFWriter.Initialize()
PDFWriter.AddPage(595,842,1)
PDFWriter.DrawText("Page1",10,72,Typeface.DEFAULT_BOLD,72,Colors.Red,"LEFT")
PDFWriter.FinishPage
PDFWriter.AddPage(595,842,2)
PDFWriter.DrawCircle(100,100,50,Colors.Red,True,0)
PDFWriter.DrawOval(r,Colors.Red,True,0)
PDFWriter.FinishPage
PDFWriter.AddPage(595,842,3)
PDFWriter.DrawRect(r,Colors.Red,True,0)
PDFWriter.FinishPage
PDFWriter.AddPage(595,842,3)
PDFWriter.DrawBitmap(b,Null,r)
PDFWriter.FinishPage
PDFWriter.WritePDF(sWriteDir,"Test.pdf")
'Open PDF for Readding
PDFReader.Initialize(sWriteDir,"Test.pdf")
'Render the first page to a PNG file
PDFReader.RenderPageToFile(0,sWriteDir,"TestFromPDFRenderer.png")
'Render the first page to a PNG file
o1 = File.OpenOutput(sWriteDir,"TestFromB4A.png",False)
b1.Initialize3(PDFReader.RenderPage(0))
b1.WriteToStream(o1,100,"PNG")
o1.Close
'Set activity background to the rendered page
Activity.SetBackgroundImage(b1)
'get number of pages in document
Log("Page Count: " & PDFReader.GetPageCount)
'get page height
Log("Page 1 Height: " & PDFReader.GetPageHeight(0))
'get page width
Log("Page 1 Width: " & PDFReader.GetPageWidth(0))
'Should document be scaled for printing?
Log("Scale For Print:" & PDFReader.GetScaleForPrint)
'Set render engine to render for printing
PDFReader.SetRenderForPrint(True)
'Get whether render engine is set render for print
Log("Render For Print:" & PDFReader.GetRenderForPrint)
'Set custom bitmap density (default is 72 ie. 1 pixel = 1 PostScript point)
PDFReader.SetDensity(160)
'Get bitmap density (default is 72 ie. 1 pixel = 1 PostScript point)
Log("Bitmap Density: " & PDFReader.GetDensity())
'Close the document
PDFReader.Close