8791 sujets

Développement web côté serveur, CMS

Salut à vous,

J'ai une page qui affiche un PDF à l'aide de ce code :
<?php
// On veut afficher un PDF
header('Content-type: application/pdf');

// Le source du PDF
readfile('fichier_pdf.pdf');
?>

Seulement mes PDF s'affichent de manières différentes :
- la première page du PDF apparait en entier, ou
- il y a un ajustement du zoom sur la largeur (une partie de la première page est visible), ou
- il me l'affiche en 100%

Ma question est la suivante : est-il possible d'avoir un contrôle sur l'affichage du PDF à l'aide d'un langage de programmation orienté Web ?

Merci d'avance.

edit: la coloration syntaxique pour du code PHP empêche l'affichage de mon code !
Modifié par Alphonse (27 Nov 2009 - 12:44)
Modérateur
Hello,

Alphonse a écrit :

[...]
Seulement mes PDF s'affichent de manières différentes :
[...]
est-il possible d'avoir un contrôle sur l'affichage du PDF
[...]


oui, tu peux via Acrobat pro (fichier/propriété du document)

Alphonse a écrit :

[...]
à l'aide d'un langage de programmation orienté Web ?
[...]

À ma connaissance, non.

Bonne journée
Modifié par Nolem (27 Nov 2009 - 11:27)
Ok, donc il n'y a pas d'astuce en passant un paramètre dans l'URL ?
Et sinon, comment on peut faire en passant par un ActiveX ?
Résolu à l'aide de ce code :
<?php
// Inclusion et execution des fichiers
define('FPDF_FONTPATH','include/class.fpdi/font/');
require 'include/class.fpdi/fpdi.php';

// Sauvegarde du chemin du PDF
$path_pdf = 'dossier/fichier.pdf';

// Verification de l'existance du PDF sur le serveur
if(is_file($path_pdf)) {
	$pdf = new FPDI();

	$pagecount = $pdf->setSourceFile($path_pdf);
	
	for($i = 1; $i <= $pagecount; $i++) {
		$tplidx = $pdf->ImportPage($i);
		$info = $pdf->GetTemplateSize($tplidx);

		if($info['h'] > $info['w'])
			$pdf->AddPage('P');
		else if($info['w'] > $info['h'])
			$pdf->AddPage('L');
	
		$pdf->useTemplate($tplidx);
	}

	if($pagecount == 1)
		$pdf->SetDisplayMode('fullpage');
	else
		$pdf->SetDisplayMode('fullpage', 'two');

	$pdf->Output('fichier.pdf', 'I');
	$pdf->closeParsers();
}
?>