2 votos

Powershell agrega dinámicamente imagen a palabra

Un poco de ayuda con esto, estoy tratando de insertar imágenes dinámicamente en un documento de Word. Poco de historia, tengo una carpeta de aproximadamente 1000 png. Deseo insertar cada png en su propio documento de Word, y luego guardar como una palabra .docx (Salvando Sé cómo obtener), actualmente tengo un bucle para obtener cada documento, pero parece que no puedo encontrar la forma de agregar la imagen, sin codificar la ruta de cada archivo. Por favor Aconseje, todavía un poco nuevo para powershell

     $Source = "C:\test"

$word_app = New-Object -ComObject word.application

Get-Childitem -Path $Source -recurse |  Where-Object { $_.extension -eq  ".png"} | % {
  $word_app.Visible = $True  
  $objDoc = $word_app.Documents.Add()  
  $objSelection = $word_app.Selection 

  $objShape = $word_app.Shapes 
  [void] $objShape.AddPicture() 
}
 

0voto

Antony Puntos 524
$Source = Get-Childitem -Path C:\test -recurse |  Where-Object { $_.extension -eq  '.png'}
    $word_app = new-object -comobject word.application

     ForEach ( $i in $Source ) {
        $word_app.Visible = $True
        $objDoc = $word_app.documents.add()
        $objSelection = $word_app.Selection
        $ImageName = $i.FullName
        $objSelection.InlineShapes.AddPicture($ImageName)
        $objSelection.InsertCaption(-1, "`t $i")
        $filename = "c:\\test\" + $i.BaseName + ".docx"
        $objDoc.SaveAs([REF]$filename)
        $objDoc.Close()
     }

    # Close Word
    $word_app.Quit()
    [System.Runtime.Interopservices.Marshal]::ReleaseComObject($objDoc)

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: