Link to home
Start Free TrialLog in
Avatar of trg_dk
trg_dkFlag for Denmark

asked on

Using ABCpdf 6.1 .NET component from PHP - How to instantiate

I downloaded ABCpdf 6.1 .NET from Websupergoo.com - to use from a PHP script, to create PDF's from Word documents on the fly - very cool indeed.

Only thing is, I want to use PHP (of course) instead of .NET

As far as I can read here, http://dk.php.net/manual/en/class.dotnet.php, that should not be a problem.

Only thing is, that I never tried to use .NET components before, only COM objects.

So my question is - can someone please help me fill in the blanks :
$obj = new DOTNET("assembly", "classname")

Attached are some example code from ABCpdf...

Thanks for your help on this matter :-)

// ===========================================================================
//	©2006 WebSupergoo. All rights reserved.
// ===========================================================================
 
using System;
using System.IO;
using WebSupergoo.ABCpdf6;
using WebSupergoo.ABCpdf6.Objects;
 
 
namespace TaggedPDF {
	/// <summary>
	/// Startup class for calling tagged pdf tests
	/// Tests include xml converter example and hardcoded tagged 
	/// pdf creation.
	/// - Simple example shows how to generate tagged pdf files using ABCPdf
	/// - Xml converter transforms simple html-like xml format to tagged pdf. 
	/// </summary>
	class TaggedPDFApp {
		/// <summary>
		/// The main entry point for the application.
		/// </summary>
		[STAThread]
		static void Main(string[] args) {
			string theBase = Directory.GetParent( Directory.GetCurrentDirectory() ).Parent.FullName;
			string theIn = theBase + @"\Input\";
			string theOut = theBase + @"\Output\";
 
			// simple example first
			SimpleExample(theIn, theOut);
	
			// then xml based example
			string[] theFiles = Directory.GetFiles(theIn);
			foreach (string inFile in theFiles) {
				string outFile = theOut + Path.GetFileNameWithoutExtension(inFile) + ".pdf";
				XmlConverter converter = new XmlConverter();
				converter.Convert(inFile, outFile);
			}
		}
 
		/// <summary>
		/// Example of a dynamically created tagged pdf document  
		/// </summary>
		static public void SimpleExample(string inputDirectory, string outputDirectory) {
			// Create new doc and tagged content for it
			Doc theDoc = new Doc();
			TaggedContent theContent = new TaggedContent(theDoc);
 
			//Add a container tag
			theContent.BeginTaggedItem("Container");
 
			//Add a paragraph of text
			theDoc.Rect.Inset(40, 40);
			theDoc.FontSize = 20;
			theContent.AddTaggedText("P", "Tagged PDF (PDF 1.4) is a stylized use of PDF that builds on the logical structure framework described in Section 10.6, Logical Structure. It defines a set of standard structure types and attributes that allow page content (text, graphics, andimages) to be extracted and reused for other purposes.");
 
			//Add image
			theDoc.Rect.String = "300 100 300 100";
			theContent.AddTaggedImage("Image", inputDirectory + @"images\aster1.jpg");
 
			//Add some rotated text marked with header tag (H1)
			theDoc.Rect.String = theDoc.MediaBox.String;
			theDoc.Rect.Magnify(0.5, 0.5);
			theDoc.FontSize = 30;
			theDoc.Transform.Rotate(45, theDoc.Pos.X, theDoc.Pos.Y);
			theContent.AddTaggedText("H1", "Gallia est omnis divisa in partes tres, quarum unam incolunt Belgae, aliam Aquitani, tertiam qui ipsorum lingua Celtae, nostra Galli appellantur.");
			theDoc.Transform.Reset();
 
			//Close container
			theContent.EndTaggedItem();
 
			// Dump tagged content and save pdf file
			theContent.AddToDoc();
			theDoc.Save(outputDirectory + "Simple.pdf");
		}
	}
}

Open in new window

Avatar of trg_dk
trg_dk
Flag of Denmark image

ASKER

No takers on this one ?? Really need your help to make this work :-)

Thanks,
Mark
ASKER CERTIFIED SOLUTION
Avatar of trg_dk
trg_dk
Flag of Denmark image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial