[Phpwm] instantiate word for windows

Dave Holmes Dave at neteffekt.co.uk
Thu Aug 24 09:48:28 BST 2006

All of this can be handled very neatly using CSS2 you can do page breaks in
HTML documents so continuation pages work neatly. In addition the PDF
generation libraries we use pick up and honour the CSS page breaks by
throwing new pages. 

IE 6 & Firefox both support these - not sure about IE5 and putting IE7 beta
on my machine fills me with dread having seen the mess it made of one of my
dev boxes. 

Have a read through this inform


I have used this with really good results when working with tabular data as
you can calculate the number of rows before throwing a page break. For
letters you have to be a bit cute with the length of content and fixed fonts
to try and *guesstimate* the best point to throw the page. 

I just waiting for a couple of CSS books to be delivered from Amazon so if
anything pops up in there I will let you know

-----Original Message-----
From: phpwm-bounces at mailman.lug.org.uk
[mailto:phpwm-bounces at mailman.lug.org.uk] On Behalf Of alan dunn
Sent: 24 August 2006 09:54
To: phpwm at mailman.lug.org.uk
Subject: Re: [Phpwm] instantiate word for windows

Perhaps I can prompt a wider debate.

It seems to me that the area in which php is weakest is printed output. 
I take the point that it is a server side language, so we don't have direct
control over what happens at the browser.

But I, and I am sure many of you, need solutions in a commercial environment
- and that means that almost every action results in the need for a printed
page - be it an invoice document, delivery note, monthly sales report etc.
etc. The 'paperless office' doesn't work here. 
You _have_ to issue an invoice document - and for business efficiency it
needs to be printed there and then on a printer under the sales counter that
the member of staff is standing at! It seems to me that outputting a web
page to the printer is at best a clumsy solution - reference the question I
raised a couple of months ago about  output overrunning the bottom of a page
where there are more lines on screen than a page can handle.

To generate nicely formatted complex monthly summaries I turn to Access to
read our Postgres db and use its reporting facilities with all the font
control spacing, formatting etc it offers - surely I don't have to resort to
that as a solution!

Picking up Phil's specific question - we are running Linux php and no the
output does not have to be Word - Word's mail merge provided a tool to do a
job. I need a pile of letters with variable data and image objects such as a
signature on there.

I will have a look at the RTF options but I would be very interested in
comments on this broader topic.

alan dunn

Phil Beynon wrote:
>> Hi Alan,
>> This is not something that you can do with PHP as it is strictly a 
>> server side language. There is a change you could do it with embedded 
>> vbscript or javascript in a browser but you will end up in a world of 
>> security issues and instability.
>> The most elegant solution for doing this is to generate the word 
>> document on the server and then push the content to the browser as a 
>> download, there are a number of ways you can do this.
>> If you are running on a Windows version server with PHP and office 
>> installed you can control word using the standard COM or NET objects, 
>> create your document and save to the file system. You can then use 
>> the fpassthru command to dump it to the browse. The command help with 
>> give you the info you need on setting http headers for downloads.
>> The second option is to use an RTF generation class to create basic 
>> content which can be loaded into word, if you hit google with "PHP 
>> RTF class" there are quite a few around.
>> I must admit this is not something I have every attempted to do, or 
>> wanted to do come to that as we always tend to generate PDF files 
>> from PHP, if you want to do that there is an excellent library you 
>> can use.
>> http://www.tufat.com/s_html2ps_html2pdf.htm
>> Hope this helps
>> Dave
>> -----Original Message-----
>> From: phpwm-bounces at mailman.lug.org.uk 
>> [mailto:phpwm-bounces at mailman.lug.org.uk] On Behalf Of alan dunn
>> Sent: 22 August 2006 14:08
>> To: phpwm
>> Subject: [Phpwm] instantiate word for windows
>> Hi all,
>> sorry to use such bad language, but is it possible to instantiate 
>> Word (or other MS programmes come to that) from within a php page and 
>> then preferably feed it some opening information such as which file 
>> to open?
>> I want to automate a letter writing process from one of several 
>> standard letters based on a db selection.
>> regards, alan dunn
> First thing I'd want to know with a project like this is does it 
> actually have to be done in Word? - you instantly lose all sorts of 
> control abilities.
> If its just a template with editable areas can't you use editable 
> iframes on a page that looks like Word?
> That way you retain control and dont end up with all sorts of problems 
> with say font connectivities being lost.
> Phil
> _______________________________________________
> Phpwm mailing list
> Phpwm at mailman.lug.org.uk
> https://mailman.lug.org.uk/mailman/listinfo/phpwm

Phpwm mailing list
Phpwm at mailman.lug.org.uk

More information about the Phpwm mailing list