tincho   24-03-2021, 10:05
#1
Hola a todos.                          [Imagen: qfHcNAI.png]
Debido a la lentitud que la extracción de imágenes de un pdf confería a Control-Book decidí investigar el tema de las tareas en segundo plano que, como saben, están disponibles desde la versión 3.3. El resultado promete y hace mas "pro" la app.
Para usarla hay que crear una clase y luego instanciarla. Dentro de la clase tiene que haber un método Main sin parámetros. para enviarle parámetros a la clase se ponen variables globales públicas.
Ejemplo de lo que hay dentro de la clase:
Código:
Inherits Task

Public filePDF As String
Public dirOutput As String

Public Sub Main()

  Dim documentPDF As PdfDocument
  Dim page As Integer
  Dim fileImage As String
  Dim imageRam As Image

  If Exist(filePDF) Then
    documentPDF = New PdfDocument(filePDF)
    If Exist(dirOutput) Then
      For page = 0 To documentPDF.Max
        fileImage = dirOutput &/ Format(page, "0000") & ".png"
        If Exist(fileImage) = False Then
          imageRam = documentPDF[page].Render(, 150)
          imageRam.Save(fileImage, 80)
        Endif
      Next
    Endif
  Endif
End
Ejemplo de como "llamar" la clase desde el programa principal
Código:
Public Sub Form_Open()
  Dim back As Extract

  back = New Extract  ' Creacion de una nueva instancia de la clase en segundo plano
  back.filePDF = User.Home &/ "tmp.pdf" 'Asignación del primer parámetro
  back.dirOutput = "/tmp" 'Asignación del segundo parámetro
End
Espero que les resulte de utilidad.
Saludos.

1 Saludo.
Shell   24-03-2021, 13:29
#2
Gracias Tincho.

"El conocimiento es la mejor inversión que se puede hacer" - Abraham Lincoln
tincho   27-03-2021, 14:16
#3
(24-03-2021, 13:29)Shell escribió: Gracias Tincho

De nada.

1 Saludo.
  
Usuarios navegando en este tema: 1 invitado(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.