Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] generowanie PDFow - dwa problemy
kufalo
post
Post #1





Grupa: Zarejestrowani
Postów: 251
Pomógł: 2
Dołączył: 24.08.2005

Ostrzeżenie: (0%)
-----


Witam, napisalem cos takiego (kod generuje w locie plik PDF):
  1. <?
  2. function pv($name,$value){
  3.  global $objServiceManager;
  4.  $pv=$objServiceManager->Bridge_GetStruct('com.sun.star.beans.PropertyValue');
  5.  $pv->Name=$name;
  6.  $pv->Value=$value;
  7.  return($pv);
  8. }
  9.  
  10. $objServiceManager=new COM('com.sun.star.ServiceManager');
  11.  
  12. $Stardesktop=$objServiceManager->createInstance('com.sun.star.frame.Desktop');
  13.  
  14. $doc=$Stardesktop->loadComponentFromURL('private:factory/swriter','_blank',0,array(pv('Hidden',true)));
  15.  
  16. $text=$doc->getText();
  17. $text->setString('Hello World!');
  18.  
  19. $doc->storeToURL('file:///C:/1.pdf',array(pv('FilterName','writer_pdf_Export')));
  20. $doc->close(true);
  21. ?>


Wymaga zaintalowanego OpenOffice oraz w przypadku nie dzialania nalezy zastosowac sie do instrukcji:
Cytat
My problem was that the COM settings did not allow remote users access to open office.
To change this access the server and follow these steps:
1. Run -> dcomcnfg
2. Component Services -> DCOM Config
3. OpenOffice.org 1.1 Text Document -> Properties -> Identity (tab)
4. Now enter a specific user that has permission (i.e. your admin username and password)

(mi pomogla zmiana na: użytkownik interakcyjny)

Problemy:

1. Czy da sie jakos przechwycic wygenerowany strumien danych (w tym przypadku PDF) ? Nie chce zapisywac na dysku, chce wyslac prosto do przegladatki...

2. Niestety metoda setString przyjmuje dane w kodowaniu jakie jest obecnie z windowsie, a zalezy mi na UFT8 i nie mam pojecia jak to zmienic.......
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 11:27