Platforms to show: All Mac Windows Linux Cross-Platform
/DynaPDF/DynaPDF Merge 2 to 1
Function:
Required plugins for this example: MBS DynaPDF Plugin
You find this example project in your Plugins Download as a Xojo project file within the examples folder: /DynaPDF/DynaPDF Merge 2 to 1
This example is the version from Fri, 19th May 2022.
Function:
Required plugins for this example: MBS DynaPDF Plugin
You find this example project in your Plugins Download as a Xojo project file within the examples folder: /DynaPDF/DynaPDF Merge 2 to 1
This example is the version from Fri, 19th May 2022.
Project "DynaPDF Merge 2 to 1.xojo_binary_project"
Class App Inherits Application
Const kEditClear = "&Delete"
Const kFileQuit = "&Quit"
Const kFileQuitShortcut = ""
EventHandler Sub Open()
Dim f As FolderItem = findFile("dynapdf_help.pdf")
Dim d As FolderItem = SpecialFolder.Desktop.Child("test.pdf")
Process f, d
d.Launch
End EventHandler
Function FindFile(name as string) As FolderItem
// Look for file in parent folders from executable on
dim parent as FolderItem = app.ExecutableFile.Parent
while parent<>Nil
dim file as FolderItem = parent.Child(name)
if file<>Nil and file.Exists then
Return file
end if
parent = parent.Parent
wend
End Function
Sub Process(InputFile as FolderItem, OutputFile as FolderItem)
Dim pdf As New DynapdfMBS
pdf.SetLicenseKey "Pro" // For this example you can use a Pro or Enterprise License
Call pdf.CreateNewPDF OutputFile
Dim r As Integer = pdf.OpenImportFile(InputFile, pdf.kptOpen, "")
If r < 0 Then
MessageBox "Not a PDF file!?"
Return
End If
// we merge 2 pages on one
Dim c As Integer = pdf.GetInPageCount
For i As Integer = 1 To c Step 2
If i = c Then
// last page
call pdf.ImportPDFPage(i)
Else
Dim template1 As Integer = pdf.ImportPage(i)
Dim template2 As Integer = pdf.ImportPage(i+1)
Dim template1width As Double = pdf.GetTemplWidth(template1)
Dim template1height As Double = pdf.GetTemplHeight(template1)
Dim template2width As Double = pdf.GetTemplWidth(template2)
Dim template2height As Double = pdf.GetTemplHeight(template2)
Dim PageWidth As Double = template1width + template2width
Dim PageHeight As Double = Max(template1height, template2height)
// make new page
Call pdf.append
// change page size
Call pdf.SetPageWidth(PageWidth)
Call pdf.SetPageHeight(PageHeight)
// place on left
Call pdf.PlaceTemplateEx(template1, 0, 0, template1width, template1height)
// and on right
Call pdf.PlaceTemplateEx(template2, template1width, 0, template2width, template2height)
Call pdf.EndPage
end if
Next
Call pdf.CloseFile
End Sub
End Class
MenuBar MainMenuBar
MenuItem FileMenu = "&File"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Edit"
MenuItem EditUndo = "&Undo"
MenuItem EditSeparator1 = "-"
MenuItem EditCut = "Cu&t"
MenuItem EditCopy = "&Copy"
MenuItem EditPaste = "&Paste"
MenuItem EditClear = "#App.kEditClear"
MenuItem EditSeparator2 = "-"
MenuItem EditSelectAll = "Select &All"
End MenuBar
End Project
See also:
- /DynaPDF/DynaPDF Graphics/DynaPDF Graphics
- /DynaPDF/DynaPDF Graphics/DynaPDF Graphics Desktop
- /DynaPDF/DynaPDF Graphics/DynaPDF Graphics iOS
- /DynaPDF/DynaPDF Graphics/DynaPDF GraphicsPath
- /DynaPDF/DynaPDF Graphics/Reporting/Breaking List Of Orders
- /DynaPDF/DynaPDF Graphics/Reporting/List Of Products
- /DynaPDF/DynaPDF Graphics/Reporting/ListBoxReport
- /DynaPDF/DynaPDF Makros
- /DynaPDF/DynaPDF transparent images/DynaPDF transparent images
- /DynaPDF/DynaPDF transparent images/DynaPDF transparent images console
The items on this page are in the following plugins: MBS DynaPDF Plugin.
