INDD CC サーバーは初めてです。Windows上で動作するIndesign サーバーを実装しました。IDML を PDFに変換する必要がありますが、問題があります。
Adobe(r) IDML(r) ファイルを操作するために、SimpleIDML Python ライブラリを使用しました。
私のサンプルスクリプトは
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 スクリプトを実行すると、次のようなエラーがスローされます。
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 とアクセスを設定する方法と解決方法がわかりませんか? 私はこれに多くの時間を費やしましたが、ヘルプやサンプル コードを見つけることができませんでした。
または、IDML から PDF に変換する他の python パッケージがあります。
前もって感謝します