Script um Tiff Dateien in JPG zu wandeln und in eine Word Datei einzufügen

Entstanden durch eine Diskussion in der Praxis und dann wieder gefunden in einer weiteren Diskussion im Forum von T2Med habe ich ein Script gebaut, welches Faxe (mehrseitige TIFF Dateien) nimmt und in eine Word Datei einbettet, damit die OrGa dieses nicht mehr von Hand machen muss.

Um das Script zu nutzen, muss das Powershell Modul PSWriteWord installiert werden, Anleitungen wie man Powershell Module installiert, finden sich im Netz… Dieses werde ich jetzt hier nicht wieder geben.

  • Alle Verzeichnisse müssen vorher angelegt werden und im Script an der entsprechenden Stelle eingefügt werden.
  • IrfanView muss in der 32Bit Version installiert werden

Nutzung wie immer auf eigene Gefahr, kein Support durch mich oder die Partner von T2Med & T2Med

Der Code sieht momentan wie folgt aus

# Script um eine mehrseitige TIFF Datei aufzusplitten und die daraus resultierenden Bilder
# in einer Word Datei zusammenzufuehren
#################
# Author JaRuest
# Version 0.2
# Download / Quelle unter http://i-k-t-s.de
#################
# Vorraussetzungen
# Installation des PowerShell Moduls PSWriteWord
# https://evotec.xyz/hub/scripts/pswriteword-powershell-module/
#################
# Angepasst werden muessen die folgenden Pfade
# Wo soll die Word Datei abgelegt werden jeweil mit \ am Ende
$PfadWord = ""
# Wo findet sich die TIFF Datei
$PfadTiff = ""
# Wo wird die TIFF Datei archiviert
$PfadTiffArchiv = ""
# Wo wird die JPG zwischengespeichert
$PfadTempJPG = ""
# Wo ist IrfanView installiert / abgelegt
$IrfanView = ""
#################
# AB HIER NICHTS MEHR ÄNDERN 
####################################################################
Import-Module PSWriteWord
$PatName = Read-Host "Bitte geben Sie den Patientennamen ohne Leerzeichen ein!"
$Datum = Get-Date -Format yyyy-MM-dd
$DateiName = "$PatName$Datum.docx"
$Datei = $pfadWord+$DateiName
$argList = "$PfadTiff*.tif /extract=($PfadTempJPG,jpg)"
####################################################################
#IrfanView konvertiert die Daten
Start-Process  -FilePath $IrfanView -ArgumentList $argList
# Es wird 10 Sekunden gewartet
Start-Sleep -s 10
# IrfanView wird hart beendet
Get-Process -Name i_view32 | Stop-Process
$Bilder = GCI $PfadTempJPG
$WordDocument = New-WordDocument $Datei
Add-WordText -WordDocument $WordDocument -Text "Bildimport für den Patienten $Patname am $Datum" -HeadingType Heading1
foreach ($Bild in $Bilder) {
    $Bild.DirectoryName
    Add-WordPicture -WordDocument $WordDocument -ImagePath $Bild.FullName
}
Save-WordDocument $WordDocument
# Aufraeumen der Dateiein
Remove-Item $PfadTempJPG\*.jpg 
Move-Item $PfadTiff\*.tif $PfadTiffArchiv

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.