PowerBuilder and iOS use different measurement systems to produce a consistent size of output that is device independent. In PowerBuilder, size is measured in PowerBuilder Units (PBUs), while in iOS, the measurement unit is Points (Notice that Point and Dot are used interchangeably in both Appeon documentation and product UI).
It is important for users to understand the concept of Point and how many Points in the width and height of each device type. Compared to Point, people are more familiar with Pixel, the measurement of the display resolution. In the iOS coordinate system, there is a mapping relationship between Pixel and Point, which is one Point equals to one Pixel on a standard-resolution screen, while one Point equals to two Pixels on a high-resolution screen (such as Retina Display). For details, please read the relevant page at Drawing and Printing Guide for iOS. Now understanding the relationship between Point and Pixel, you can easily figure out how many Points in the width and height of each device screen, as shown in the table below.
Table 1. Device screen size
Device |
Display Resolution (in Pixels) |
Screen Size (in Points) |
---|---|---|
iPad 2 |
1024 x 768 pixels |
1024 x 768 points |
iPad 3/4 |
2048 x 1536 pixels |
1024 x 768 points |
iPad mini |
1024 x 768 pixels |
1024 x 768 points |
iPhone 4/4S or iPod Touch 4 |
640 x 960 pixels |
320 x 480 points |
iPhone 5/5C/5S or iPod Touch 5 |
640 x 1136 pixels |
320 x 568 points |
iPhone 6 | 750 x 1334 pixels | 375 x 667 points |
iPhone 6 Plus | 1080 x 1920 pixels | 414 x 736 points |
Now that you understand how many Points in each device type, you can use the following formula to convert from Point to PBU:
Point-to-PBU conversion:
In the English environment:
In the X axis: PBUnit = (PointX x 6144 + 96 x 7) / (96 x 14)
In the Y axis: PBUnit = (PointY x 768 + 96) / (96 x 2)
In the Japanese environment:
In the X axis: PBUnit = (PointX x 6144 + 96 x 8) / (96 x 16)
In the Y axis: PBUnit = (PointY x 2048 + 96 x 3) / (96 x 6)
Notes:
PointX indicates the number of Point in the X axis.
PointY indicates the number of Point in the Y axis.
See also
Pixel-to-PBU conversion:
Since you can also easily get the display resolution (in Pixels) and PPI from the device specification, you may use the formula to convert from Pixel to PBU:
In the X axis: PBUnit = (PixelX x 6144 + PPI x 7) / (PPI x 14)
In the Y axis: PBUnit = (PixelY x 768 + PPI) / (PPI x 2)
Notes:
PixelX indicates the number of pixels in the X axis.
PixelY indicates the number of pixels in the Y axis.
PPI stands for Pixel Per Inch, which is 132 for iPad 2, 264 for iPad 3/4 and iPad mini, 326 for iPhone 4/4S/5/5C/5S/6 and iPod Touch 4/5, and 401 for iPhone 6 Plus.