PDF to Bitmap

cs_JDel Messages postés 14 Date d'inscription mardi 28 janvier 2003 Statut Membre Dernière intervention 1 septembre 2014 - 3 nov. 2004 à 17:38
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 - 3 nov. 2004 à 20:31
Bonjour, a tous, quelqu'un aurait il une solution pour creer un bitmap a partir d'un fichier PDF ?

J'ai trouvé ce source sur delphi3000 :

procedure GetPDFThumb(const sFileName: WideString; nWidth, nHeight: Integer; var Bitmap: TBitmap);
var
PDRect,
PDDoc,
PDPage: Variant;
begin
if Bitmap = nil then
Exit;

PDDoc := CreateOleObject('AcroExch.PDDoc');
PDRect := CreateOleObject('AcroExch.Rect');

try
PDDoc.Open(sFileName);
PDPage := PDDoc.AcquirePage(0); //Get the first Page

PDRect.Top := 0;
PDRect.Left := 0;
PDRect.Right := PDPage.GetSize.x;
PDRect.Bottom := PDPage.GetSize.y;

Bitmap.Width := PDRect.Right;
Bitmap.Height := PDRect.Bottom;

//Move to the ClipBoard
PDPage.CopyToClipboard(PDRect, 0, 0, 100);
Bitmap.LoadFromClipboardFormat(cf_BitMap, ClipBoard.GetAsHandle(cf_Bitmap), 0);

//Resize
Bitmap.Canvas.StretchDraw(Rect(0, 0, nWidth, nHeight), Bitmap);

Bitmap.Width := nWidth;
Bitmap.Height := nHeight;
except end;

VarClear(PDRect);
VarClear(PDDoc);
end;

mais j'ai une erreur lors de la compilation :

---------------------------
Notification d'une exception du débogueur
---------------------------
Le projet AMV.exe a provoqué une classe d'exception EOleSysError avec le message 'Chaîne de classe incorrecte'. Processus stoppé. Utilisez Pas-à-pas ou Exécuter pour continuer.

Merci d'avance
"/url

8-) Jérôme D
[mailto:jdelauney@free.fr jdelauney@free.fr]

6 réponses

cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
3 nov. 2004 à 17:53
L'exception EOleSysError est créée à cause CreateOleObject qui n'a pas pu s'initialiser. C'est pour cela que l'erreur est dite "chaîne de classe" (vu la tête des paramètres). Je suppose que Delphi doit se planter à ce niveau si tu as coché dans ses options "Arrêter si exception".

Cette erreur est insoluble directement. Soit la chaîne est mal saisie (je douterai), ou alors si tu n'as pas la ressource, rien ne peut fonctionner. Peut-être avec une version avancée d'Acrobat obtiendra tu quelque chose (via l'installation).
0
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
3 nov. 2004 à 18:17
... ça marche pas chez moi, ça ne bug pas à l'endroit voulu. Ce doit être très interne à une DLL de Windows (ole32, je pense).

Je m'en doutais déjà tout à l'heure: si vous n'avez pas la clé HKRC\Adobe.PDDoc dans la base de registre, c'est cuit. Pas d'interface (CLSID) réalisable avec le logiciel Adobe.
0
cs_JDel Messages postés 14 Date d'inscription mardi 28 janvier 2003 Statut Membre Dernière intervention 1 septembre 2014
3 nov. 2004 à 19:11
Woa quel rapidiité, effectivement, j'ai scrupté ma base de registre et j'ai trouvé d'autres références tel AcroExch.fpdfdoc mais pas de AcroExch.Rect et AcroExch.PDDoc , je pense que ces interfaces doivent être disponibles uniquement avec Acrobat complet et non avec le Reader. A moins quel étaient présente dans une ancienne version. Je vais télécharger le SDK et trouverai peut-être une autre solution ou je passerai directement pas le Canvas.

Merci pour tes réponses

8-) Jérôme D
[mailto:jdelauney@free.fr jdelauney@free.fr]
0
cs_JDel Messages postés 14 Date d'inscription mardi 28 janvier 2003 Statut Membre Dernière intervention 1 septembre 2014
3 nov. 2004 à 19:40
J'ai trouvé, il faut le SDK d'acrobat 5.0 car la 6.0 est payante, maintenant je vais réessayer.

Merci
8-) Jérôme D
[mailto:jdelauney@free.fr jdelauney@free.fr]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_JDel Messages postés 14 Date d'inscription mardi 28 janvier 2003 Statut Membre Dernière intervention 1 septembre 2014
3 nov. 2004 à 19:51
On peut aussi essayer de passer par ghostscript et donc pas besoin d'avoir acrobat au complet.

A plus

8-) Jérôme D
[mailto:jdelauney@free.fr jdelauney@free.fr]
0
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
3 nov. 2004 à 20:31
Adobe n'est pas d'la dobe :big) :big) :big) :big) .

Ma version de Reader est la 5 et elle est standarde. Notons au passage que cette "rapidité" est exceptionnelle grâce aux vacances. Mais demain c'est la... rentrée. Donc...

J'avais un GhostView, mais ça n'a rien changé.
0
Rejoignez-nous