reboot
Goto Top

Mit PHP suchen und ersetzen in OpenOffice PDFs

Ich habe eine PDF-Vorlage, welche ich mit PHP durchsuche und ersetze. Funktioniert mit Adobe Reader 9 wunderbar. Nur bei Adobe Reader 10.x klappt es nicht...

Hallo zusammen

Ich habe folgendes Szenario.

Ich erstelle mit OpenOffice PDF-Dokumente. Diese durchsuche ich mit PHP und ersetze Teile daraus (Formularfelder). Das neue PDF-Dokument biete ich dem User als Download an.

Das Verfahren funktioniert grundsätzlich wunderbar. Nur bei Adobe Reader 10.x streikt es ein wenig. Weiss jemand wieso das mit Adobe Reader 10.x nicht funktioniert und bei 9.4 schon?

Mein PHP-Script:
 
function string2hex($string){
	$array = str_split($string);		
	
	foreach ($array as $value) {
		$final .= "00" .bin2hex($value);			   
	}
	
	$final = strtoupper($final);
	
	return $final;
}

$source = 'openoffice.pdf';  
$dest = 'openoffice_out.pdf';  

$search = '##StandText##';  
$replace = '1234567890123';  

$f = fopen($source, 'rb');  
$content = fread ($f, filesize ($source));

$content = str_replace(string2hex($search), string2hex($replace), $content);

// Download
session_cache_limiter("private");  
session_cache_limiter("must-revalidate");  

header('Pragma: public');  
header("Content-Disposition: attachment; filename=test.pdf");  
header("Content-type: application/pdf");  

echo $content;

Gruss reboot

Content-Key: 172668

Url: https://administrator.de/contentid/172668

Ausgedruckt am: 28.03.2024 um 12:03 Uhr

Mitglied: reboot
reboot 06.09.2011 um 16:41:29 Uhr
Goto Top
Kleine Ergänzung:

Wenn ich in das Feld klicke, erscheint der neue/ersetzte Text. Aber er ist standardmässig nicht sichtbar und wird auch nicht gedruckt...
Mitglied: reboot
reboot 06.09.2011 um 16:55:33 Uhr
Goto Top
Noch ein weiterer Anhang:

Ich hab mir das PDF auf einem PC mit Adobe 10.x heruntergeladen (dort wurde mir der neue Text nur angezeigt, wenn ich in das Textfeld geklickt habe).
Danach hab ich es mir per E-Mail gesendet und auf einem Computer mit Adobe Reader 9.4 geöffnet. Dort wurde mir der Text angezeigt...

Es liegt also an Adobe Reader... die Frage stellt sich nun, wooo?
Weiss jemand bescheid?

Danke und Gruss