Use of this site is expressly at your own risk and constitutes acceptance of our terms, conditions, and policies

ÜberPDFsdk
The low level "surgical strike" PDF toolkit™
Embarcadero Technologies Raspbery PI Code 4 Sale, LLC

Let TJoe code it for you! - PDF and Graphics Specialist - C++ - Delphi® - C++Builder® - Lazarus - All Platforms


ÜberPDFsdk FAQ Version 0001.0002 - Revision 0x00



What is the ÜberPDFsdk?

What is ÜberPDFsdkUltra?

What is ÜberPDFsdkPlus+?

What is ÜberBuild™?

What platforms do you build on?

What do I need to build ÜberPDFsdk?

What compilers do you build with?

What library types are available?

What 3rd party open source is used?

What are the tests doing?

What is the password for the "*-out-2.pdf" test files?

Help! ÜberBuild™ does not!

Support for the ÜberPDF™ family of products

Feature and example requests, ideas, and suggestions

Licensing for ÜberPDFsdkPlus+ and ÜberPDFsdkUltra

Why don't you use rock dots in the domain name for überpdf.org™?

What does "We live by example" mean?

Who is the ÜberDude™?

Back to main index



What is the ÜberPDFsdk?

The ÜberPDFsdk is a very powerful, lightweight, "surgical strike" PDF toolkit™ that allows developers low level access to a PDF.

The ÜberPDFsdk is designed to do one thing very well: PDF.

The ÜberPDFsdk weighs only about one megabyte because it does not duplicate code you already have, and does not limit you to a given API to get the job done.

Most all other PDF libraries are weighted down with tons of code that have nothing to do with PDF. The companies are overburdened with support requests to debug all that code and often limit your access to a PDF with the API provided.

A great example is image support. Every developer tool has image loading functions (some better than others), and you may have even paid for a professional library. You should be able to use your code, not duplicate it with possibly "lesser" code!

Another example would be drawing functionality. There are millions of ways to draw a box in PDF. Did you want rounded corners, dashed lines, or transparency? The list of possibilities is almost endless. These attributes can be easily added to a function in your application that works the way YOU want it to.

Simply put, there is no reason to weigh down this amazingly small and powerful library with a heavy API you may not want (or perhaps even use).

Huge collections of PDF utility functions are best placed in a unit where a smart linker can remove what is not used by a given application.

Our ÜberPDFsdkUltra provides easy to use - high level PDF functions for drawing, text, fonts, images, page and document manipulation.

Our goal is a solid, stable API for the ÜberPDFsdk requiring few updates, allowing us to concentrate on adding many new features through the ÜberPDFsdkUltra unit, instead of burdening everyone with constant maintenance updates requiring large downloads and lengthy builds for a large and changing API many will not use.

Working with PDFs at the ÜberPDFsdk level does require basic knowledge of the PDF specification. If you desire assistance, The UberDude™ is often available to provide fast solutions at reasonable rates, with over three decades of experience in Postscript®, PDF, and graphics.

Back to top



What is ÜberPDFsdkUltra?

ÜberPDFsdkUltra wraps plus and provides easy to use - high level PDF functions for drawing, text, fonts, images, page and document manipulation.

More API information can be found here

We update ÜberPDFsdkUltra constantly - adding new and valuable features that make use of the ÜberPDFsdk with native C/C++ and Pascal source.

Our ÜberPDFsdkUltra package is an exclusive offering for our ÜberPDFsdkPlus+ members.

Back to top



What is ÜberPDFsdkPlus+?

ÜberPDFsdkPlus+ delivers our most requested features:

ÜberPDFsdkPlus+ is available in several flavors:

ÜberPDFsdkPlus+ Includes:

Compiler Collection sprinkles are available with both static and dynamic libraries built specifically for every supported platform, including specific versions for Visual Studio® 2010, 2012, 2013, 2015, and 2017, targeting both the Microsoft Windows® 8 SDK and the Microsoft Windows® 10 SDK, and covering the Md, MdD, Mt, and MtD runtime libraries for the Intel® x86, Intel® x64, Arm® x32, and Arm® x64 platforms.

Back to top



What is ÜberBuild™?

ÜberBuild™ is a system of scripts and utilities that provide both a guided (menu driven) and fully automated, cross platform build for very large projects (such as the ÜberPDFsdk) that require a large number of other libraries (such as open source libraries).

ÜberBuild™ is able to download, build, link, and test code supplied from many different sources, on a wide variety of operating systems, using a wide variety of developer tool chains.

ÜberBuild™ is able to build many large projects in parallel, by carefully managing the computer resources (such as memory and CPU core usage), dedicated to each build instance, and assemble the results from differing build instances.

ÜberBuild™ is ideal for managing many builds spread across multiple physical machines, VM's, and low cost VPS instances (we currently use 312 instances to build and test the ÜberPDFsdk).

If you are interested in using ÜberBuild™ for your large project, please contact Sales.

Back to top



What platforms do you build on?

The ÜberBuild™ system builds on many platforms:

Linux® Arm® x32
Linux® Arm® x64
Linux® Intel® x32
Linux® Intel® x64
OS X® Intel® x32
OS X® Intel® x64
Microsft Windows® Intel® x32 Desktop
Microsft Windows® Intel® x64 Desktop
Microsft Windows® Arm® x32 UWP Universal Store
Microsft Windows® Arm® x64 UWP Universal Store
Microsft Windows® Intel® x32 UWP Universal Store
Microsft Windows® Intel® x64 UWP Universal Store

Official Operating System Support (all hardware platforms):

Armbian
Debain™
elementary OS™
Linux® Mint Serena
NVIDIA® Linux® For Tegra®
OS X® High Sierra
Rasbain
Ubuntu® 14.04
Ubuntu® 16.04
Ubuntu® 18.04
Ubuntu® Touch
UBPorts
Microsoft Windows XP®
Microsoft Windows XP x64®
Microsoft Windows Vista®
Microsoft Windows 7®
Microsoft Windows 8®
Microsoft Windows 8.1®
Microsoft Windows 8.1 RT®
Microsoft Windows 10®
Microsoft Windows 10 IoT®

Official Arm® Hardware Support:

BeagleBone™
Google Nexus™ 4
Google Nexus™ 5
Google Nexus™ 7
Google Nexus™ 10
NVIDIA Jetson™ TK-1
NVIDIA Jetson™ TX-1
ODROID™ C1
ODROID™ C2
ODROID™ XU4
Pine64
Raspberry Pi®
Raspberry Pi® 2
Raspberry Pi® 3
Raspberry Pi® Zero

Unofficial support:

Chip
BSD
MIPS™
VoCore

Coming shortly:

Android™
iOS®

Back to top



What do I need to build ÜberPDFsdk?

To build the ÜberPDFsdk:

ÜberBuild™ with the ÜberPDFsdk source code

BSD: bash, perhaps a PERL™ module or two (see the README file).
Linux® Intel®: bash, build-essentials package.
Linux® Arm®: a PERL™ module or two (see the README file).
OS X®: Xcode® command line tools.
Microsoft Windows®: Visual Studio® 2010-2017 - Microsoft Windows XP® or better.

To use the ÜberPDFsdk you must be able to

make defines, include and link files, using:

C/C++
C++Builder®
Delphi®
Free Pascal®
Lazarus
or other language that can link to C or Pascal files.

Back to top



What compilers do you work with?

Official Native System Build Support:

CLANG / GCC/G++ (on Unix® like systems)
Microsoft Visual Studio® 2010
Microsoft Visual Studio® 2012
Microsoft Visual Studio® 2013
Microsoft Visual Studio® 2015
Microsoft Visual Studio® 2017

Official Link Support:

C++Builder® all versions 5 and up for Microsoft Windows® and OS X®
CLANG / GCC/G++ (on Unix® like systems)
Delphi® all versions 6 and up for Microsoft Windows®, OS X®, and Linux®
Free Pascal (for Microsoft Windows®, OS X®, and Linux®)
Lazarus (for Microsoft Windows®, OS X®, and Linux®)

Unofficial Link Support:

C++Builder® 4 and up
Delphi® 4 and up
Microsoft® C/C++ SDK, DDK, and other compilers for Microsoft Windows® 2000 and up

Coming shortly:

MinGW

Back to top



What library types are available?

