La conversion de plusieurs Images au format pdf en utilisant pdfsharp
Je suis en train de convertir plusieurs images au format pdf avec pdfsharp bibliothèque.
Je suis capable de convertir l'image unique, et ça marche plutôt bien.
Et lors de la conversion bulk images
à single pdf
, je suis confronté à problème qu'il prend toutes les images et les convertit mais, après la conversion, Si je check il me montre que la dernière image qu'il n'est pas en ajoutant à l'image existante et elle remplace l'image précédente.
Alors, comment puis-je y remédier?
Toute aide sera appréciée comme je le suis, première fois de travailler avec pdf library, et de m'indiquer Si je fais une erreur.Et je vais être gald pour en savoir plus à ce sujet et je ne me sens pas bien Si vous m'a signalé l'erreur que j'ai fait.
Voici mon code:
Private Sub btnAddFolder_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAddFolder.Click
If Me.FolderBrowserDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
Dim f As New DirectoryInfo(Me.FolderBrowserDialog1.SelectedPath)
Dim fso As New System.Object
For Each file As FileInfo In f.GetFiles
Select Case file.Extension.ToLower
Case ".jpg", ".bmp", ".gif", ".png"
Me.ThumbControl1.BackgroundImage = Nothing
Me.CheckedListBox1.Items.Add(file.FullName, CheckState.Checked)
Me.ThumbControl1.AddThumbnail(file.FullName)
Me.ThumbControl1.BackgroundImage = Nothing
Me.CheckedListBox1.SelectedIndex = 0
End Select
Next
End If
End Sub
Fond travailleur:
Private Sub bw_DoWork(ByVal sender As Object, ByVal e As DoWorkEventArgs) Handles bw.DoWork
For pix As Integer = 0 To CheckedListBox1.CheckedItems.Count - 1
Try
Dim source As String = CheckedListBox1.Items(pix).ToString()
Dim destinaton As String = (TryCast(e.Argument, String()))(1)
Dim doc As New PdfDocument()
doc.Pages.Add(New PdfPage())
Dim xgr As XGraphics = XGraphics.FromPdfPage(doc.Pages(0))
Dim img As XImage = XImage.FromFile(source)
xgr.DrawImage(img, 0, 0)
doc.Save(destinaton)
doc.Close()
success = True
Catch ex As Exception
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
Next
End Sub
Bouton convertir:
Private Sub btnConvert_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnConvert.Click
bw.RunWorkerAsync(New String(1) {srcFile, destFile})
End sub
D'Économie D'Pdf:
Private Sub btnSelectDest_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSelectDest.Click
sfdDestFile.Filter = "PDF Files(*.pdf)|*.pdf"
If sfdDestFile.ShowDialog() <> System.Windows.Forms.DialogResult.OK Then
Return
End If
destFile = sfdDestFile.FileName
End Sub
OriginalL'auteur coder | 2011-12-12
Vous devez vous connecter pour publier un commentaire.
Le problème, c'est que vous êtes la création d'un nouveau document PDF sur chaque passage dans la boucle. Vous avez besoin de déplacer ce en dehors de la boucle. Aussi, vous faites référence à la page 0, pas de page
pix
. Voici comment je pourrais résoudre ce problème:OriginalL'auteur competent_tech