Skip to end of metadata
Go to start of metadata

<ac:macro ac:name="unmigrated-inline-wiki-markup"><ac:plain-text-body><![CDATA[

<ac:macro ac:name="unmigrated-inline-wiki-markup"><ac:plain-text-body><![CDATA[

Zend Framework: Zend_Service_LiveDocx Component Proposal

Proposed Component Name Zend_Service_LiveDocx
Developer Notes http://framework.zend.com/wiki/display/ZFDEV/Zend_Service_LiveDocx
Proposers Jonathan Maron
Zend Liaison ...
Revision v1.2-20090810: version 1.2 released. New and updated features: i) performance enhancements, ii) save documents to XHTML 1.0 Transitional, iii) export documents to bitmap files, iv) generate smaller documents, v) append multiple documents together, and vi) retrieve list of available server-side fonts. Details at: http://is.gd/2arBA

v1.0-20090515: Finished complete PHPUnit test cases (finally). Added 'convert-batch' sample application.

v1.0-20090507: All traffic via LiveDocx is now encrypted with SSL. There is no longer the option to NOT SSL encrypt traffic. This helps developers use phpLiveDocx as safely as possible.

v1.0-20090505: Updated autoloader to reflect changes in Zend Framework 1.8. For details, see http://is.gd/wwhC.

v1.0-20090421: Added third parameter to constructor, allowing connection to backend service to be encrypted with SSL.

v1.0-20090217: Removed document sharing examples, as per new LiveDocx Service

v1.0-20090204: Added first PHPUnit test cases.

v1.0-20090202: Split into multiple components: Tis_Service_LiveDocx, Tis_Service_LiveDocx_MailMerge, Tis_Service_LiveDocx_Convert and Tis_Service_LiveDocx_Exception

v1.0-20090129: Official start of phpLiveDocx.

v1.0-20090121: Initial release and publication of www.phpLiveDocx.org.

(wiki revision: 41)

Table of Contents

1. Overview

Zend_Pdf is a great component to generate PDF files with ZF. If you want to populate PDF templates with text, however, it can be very time consuming to get the positioning of the text fields just right. After having developed several ZF applications in which text had to be inserted into PDF templates, I knew there must be a better way and went about developing one.

The result is a family of components called Zend_Service_LiveDocx_*:

Zend_Service_LiveDocx_MailMerge allows developers to generate documents by combining structured data from PHP with a template, created in a word processor. The resulting document can be saved as a PDF, DOCX, DOC or RTF file. The concept is the same as with mail-merge.

The following template file formats (input) are supported:

  • DOCX - Microsoft Word DOCX Format
  • DOC - Microsoft Word DOC Format
  • RTF - Rich Text Format File
  • TXD - TX Text Control Format

The following document file formats are supported:

  • DOCX - Microsoft Word DOCX Format
  • DOC - Microsoft Word DOC Format
  • RTF - Rich Text Format File
  • PDF - Acrobat Portable Document Format
  • TXD - TX Text Control Format
  • TXT - ANSI Plain Text

The Zend_Service_LiveDocx_* components are an implementation of the LiveDocx web services.

Learn more here: http://www.phplivedocx.org/articles/brief-introduction-to-phplivedocx/

Getting started guide: http://www.phplivedocx.org/articles/getting-started-with-phplivedocx/

Download classes and sample applications: http://www.phplivedocx.org/downloads/

Detailed article on why Zend_Service_LiveDocx is needed: http://www.phplivedocx.org/2009/01/15/another-approach-to-ralf-eggerts-pdf-mit-zend/

Basic example: http://www.phplivedocx.org/2009/01/15/basic-phplivedocx-example/

Advanced example: http://www.phplivedocx.org/2009/01/23/more-advanced-phplivedocx-example/

Example of how to convert DOC to PDF with phpLiveDocx (other formats also supported): http://www.phplivedocx.org/2009/02/06/convert-doc-to-pdf-in-php/

Contact the author: http://www.phplivedocx.org/contact/

NOTE: Another component Zend_Service_LiveDocx_Convert is planned, but is not part of this proposal. It will be added later in the year. Zend_Service_LiveDocx_Convert will allow developers to convert word processing files from one format to another. Using Zend_Service_LiveDocx_Convert will simply be a matter of specifying the document and required format. For example, convert document.doc to PDF or document.docx to RTF.

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

4. Dependencies on Other Framework Components

  • Zend_Pdf
  • Zend_Soap_Client

5. Theory of Operation

Zend_Service_LiveDocx_MailMerge allows developers to generate documents by combining structured data from PHP with a template, created in a word processor. The resulting document can be saved as a PDF, DOCX, DOC or RTF file.