Both dynamic and static libraries are available.

Back to top



What 3rd party open source is used?

ZLib
LibPNG
LibJPEG
QPDF

Back to top



What are the tests doing?

1) Constructs a new PDF document from scratch.

2) Constructs a fancy PDF page with text and graphics from scratch.

3) Loads the entire PDF Reference manual (756 pages) and imports 3 pages to the new document.

4) Loads the entire PostScript® Tutorial and Cookbook (BlueBook - 242 Pages) and imports 3 pages to the new document.

5) Loads the entire PostScript® Language Program Design (GreenBook - 228 Pages) and imports 3 pages to the new document.

6) Loads the entire PostScript® Language Reference Manual (RedBook - 912 Pages) and imports 3 pages to the new document.

7) Saves out the 13 pages to a new document (optimized).

8) Completely disassembles the 13 PDF pages to the lowest possible level and dumps the complete debug information for each object and content stream (neatly formatted) producing an additional 546 pages of debug information all while providing error checking in the code.

9) Saves out the 559 pages (with debug info) to a second (optimized) PDF with AES Encryption (and PDF protections) with both user and owner rights and passwords.

Back to top



What is the password for the "*-out-2.pdf" files that get created during the build tests?

PDF user password: foo

PDF owner password: foobar

Back to top



Help! ÜberBuild™ does not!

Did you read the README and change log files, and the current issues page for known issues and workarounds?

We extensively test ÜberBuild™ with the ÜberPDFsdk on a large number of systems using hundreds of different compiler tool chains without issue. Our test environments are built using clean OS installs, clean tool chain installs, and updated using the standard update tool provided by the OS. We then follow the instructions.

Support: If you really do have a valid build issue with a supported system, we would love to hear from you!

We will go the extra mile to help, including installing an OS and development tool chain from scratch in an attempt to reproduce your issue.

We receive a good number of bug reports from "developers" trying to pass off a bug report on an unsupported 20 year old compiler running on an XP system without updates.

Since we will go the extra mile to help you, all we ask is that you help us by being realistic in your support request.

Back to top



Support for the ÜberPDF™ family of products

ÜberPDFsdkPlus+ members receive priority support consideration.

Feature and example requests, ideas, and suggestions

Contact The UberDude™

New examples and features will generally be posted to our ÜberPDFsdkPlus+ member area before they are considered for public distribution.

All submissions are to be made in accordance with our terms, conditions, and polices.

SDK Assistance

Please note that questions such as "How do I do x with a pdf" are generally considered to be a PDF Assistance question.

Fee based: Save time, money, and effort - The UberDude™ is often available to provide code, examples, advice, and fast solutions at reasonable rates.

Free: Generalized answers for most SDK related questions are provided at no charge. The intent is to get you pointed in the right direction. It is expected that you first read the documentation related to your question, look for any related examples, and also try any related function options before submitting a question. Reading through the SDK source code and 3rd party open source code is also recommended. A reasonable level of computer programming skills are assumed. Contact The UberDude™ using the subject: SDK: short description.

PDF Assistance

Fee based: The UberDude™ is often available to provide fast solutions at reasonable rates, with over three decades of experience in Postscript®, PDF, and graphics.

Free: The PDF reference is at: uberOpenSource/3rdpartylibs/_testfiles/testfiles/pdf/PDF32000_2008.pdf

Free: Submit an example request.

SDK Bug Reports

Free: We try to deal with these bugs very quickly and provide a fix ASAP. After reviewing the product documentation and the issues page to make sure the issue is not already known, please send a detailed (and hopefully reproducible) bug report (try to be as specific as possible) to The UberDude™ using the subject: SDK bug: short description.

Please note that (in general) a PDF Bug Report is not considered to be a SDK related bug. For example, an SDK function that did not work as documented is a SDK related bug, however, failure to read a given PDF is a PDF Bug Report.

PDF Bug Reports

Fee based: The UberDude™ is often available to expedite the research of PDF issues and provide fast custom solutions at very reasonable rates.

Free: Outside of malformed documents, these are very rare. Please send as small of an example as possible that clearly isolates and demonstrates the issue (PDF, C, and/or Pascal) and cite the appropriate section(s) of the official PDF ISO reference (or addendum) at: uberOpenSource/3rdpartylibs/_testfiles/testfiles/pdf/PDF32000_2008.pdf demonstrating the bug (so that we may make a case to get it fixed). Contact The UberDude™ using the subject: PDF bug: short description.

Please understand that these kind of changes must be carefully researched, debugged, and a case must be made to argue for a code change that will affect a great number of the PDF applications in existence.

Malformed (out of specification) PDFs do not generally qualify for the free service unless they can be documented as an issue commonly found in the wild. Given the amount of research involved in making such a case, turnaround time for a malformed document workaround is often significant (if at all). It is customary for applications to have code in place to actively deal with both malformations and exploits (one area that sets most PDF applications apart). This is an advanced topic that often deals in propitiatory, highly guarded solutions, and trade secrets. Assistance in this area is encouraged.

BUILD Bug Reports

Free: We try to deal with these bugs very quickly and provide a fix ASAP. If you still have issues after reviewing Help! ÜberBuild™ does not!, please send a detailed (and hopefully reproducible) bug report (try to be as specific as possible) to The UberDude™ using the subject: Build bug: short description.

Back to top



Licensing for ÜberPDFsdkPlus+ and ÜberPDFsdkUltra

All open source is CLEARLY located in the uberOpenSource directory.

ÜberPDFsdkPlus+ is not licensed as open source and is offered under the ÜberPDF™Plus+ commercial license.

ÜberPDFsdkPlus+ members may optionally license the ÜberPDFsdk under the ÜberPDF™Plus+ commercial license.

The intention is to offer a commercial friendly, non GPL license under reasonable terms:


Custom Licensing: For Custom licensing, please contact Sales directly.

Back to top



Why don't you use rock dots in the domain name for überpdf.org™?

We do, however, using it can be a major technical challenge, prone to error, sometimes not supported, and often ends up encoded as the ugly and confusing group of Punycode characters: xn--berpdf-2ya.org.

The domain for xn--berpdf-2ya.org (aka überpdf.org) simply redirects to uberpdf.org


Back to top



What does "We live by example" mean?

Releasing the ÜberPDF™ project to the public required over 5,000 hours of programming, a host of computers, devices, and developer tools.

ÜberPDF™ has 2,200 users (most commercial developers).

As of the release of version 0001.0003, there has been exactly zero contributions.

Do the math on that.

We eat by any additional work (examples) the project might bring to the table.


Back to top



Who is the ÜberDude™?

The UberDude™ (aka Joe C. Hecht) is a notable former Borland® engineer from the Delphi® group.

Joe's specialty is in the design of commercial graphic engines and drivers (since 1985), with an emphasis on PostScript® and PDF.

Joe's works include many commercial products (such as the award winning TypeStudio Effects Specialist), animation engines (used by Disney, Warner Bros., and 7th Level), and many OEM print drivers.

Joe is a former publisher. His graphics background hails from the commercial printing and typography industry.

Joe has authored over 700 white papers and TI's on Delphi®, C++Builder®, and Microsoft Windows® programming, and was a featured author contributing several chapters to the highly acclaimed book Delphi® Special Edition published by Que. Joe's name commonly appears in the acknowledgments of many of the finer book titles that have been written on the subjects of Delphi®, Microsoft Windows®, and graphics programming.

Joe's is also known in Delphi® circles as TJoe(h^);™.

When not coding, Joe can be found sailing the emerald waters of the Florida panhandle aboard his sloop "El Deso de Papa" accompanied by his lovely wife Lynda.

Back to top



Contact ÜberPDF™.org

Valid HTML 4.0!

No Cookies, Scripts, Pop Overs, Blind Links, or 3rd Party Hot Linked Content is knowingly served or tracking information gathered.

Use of this site is expressly at your own risk and constitutes acceptance of our terms, conditions and policies.

Copyright © 2018 by CODE4SALE, LLC - All rights reserved.

Product names, trademarks, and service marks mentioned are owned by their respective owners.
Please see our trademark page for more information.

DMCA (Digital Millennium Copyright Act) Contact Information

Last Modified: 2018-09-01 05:03:00    2018-09-01 01:03:00 am (-4) - America/New_York    DNY20