Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Come creare PDF di piccole dimensioni

    Attualmente ho un tif multipagine di circa 7 mega (38 pagine) quando lo trasformo in pdf diventa di 31 mega. Come posso fare per per rimediare al problema?
    Tenete presente che uso una dll free SHARPDF per creare il pdf.
    GRAZIE

    Di seguito il codice

    Dim imageUrl As String
    Dim pdfUrl As String
    imageUrl = "C:\COmprimi\124572.tif"
    pdfUrl = "C:\COmprimi\3B.pdf"
    Dim bitmap1 As System.Drawing.Bitmap = Nothing
    Dim bitmap2 As System.Drawing.Bitmap = Nothing
    Try
    Dim time1 As DateTime = DateTime.Now
    Dim document1 As New sharpPDF.pdfDocument("Image Application", "Me", False)
    bitmap1 = New System.Drawing.Bitmap(imageUrl)
    Dim num1 As Integer = bitmap1.GetFrameCount(System.Drawing.Imaging.Frame Dimension.Page)
    ' Me.progressBar.Maximum = num1
    Dim text1 As String = ""
    Dim num2 As Integer = 0
    Dim page1 As sharpPDF.pdfPage = document1.addPage(Enumerators.predefinedPageSize.c sSharpPDFFormat)
    Do While (num2 < num1)
    ' Me.progressBar.PerformStep()
    bitmap1.SelectActiveFrame(System.Drawing.Imaging.F rameDimension.Page, num2)
    bitmap2 = DirectCast(bitmap1.Clone, System.Drawing.Bitmap)

    bitmap2.SetResolution(20, 20)

    'bitmap2.SetPixel(10, 10, System.Drawing.Color.Black)
    text1 = ("image" & num2.ToString)

    document1.addImageReference(bitmap2, text1)
    page1.addImage(document1.getImageReference(text1), 0, 0, page1.height, page1.width)
    ' 0, 0, 838, 594)
    bitmap2.Dispose()
    num2 += 1
    Loop
    document1.createPDF(pdfUrl)
    bitmap1.Dispose()
    ' Me.progressBar.Value = Me.progressBar.Maximum
    Dim span1 As TimeSpan = DateTime.Now.Subtract(time1)
    Dim text2 As String = (span1.Seconds.ToString & "," & span1.Milliseconds.ToString)
    ' MessageBox.Show(String.Format("Conversion report" & ChrW(10) & ChrW(10) & "Total TIFF frames: {0}" & ChrW(10) & "Elaboration time (s): {1}", num1, text2), "Done")
    Catch exception1 As Exception
    MessageBox.Show(exception1.Message.ToString, "Errore")
    Return
    Finally
    If (Not bitmap1 Is Nothing) Then
    bitmap1.Dispose()
    End If
    If (Not bitmap2 Is Nothing) Then
    bitmap2.Dispose()
    End If
    End Try

  2. #2
    Manca il lunguaggio! e usa il tag CODE.
    Non potresti creare direttamente un file PDF senza passare da tif a pdf?
    Potrebbe essere la risoluzione delle immagini a far aumentare la dimensione in modo sproporzionato.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.