GÉNÉRATION D'UN PDF AVEC COUVERTURE ET IMAGE EN PIED DE PAGE AVEC ITEXTSHARP

sergentrazor Messages postés 17 Date d'inscription vendredi 6 février 2009 Statut Membre Dernière intervention 4 juillet 2010 - 19 sept. 2009 à 23:26
sergentrazor Messages postés 17 Date d'inscription vendredi 6 février 2009 Statut Membre Dernière intervention 4 juillet 2010 - 28 juil. 2010 à 21:25
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/50589-generation-d-un-pdf-avec-couverture-et-image-en-pied-de-page-avec-itextsharp

sergentrazor Messages postés 17 Date d'inscription vendredi 6 février 2009 Statut Membre Dernière intervention 4 juillet 2010
28 juil. 2010 à 21:25
j'ai regardé (en vitesse) et j'ai l'impression qu'il y a eu des changements dans la version de la dll que je t'ai donné et celle que j'ai utilisé dans l'exemple.
Certaines conversions ne sont plus tolérées!!!


--> on explicite : Dim bfArial as BaseFont = BaseFont.CreateFont(etc...) donc pas de conversion de Object(par défaut si déclaration implicite) vers iTextSharp.text.pdf.BaseFont

--> on passe les paramètres corrects (et on explicite au passage): Dim arial As Font = New Font(bfArial, 12, Font.NORMAL, BaseColor.BLACK) donc pas de conversion de
System.Drawing en iTextSharp.text sur le style et la couleur.

bfArial est bien un iTextSharp.text.pdf.BaseFont, 12 un Int, Font.Normal un Int, BaseColor.BLACK un iTextSharp.text.BaseColor

Chez moi ça fonctionne comme ça (Pense à tes imports)...

Fais attention également au fait que cette source a vieilli et certaines variables d'environnement ne sont peut être pas les mêmes sous XP et Seven, ce code était surtout donné à des fins d'exemple...

iTextsharp est abondamment documentée en C# mais peu en VB... D'ici une ou deux semaines je vais avoir l'occasion de la réutiliser dans un projet ASP.NET codé en VB, je pense que d'ici la fin Aout je ferai un petit tuto pour l'utiliser en VB pas à pas et bien mieux expliqué...
sergentrazor Messages postés 17 Date d'inscription vendredi 6 février 2009 Statut Membre Dernière intervention 4 juillet 2010
28 juil. 2010 à 20:14
Ce soir je n'ai pas trop le temps de regarder, mais je vais jeter un oeil là dessus ce week-end...

Question:
- les options explicit et strict sont elles "off" ou "on" dans ton projet?...

essaye ceci...dans le code d'origine la déclaration était implicite, ce pourrait être l'origine du problème:

Dim bfArial as BaseFont = BaseFont.CreateFont(etc...)
Dim arial as Font = New Font(etc...)
guilleto Messages postés 256 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 20 mars 2013 1
28 juil. 2010 à 14:28
Bonjour sergentrazor,

J'essaye de faire fonctionner votre code mais cela m'indique 2 erreurs sur les lignes suivantes :
Dim arial = New Font(bfArial, 12, FontStyle.Regular, Color.Black)
Paragraphe.Add(New Chunk(redaction, New Font(arial)))

Avec comme message d'erreur :
Erreur 1 La résolution de surcharge a échoué, car aucun 'New' accessible ne peut être appelé avec ces arguments :
'Public Sub New(bf As iTextSharp.text.pdf.BaseFont, size As Single, style As Integer, color As iTextSharp.text.BaseColor)': Une valeur de type 'System.Drawing.Color' ne peut pas être convertie en 'iTextSharp.text.BaseColor'.
'Public Sub New(family As iTextSharp.text.Font.FontFamily, size As Single, style As Integer, color As iTextSharp.text.BaseColor)': Une valeur de type 'iTextSharp.text.pdf.BaseFont' ne peut pas être convertie en 'iTextSharp.text.Font.FontFamily'.
'Public Sub New(family As iTextSharp.text.Font.FontFamily, size As Single, style As Integer, color As iTextSharp.text.BaseColor)': Une valeur de type 'System.Drawing.Color' ne peut pas être convertie en 'iTextSharp.text.BaseColor'.

