1
 4

Générez un PDF/A

makepdfa

POST https://tesseractor.com/api/v1/makepdfa?login=&password=

loginVotre code d'identification.
passwordVotre mot de passe.
multipart/form-data
fileContenu du PDF ou de l'image JPG, PNG ou GIF en binaire.
profileNiveau de conformité.

Mettez profile à 1b, 2b ou 3b.

fox.jpg

$ curl -D - -X POST "https://tesseractor.com/api/v1/makepdfa?login=abcdef&password=ABCDEF" -F "profile=2b" -F "file=@fox.jpg" -o pdfa.pdf

Affichez le PDF/A :

$ evince pdfa.pdf

Vérifiez le PDF/A :

$ curl -s --fail --show-error -X POST "https://tesseractor.com/api/v1/checkpdfa?login=abcdef&password=ABCDEF" -F "profile=2b" -F "file=@pdfa.pdf"
{"status":"success","data":null}

Téléchargez le code des fonctions sendpost et file_mime_type de la librairie iZend. Copiez les fichiers dans l'espace de votre application.

NOTE : Reportez-vous à la page Appelez l'API du service pour une description des fonctions sendpost et file_mime_type.

Ajoutez le fichier makepdfa.php avec le contenu suivant :

  1. require_once 'sendhttp.php';
  2. require_once 'filemimetype.php';

Charge le code des fonctions sendpost et file_mime_type.

  1. function makepdfa($login, $password, $file, $profile='2b', $output='pdfa.pdf') {

Définit la fonction makepdfa. $login est votre code d'identification. $password est votre mot de passe. $file est le chemin d'accès du fichier PDF, JPEG, PNG ou GIF à convertir. $profile est le niveau de conformité requis, i.e. '1b', '2b' ou '3b', $output est le chemin d'accès du fichier PDF/A en sortie.

  1.     $curl = 'https://tesseractor.com/api/v1/makepdfa' . '?' . 'login=' . urlencode($login) . '&' . 'password=' . urlencode($password);

Met $curl à l'URL de l'action makepdfa avec le code d'identification et le mot de passe du compte de l'utilisateur. $login et $password doivent être échappés.

  1.     $args = array(
  2.         'profile'   => $profile,
  3.     );

Prépare la liste des arguments du POST : profile - le niveau de conformité requis.

  1.     $files=array('file' => array('name' => basename($file), 'tmp_name' => $file, 'type' => file_mime_type($file)));

Prépare la liste des fichiers attachés au POST : file - le fichier PDF, JPEG, PNG ou GIF à convertir avec le nom du fichier, le chemin d'accès au fichier et son type MIME.

  1.     $response=sendpost($curl, $args, $files);

Envoie la requête HTTP avec sendpost. Les arguments login et password sont déjà dans $curl.

  1.     if (!$response or $response[0] != 200) {
  2.         return false;
  3.     }

Si $response vaut false, le serveur est inaccessible. Si $response[0] ne contient pas le code de retour HTTP 200 Ok, une erreur d'exécution s'est produite. En cas d'erreur, makepdfa retourne false.

  1.     return @file_put_contents($output, $response[2]);
  2. }

Retourne true si le contenu du PDF/A a bien été écrit dans le fichier de sortie, sinon false.

EXEMPLE

En supposant que vous avez sauvé les fichiers sendhttp.php, filemimetype.php et makepdfa.php dans le répertoire courant, lancez PHP en mode interactif, chargez la fonction makepdfa et appelez-la avec votre code d'identification et votre mot de passe, le chemin d'accès à un fichier PDF, JPEG, PNG ou GIF et un niveau de conformité en argument :

$ php -a
php > require_once 'makepdfa.php';
php > makepdfa('abcdef', 'ABCDEF', 'file.pdf', '2b');
php > quit

Affichez le PDF/A :

$ evince pdfa.pdf
VOIR AUSSI

Appelez l'API du service, Validez un PDF/A, Recherchez des virus

Commentaires

Pour ajouter un commentaire, cliquez ici.