Relink objects to new path

Skryptu można użyć do hurtowego przelinkowania zdjęć, np. po przeniesieniu ich do innego katalogu. Podmieniamy stary fragment ścieżki dostępu do pliku na nowy i robimy "relink".

Skrypt korzysta z instalacji języka Python i dodatków umożliwiających pisanie programów korzystających z COM opisanej na stronie DTP i Python.

Parametry skryptu są zaszyte w kodzie, trzeba treść odpowiednio zmienić przed uruchomieniem.

# parameters
old_string = "stary fragment"
new_string = "nowy\\fragment"


# script body
import os.path
import win32com.client

app = win32com.client.Dispatch("Indesign.Application")

doc = app.ActiveDocument
for link in doc.Links :
    OldPath = link.FilePath
    NewPath = OldPath.replace(old_string, new_string)
    if OldPath != NewPath :
        if os.path.isfile(NewPath):
            link.Relink(NewPath)
            print OldPath + " -> " + NewPath

© Piotr Chamera, 2001–2016