2016-05-27 3 views
2

Я новичок в сервере INDD CC. Я реализовал Indesign server работает на Windows. Мне нужно преобразовать IDML в PDF, но с проблемами.SimpleIDML Как конвертировать IDML в PDF?

Я использовал SimpleIDML Python library to manipulate Adobe(r) IDML(r) files.

Мой пример скрипта I2P.py

from simple_idml.indesign import indesign 


idml_file = "/home/user/Project/EPS/media/test/2-idml/test001.idml" 
indd_file = "/home/user/Project/EPS/media/test/InDesigndocument/test001.indd" 
url_path = "http://192.168.1.1:12345/" 
client_dir = "/home/user/Project/EPS/media/source" 
server_dir = "/home/user/Project/EPS/media/server" 

response = indesign.save_as(indd_file, [{ 
           "fmt": "pdf", 
           "params": {"colorSpace": "CMYK"}, 
          }], 
          url_path, 
          client_dir, 
          server_dir)[0] 
with open("my_file.pdf", "w+") as f: 
    f.write(response) 

В документации:

response = indesign.save_as("/path_to_file.indd", [{ 
           "fmt": "pdf", 
           "params": {"colorSpace": "CMYK"}, 
          }], 
          "http://url-to-indesign-server:port", 
          "/path/to/client/workdir", 
          "/path/to/indesign-server/workdir")[0] 

Когда я бегу I2P ОПЗ IPT бросает мне ошибку как:

Traceback (most recent call last): 
    File "ItoP.py", line 12, in <module> 
    server_path)[0] 
    File "/home/user/eps2_env/local/lib/python2.7/site-packages/simple_idml/indesign/indesign.py", line 71, in new_func 
    logger, logger_extra) 
    File "/home/user/eps2_env/local/lib/python2.7/site-packages/simple_idml/indesign/indesign.py", line 180, in save_as 
    responses = map(lambda fmt: _save_as(fmt), dst_formats_params) 
    File "/home/user/eps2_env/local/lib/python2.7/site-packages/simple_idml/indesign/indesign.py", line 180, in <lambda> 
    responses = map(lambda fmt: _save_as(fmt), dst_formats_params) 
    File "/home/user/eps2_env/local/lib/python2.7/site-packages/simple_idml/indesign/indesign.py", line 149, in _save_as 
    response = cl.service.RunScript(params) 
    File "/home/user/eps2_env/local/lib/python2.7/site-packages/suds/client.py", line 542, in __call__ 
    return client.invoke(args, kwargs) 
    File "/home/user/eps2_env/local/lib/python2.7/site-packages/suds/client.py", line 602, in invoke 
    result = self.send(soapenv) 
    File "/home/user/eps2_env/local/lib/python2.7/site-packages/suds/client.py", line 649, in send 
    result = self.failed(binding, e) 
    File "/home/user/eps2_env/local/lib/python2.7/site-packages/suds/client.py", line 702, in failed 
    r, p = binding.get_fault(reply) 
    File "/home/user/eps2_env/local/lib/python2.7/site-packages/suds/bindings/binding.py", line 265, in get_fault 
    raise WebFault(p, faultroot) 
suds.WebFault: Server raised fault: 'The specified script file can not be found: /home/user/Project/EPS/media/server/tmp9LVUWj/save_as.jsx' 

вручную я могу видеть, динамически созданный реж tmp9LVUWj внутри сервера реж. Ожидание сервера в одно и то же время.

Невозможно выяснить, как установить indesign-server/workdir и получить доступ в коде и как его решить? Я потратил много времени на это и не смог найти помощь или пример кода.

Или есть другой пакет python для преобразования из IDML в PDF.

Заранее спасибо

+0

По какой причине вы используете библиотеку python вместо встроенных функций InDesign Server? –

ответ

0

Вы писали,

вручную я могу видеть, динамически созданные реж tmp9LVUWj внутри сервера реж.

Это правда, но это не ошибка. Он заявляет, что не может найти JSX-файл с именем save_as.jsx в пределах этой директории. На самом деле это имя файла JSX, который вы намеревались разместить там, или файл, который сейчас находится там?

Смежные вопросы