Introducing the “Welcome to Xojo” Bundle!

New to Xojo and looking for guidance? We've put together a terrific bundle to welcome you! Xojo Bundle

This bundle includes six back issues of the magazine -- all of year 21 in printed book and digital formats -- plus a one-year subscription (beginning with 22.1) so you'll be learning all about Xojo for the next year. It's the perfect way to get started programming with Xojo. And you save as much as $35 over the non-bundle price!

This offer is only available for a limited time as supplies are limited, so hurry today and order this special bundle before the offer goes away!

Article Preview

Buy Now

Issue 21.6 ('Differences')
Instant purchase and download via GumRoad!


Multi-column PDFs

Making Multi-column PDFs with DynaPDF

Issue: 21.6 (November/December 2023)
Author: Stefanie Juchmes
Author Bio: Stefanie studied computer science at the university in Bonn. She came in touch with Xojo due to the work of her brother-in-law and got a junior developer position in early 2019 at Monkeybread Software.
Article Description: No description available.
Article Length (in bytes): 11,413
Starting Page Number: 12
Article Number: 21602
Resource File(s):

Download Icon project21602.zip Updated: 2023-10-31 23:51:05

Related Link(s): None

Excerpt of article text...

Did you know that you can convert a text into a multi-column PDF with a DynaPDF Starter license and Xojo? How this works I will tell you in this article.

Let's start with the structure of our application.

In the window there is a Textarea, a button with which we can start the creation of the document, and a textfield in which we can enter the number of columns we want (see Figure 1).

Now let's look at the code behind the button.

First we see that we create an instance of a new self-written class called MyDynaPDFMBS and store it in a window property called pdf. The class we use here has DynaPDFMBS as its superclass .

We use the new class because we want to fill certain events that the DynaPDFMBS class offers us with code. On the one hand, we fill the event Error with code. This event is called when an error occurs in connection with the class. I won't go into more detail about error handling in this article. An event that is much more important for our project is the PageBreak event, which we will define later.

...End of Excerpt. Please purchase the magazine to read the full article.