et

Erreur 2 La résolution de surcharge a échoué, car aucun 'New' accessible ne peut être appelé sans conversion restrictive :
'Public Sub New(family As iTextSharp.text.Font.FontFamily)': L'argument qui correspond au paramètre 'family' passe de 'Object' à 'iTextSharp.text.Font.FontFamily'.
'Public Sub New(bf As iTextSharp.text.pdf.BaseFont)': L'argument qui correspond au paramètre 'bf' passe de 'Object' à 'iTextSharp.text.pdf.BaseFont'.
'Public Sub New(other As iTextSharp.text.Font)': L'argument qui correspond au paramètre 'other' passe de 'Object' à 'iTextSharp.text.Font'.

Que dois-je faire pour corriger cela ?

Par avance merci

Olivier
sergentrazor Messages postés 17 Date d'inscription vendredi 6 février 2009 Statut Membre Dernière intervention 4 juillet 2010
1 oct. 2009 à 18:24
Je dirais problème de sécurité d'accès du code (onglet sécurité des propriétés de ton projet... Pour mon projet je n'ai pas utilisé les paramètres de sécurité ClickOnce , tu as du les définir sur application de confiance partielle non?

En passant à application de confiance totale cela devrait régler le problème, si tu tiens à utiliser ClickOnce

En règle générale, je n'utilise pas les options ClickOnce, ni la publication "basique" de visual studio (je préfère une installation classique mais avec la version express, il faut passer par des outils complémentaires je crois)...
ssskud Messages postés 4 Date d'inscription mardi 22 septembre 2009 Statut Membre Dernière intervention 1 octobre 2009
1 oct. 2009 à 09:29
Merci de ta proposition SERGENTRAZOR, mais je suis rentré chez moi entre temps et j'ai récupéré la .dll sur USB.

Par contre j'ai un autre soucis, quand je compile ce code, j'ai une erreur que je ne connais pas au niveau du code du bouton (sub)"if ExportModifié(texte)then" VS 2005 me répond :

"Cet assembly n'autorise pas les appelants d'un niveau de confiance partiel."

Désolé si cette question est triviale, je ne suis vraiment pas accoutumé à la technologie microsoft.
sergentrazor Messages postés 17 Date d'inscription vendredi 6 février 2009 Statut Membre Dernière intervention 4 juillet 2010
1 oct. 2009 à 06:59
Bah, au pire laisse moi ton mail en mp, et je t'envoie la dll, elle ne pèse que 3 Mo:-)
ssskud Messages postés 4 Date d'inscription mardi 22 septembre 2009 Statut Membre Dernière intervention 1 octobre 2009
30 sept. 2009 à 14:35
Bonjour,

Je suis actuellement connecté derrière un parfeu assez contraignant.

Est ce que l'un d'entre vous aurait un lien pour télécharger iTextSharp depuis un ftp ou quelque chose du genre.

Le parfeu bloque les pages qui contiennent téléchargement / freeware dans l’url mais pas celle qui ont ftp://.

Bref je sens que ce code peut m’être très utile pour mon projet ! : )
sergentrazor Messages postés 17 Date d'inscription vendredi 6 février 2009 Statut Membre Dernière intervention 4 juillet 2010
20 sept. 2009 à 14:08
Bonne question!
Je dirais oui puisqu'il est possible de manipuler du texte, des images et des tableaux avec itextsharp...
TigerFab Messages postés 115 Date d'inscription samedi 15 février 2003 Statut Membre Dernière intervention 18 mai 2008
20 sept. 2009 à 12:21
Ce code est intéressant.

Est-ce que iTextsharp permettrait de faire de la conversion de document (.doc/.xls --> .pdf) ?
sergentrazor Messages postés 17 Date d'inscription vendredi 6 février 2009 Statut Membre Dernière intervention 4 juillet 2010
19 sept. 2009 à 23:26
Il y a peut être plus simple, mais certainement plus compliqué!
Rejoignez-nous