Work flow:

1. Load template in Zend_Service_LiveDocx_MailMerge.
2. Assign data to text fields in template.
3. Generate document.
4. Save as a PDF, DOCX, DOC or RTF file.

The Zend_Service_LiveDocx_* components are an implementation of the LiveDocx web services.

6. Milestones / Tasks

  • Publish article on why Zend_Service_LiveDocx_* is needed (outline problems with current solutions)
  • Publish proposal
  • Publish PHP implementation
  • Publish documentation
  • Publish sample applications
  • Publish unit tests
  • Commit to incubator
  • Commit to core

7. Class Index

  • Zend_Service_LiveDocx
  • Zend_Service_LiveDocx_MailMerge
  • Zend_Service_LiveDocx_Exception

8. Use Cases

9. Class Skeletons

Please download the current implementation from www.phpLiveDocx.org: http://www.phplivedocx.org/downloads/

Note: In the above download files, Zend_Service_LiveDocx_* are called Zend_Service_LiveDocx_*. As soon as this proposal has been approved, the classes will be renamed to reflect the ZF coding guidelines.

]]></ac:plain-text-body></ac:macro>

]]></ac:plain-text-body></ac:macro>

Labels:
phplivedocx phplivedocx Delete
livedocx livedocx Delete
soap soap Delete
webservice webservice Delete
proposals proposals Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Jan 29, 2009

    <p>Even if it sounds wounderfull.<br />
    I've just some concerns about it.</p>

    <p>1 : Is there another way to run it in non web-service, or in local network (doesn't imply free of charge)<br />
    2 : How to contact servers in secure way (sorry some data have to be keep secret)<br />
    3 : Having reals OSI standards (16500 : odt,ods,odp) in addition to pdf and Ms doc formats.</p>

    1. Jan 29, 2009

      <p>I'll second the Open Document support.</p>

    2. Apr 20, 2009

      <p>For an update on SSL, please see my comments below. Jonathan Maron.</p>

  2. Jan 29, 2009

    <p>Hello Bruno and Eric</p>

    <p>I am only too happy to answer your questions:</p>

    <p>1. There will be a version that you can purchase and deploy in a local network, in addition to the version over the Internet. I wrote about this here:</p>

    <p><a class="external-link" href="http://tinyurl.com/d9ksxu">http://tinyurl.com/d9ksxu</a></p>

    <p>The price of the local network version is not yet set.</p>

    <p>2. There is no technical reason that all communication between client and server should not be SSL secured. Indeed, I would recommend this for most applications, as most data will be of a sensitive nature.</p>

    <p>3. At the moment only the formats listed below are supported:</p>

    <p><a class="external-link" href="http://tinyurl.com/bahkxa">http://tinyurl.com/bahkxa</a></p>

    <p>Maybe in a future version of the backend technology (TX Text Control) will the formats odt, ods, odp be supported.</p>

    <p>Jonathan Maron</p>

  3. Apr 20, 2009

    <p>Hello Bruno, Eric and all other phpLiveDocx users, who requested SSL</p>

    <p>> 2 : How to contact servers in secure way (sorry some data have to be keep secret)</p>

    <p>phpLiveDocx now has SSL encryption!</p>

    <p>By far the most requested new feature in the last two months was the ability to encrypt all traffic between phpLiveDocx and the backend service LiveDocx.</p>

    <p>I am very happy to let you know that the LiveDocx guys have just implemented this in their service and that I have also updated the Tis_Service_LiveDocx_* classes. As of phpLiveDocx version 1.0-20090421, you can now specify in the constructor whether or not to use SSL.</p>

    <p>Read more and download latest version in the phpLiveDocx blog:</p>

    <p><a class="external-link" href="http://is.gd/tBBN">http://is.gd/tBBN</a></p>

    <p>All comments and feedback are very welcome.</p>

    <p>Jonathan Maron</p>

  4. Jul 14, 2009

    <ac:macro ac:name="note"><ac:parameter ac:name="title">Zend Framework Approval</ac:parameter><ac:rich-text-body>
    <p>This proposal is accepted for immediate development in the Standard Incubator, as-is.</p></ac:rich-text-body></ac:macro>

  5. Aug 10, 2009

    <p>LiveDocx 1.2 (phplivedocx-1.2-20090810) has been released. Please see <a class="external-link" href="http://is.gd/2arBA">http://is.gd/2arBA</a> for details.</p>

  6. Feb 22, 2011

    <p>Zend_Service_LiveDocx is released into the stable branch. Maybe we can archive this proposal <ac:emoticon ac:name="smile" /></p>