Wednesday, May 11, 2016

PDF: going our own way

Over the years, we've relied on a variety of methods to create charts in the popular PDF (Portable Document Format). Our first choice was PDF-XChange, by Tracker. We had various problems with it. The final straw came when we discovered that Tracker was including a secret payload in their software: a self-contained PDF output driver, to be sold directly and surreptitiously to our customers.

The scam went like this. Companies that make PDF software often have two versions. One is a stand-alone PDF utility that looks like a printer. It is designed so end-users can convert the output of any program into a PDF file, such as MS Word, Excel, etc.

The second version is an SDK (Software Development Kit), aimed at developers, to add PDF capability to their own program. SDK customers are not allowed to create a general-purpose PDF utility, which could be accessed by third-party programs. Fair enough, Tracker make their own PDF output driver for this purpose. It wouldn't be fair to compete with them.

However, Tracker bundled both PDF products into their SDK. We were forbidden from using the stand-alone version, but we still had to incur the overhead and bloat in our installer. Why would they do this? Because as soon as our customer attempted to use the "SDK" version of the PDF driver as a printer, a helpful message would pop up offering to sell the customer a license for the general-purpose PDF utility. Directly, without giving us a cut. Even though we had incurred the expense of finding the customer.

Tracker never mentioned this "Trojan Horse" trick. We found out by accident. In addition, this behaviour violates anti-virus guidelines.

We switched to Amyuni PDF Creator, a much more powerful and reliable product.

PDF SDKs are usually implemented as printer drivers. Drivers occupy an intimate and privileged position in the operating system. A bug in a driver can cause more havoc than in an ordinary program. A malicious driver can cause considerable damage.

Microsoft has become more stringent about drivers over the years, changing the interface specifications, and forcing driver companies, including PDF, to overhaul their code. Microsoft now requires certification, by their labs, of all drivers. This is expensive, and naturally the cost is passed on to us in the form of renewed license fees, which can run into the thousands. Recent changes in Amyuni's licensing model have become exorbitant.

Changes in the Windows driver model break our old code, forcing our customers to upgrade. They are not all happy about this.

PDF driver installation problems, requiring arcane fixes, is one of our top support headaches.

In response to this situation, we have decided to develop code to create our own PDF files directly. This is not a trivial undertaking (the PDF spec. is 1,300 pages). But it will give us more autonomy, lower our development costs, save money for our customers, and enable us to take advantage of exciting PDF features not available through the driver interface: Table of Contents, Hyperlinks, Alphabetic Index, etc.

Our expertise with many other file formats (JPG, PNG, RTF, DXF, SVG, HTML, STL) means that our code is structured to adapt itself easily to new output formats.

We hope to have the PDF conversion completed within a couple of months.

Update: It's Nov'16, and I'm about half done.
Update 2: It's Jul'17, and I'm about three-quarter done.
Update 3: Dec'17 - Hot Dog! it's working. The new PDF does all the charts, with only a few glitches to fix. It is a thing of beauty. Bye-bye cursed driver-based solutions. A day doesn't go by that I don't get a support request from a customer whose PDF driver was zapped by a Windows update, and requires re-installation. As a bonus, Charting Companion now runs under Mac OS/X with Wine.




Monday, May 2, 2016

What is the best format for publishing your Family Tree chart?

Charting Companion offers many options for telling the story of your family.

Image (BMP, PNG, GIF, JPG, TIFF) PDF
Portable Document Format
RTF
Rich Text Format
HTML
Hyper Text Markup Language
SVG
Scalable Vector Graphics
DXF
Data eXchange Format
STL
STereo Lithography
Big wall charts Y Y Y Y
Take to a print shop Y Y Maybe
Insert in a book Y Y
Email Y Y Y Y
Publish on the Web Y Y Y
Edit with vector graphics program Y Y
3D Printing Y
Technology Raster Raster + vector Vector Vector Vector Vector Vector
Maximum size ca. 3,800 in2  
Ex: 28" x 136"
36" x 200"
80" x 150"
66" x 180"
22" 2,000" and more Depends on browser No limit No limit 8" to 10"
Depends on 3D printer

Print your family tree on a 3D printer

3D printers use melted plastic or fused resin to create objects in every shape imaginable. 3D printers are becoming popular as the technology improves and prices come down.
 
Charting Companion now includes an option to output Ancestor and Descendant Fan charts as "STL" files, which can be fed to 3D printers for printing as physical objects.
 
3D Fan chart
Preview of 3D Fan chart
 
 
3D printers range in size and price from small, desk-top units, to large industrial machines. Schools and libraries are now offering 3D printing facilities. 3Dhubs.com is a network of 3D print shops all over the World where you can email your 3D print file, and receive a fabricated piece in a few days.
 
ypical 3D printers
Typical 3D printers
 
3D printing is still in its infancy. Low-cost desktop units have a low resolution and small base plate size. Finer resolution and larger pieces require high-end, industrial-grade machines. 3D printers aimed at the consumer market are limited to three-generation Fan charts. A five-generation Fan chart is best done with 8" diameter.
 
If you haven't already upgraded, click to get the latest version of Charting Companion 6. A 3D printed family tree lasts forever, and makes a great gift idea. Share your story with your family and friends. Click for more information.
 
Charting Companion charts will make you a hit with your relatives, and the star of your next family reunion.

Ancestor chart, "Bottom-up" style

Charting Companion now prints the Ancestor chart in vertical or "Bottom-up" style.
 
Many of you have requested this option, and we are pleased to provide you with another attractive way of telling the story of your family.
 
Ancestor Bottom-up
Preview of Ancestor "Bottom-up" vertical format
 
 
Charting Companion also outputs charts in DXF format. DXF is used by all CAD (drafting) graphics software, such as AutoCAD . The DXF format allows you to edit and modify your charts using a wide range of graphics software.

New Event Type selection for Charting Companion

Charting Companion now allows you to pick specific event types in your Ancestor and Descendant charts.
 
Many of you have requested this option, and we are pleased to provide you with another convenient way of telling the story of your family. Get your copy of Charting Companion version 6: click to buy a Registration Key.
 
Event Type Selection
Preview of Event Type selection
 
 
You can tailor your chart by specifying the exact mix of events that you would like to see for each person. Click on the list of events in the Chart Options dialog, and the dialog above appears. Click on an event in the "Excluded" column, click on the move ">" button; the event will appear in the "Included "column, and on your chart.
 
Don't forget that you can publish your chart in HTML  format; the social media links become "clickable", to launch each person's Facebook page or Twitter feed.
 
Don't miss out on this colorful way of celebrate your family history: buy Charting Companion. We are honored to be part of your story.