begin process at 2010 02 09 23:04:59
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

POO

 > 

Classes & Objets

 > 

impression PDF


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

impression PDF

jeudi 17 janvier 2008 à 10:49:06 | impression PDF

kiki2sirom

salut à la communauté

j'ai une interrogation :

    * quelle serait la meilleure solution pour pouvoir, en cliquant sur un bouton, imprimer à la suite 1 ou plusieurs PDF se trouvant déjà sur le serveur ?

est-il posible de le faire sans ouvrir les PDF ?
sinon est-ce plutôt possible en les ouvrant en background ?
est-ce possible en lançant l'impression sans ouvrir la fenêtre d'impression classique ?
une classe d'impression existerait-elle pour ce faire ?
...

en gros je cherche une solution pour un client où celui-ci clique sur un icône qui va imprimer un ou plusieurs fichiers PDF qui se trouve sous htdocs..../pdf/... : solution idéale, donc une solution la plus transparente possible pour le client

Merci par avance pour votre aide

kiki
jeudi 17 janvier 2008 à 12:35:57 | Re : impression PDF

malik7934

Tu peux le faire avec FPDF!

Moi j'ai un exemple où le fichier au final se lance tout seul à l'imprimante :-) Je sais plus d'où je le sors, surement du site de fpdf.

Je te le file tel quel, je ne fais pas de support.

<?php

define('FPDF_FONTPATH','font/');
require('fpdf.php');
require('fpdf_js.php');

class PDF extends PDF_Javascript
{
    function Pointille($x1=0,$y1=0,$x2=210,$y2=297,$epaisseur=0.2,$nbPointilles=50)
    {
        $this->SetLineWidth($epaisseur);
        $longueur=abs($x1-$x2);
        $hauteur=abs($y1-$y2);
        if($longueur>$hauteur) {
            $Pointilles=($longueur/$nbPointilles)/2; // taille des pointilles
        }
        else {
            $Pointilles=($hauteur/$nbPointilles)/2;
        }
        for($i=$x1;$i<=$x2;$i+=$Pointilles+$Pointilles) {
            for($j=$i;$j<=($i+$Pointilles);$j++) {
                if($j<=($x2-1)) {
                    $this->Line($j,$y1,$j+1,$y1); // on trace le pointillé du haut, point par point
                    $this->Line($j,$y2,$j+1,$y2); // on trace le pointillé du bas, point par point
                }
            }
        }
        for($i=$y1;$i<=$y2;$i+=$Pointilles+$Pointilles) {
            for($j=$i;$j<=($i+$Pointilles);$j++) {
                if($j<=($y2-1)) {
                    $this->Line($x1,$j,$x1,$j+1); // on trace le pointillé du haut, point par point
                    $this->Line($x2,$j,$x2,$j+1); // on trace le pointillé du bas, point par point
                }
            }
        }
    }

function AutoPrint($dialog=false)
{
    //Lance la boîte d'impression ou imprime immediatement sur l'imprimante par défaut
    $param=($dialog ? 'true' : 'false');
    $script="print($param);";
    $this->IncludeJS($script);
}

function AutoPrintToPrinter($server, $printer, $dialog=false)
{
    //Imprime sur une imprimante partagée (requiert Acrobat 6 ou supérieur)
    $script = "var pp = getPrintParams();";
    if($dialog)
        $script .= "pp.interactive = pp.constants.interactionLevel.full;";
    else
        $script .= "pp.interactive = pp.constants.interactionLevel.automatic;";
    $script .= "pp.printerName = '\\\\\\\\".$server."\\\\".$printer."';";
    $script .= "print(pp);";
    $this->IncludeJS($script);
}

}

function generatePDF(){
    $pdf=new PDF();
    $pdf->Open();
    $pdf->AddPage();
    $pdf->SetDrawColor(200);
    $pdf->Pointille(10,10,200,100);
    $pdf->SetFont('Arial','B',30);
    $pdf->SetXY(40,10);
    $pdf->Cell(125,30,"test",0,0,'C',0);
    $pdf->AutoPrint(false);
    $pdf->Output('test2.pdf');
}

function showGeneratedPDF($name){
    $pdf->Output($name);
}

echo '<form name="generate" method="POST" action=""><input type="hidden" name="gen" value="1">';
echo '<a href="JavaScript:document.generate.submit();">generate and print</a>';
echo '</form>';

$gen = 0;
if (isset($_POST)){
        if (isset($_POST['gen'])){
                $gen = 1;
        }
}

$show = 0;
if (isset($_POST)){
        if (isset($_POST['show'])){
                $show = 1;
        }
}

if ($gen == 1){
        generatePDF();


    if ($show==1) showGeneratedPDF('test2.pdf');

    echo '<form name="generatedPDF" method="POST" action=""><input type="hidden" name="show" value="1">';
    echo '<a href="JavaScript:document.generatedPDF.submit();">show</a>';
    echo '</form>';


        echo '&nbsp;<a href="test2.pdf">Imprimer</a>';
}
?>

/*************************** LE FICHIER JS  ***************************/
<?php


class PDF_Javascript extends FPDF {

    var $javascript;
    var $n_js;

    function IncludeJS($script) {
        $this->javascript=$script;
    }

    function _putjavascript() {
        $this->_newobj();
        $this->n_js=$this->n;
        $this->_out('<<');
        $this->_out('/Names [(EmbeddedJS) '.($this->n+1).' 0 R ]');
        $this->_out('>>');
        $this->_out('endobj');
        $this->_newobj();
        $this->_out('<<');
        $this->_out('/S /JavaScript');
        $this->_out('/JS '.$this->_textstring($this->javascript));
        $this->_out('>>');
        $this->_out('endobj');
    }

    function _putresources() {
        parent::_putresources();
        if (!empty($this->javascript)) {
            $this->_putjavascript();
        }
    }

    function _putcatalog() {
        parent::_putcatalog();
        if (isset($this->javascript)) {
            $this->_out('/Names <</JavaScript '.($this->n_js).' 0 R>>');
        }
    }
}
?>
 

*****
noisy communication - wherever, be everywhere!

vendredi 18 janvier 2008 à 12:12:24 | Re : impression PDF

kiki2sirom

salut merci de ton aide,

j'ai essayé ton script mais quand je clique sur "Imprimer" : il m'ouvre le PDF et puis c'est tout.

Ton exemple fonctionne avec toutes les versions de PDF ?

kiki
vendredi 18 janvier 2008 à 13:02:49 | Re : impression PDF

malik7934

donne moi ton mail en MP et je t'envoie le toute...

*****
noisy communication - wherever, be everywhere!

vendredi 18 janvier 2008 à 13:02:50 | Re : impression PDF

malik7934

Réponse acceptée !
donne moi ton mail en MP et je t'envoie le toute...

*****
noisy communication - wherever, be everywhere!

lundi 20 avril 2009 à 14:27:05 | Re : impression PDF

fouadabrouk

Bonjour tout le monde, J'ai exactement le même problème. Serait-il possible de m'éclairer sur ce point ? Merci d'avance...


Cette discussion est classée dans : solution, impression, possible, imprimer, pdf


Répondre à ce message

Sujets en rapport avec ce message

impression pdf [ par baham ] salut tous jvoudrai savoir si c'était possible de laisser les utilisateur visionner des pdf sans qu'ils puissent les imprimer ni les enregistrer (en p Imprimer en DOS par port USB.... [ par GLBX ] J'ai développé des logiciels sous Pascal, en mode console, en utilisant la variable fournie pour l'imprimante.Cette redirection de sortie cible le por Impression php avec la fonction printer [ par ukos ] Bonjourj aimerai savoir si il est possible d'imprimer une chaine qui contien du HTML avec la fonction PRINTER,j ai fait un test d'impression mais il m pb impression [ par fmazoue ] voila j'ai un grand formulaire (un tableau avec des cases colorier selon valeurs choisies)! et je voudrais l'imprimer mais le pb c que mes cases de ta impression de fichiers [ par putch ] bonjour à tous !voila mon soucij'ai un repertoire pdf/ lequel se trouve un certains nombre de fichiers pdf :)je souhaiterai un lien/bouton pour lancer comment imprimer les donnes en pdf en php [ par bassouma10 ] salut tousj'ai formulaire de gestion des patients et je veut imprimer ces donnees de ce patient en pdf en php et je ne sais pas le faire .merci d'avan PDF impression sur des grande étiquettes [ par jordangj ] Bonjour,je voudrai imprimer des information ce situant sur une Base de donnéemerci de vos réponcesGJ récupéré le titre d'un pdf [ par adrick ] bonjour,je cherche à récuper le titre d'un pdf cela, si possible, sans utiliser de classe ou de librairie a installer sur le serveurest-ce que cela es imprimer une partie de ma page+exporter en pdf [ par salasalasala ] [b]salut à tous ,vous peuvez m'aider pour savoir comment imprimer une partie de page,et comment exporter un tableau dans ma page.php en pdf ou excel, Recherche de solution pour exportation de contenu HTML vers PDF [ par sburjade ] Bonjour, Je recherche une solution, payante s'il le faut, pour exporter des contenus HTML vers PDF. J'aurai pu me contenter de la classe FPDF et de


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,437 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales