2014-06-24 11 views
0

어도비 indesign 서버 CC를 사용하고 있으며 데이터 병합을 수행하려고합니다. 그것은 잘 병합, 유일한 문제는 Indesgin 서버가 너무 느리다는 것입니다. 여기 내 코드는 다음과 같습니다.어도비 indesign 서버 데이터 병합

var source = File(app.scriptArgs.getValue("sourceIndd"));  //.indd file 
var destination = File(app.scriptArgs.getValue("destination")); 
var sourceData = File(app.scriptArgs.getValue("sourceData")); //csv file with data be placed into placeholders 
var resolution = app.scriptArgs.getValue("resolution"); 

var doc = app.open(source,OpenOptions.DEFAULT_VALUE); 

doc.dataMergeProperties.selectDataSource(sourceData); 
doc.dataMergeOptions.linkImages = true; 
doc.dataMergeProperties.mergeRecords();  

app.jpegExportPreferences.jpegQuality = JPEGOptionsQuality.low; 
app.jpegExportPreferences.exportResolution =parseInt(resolution) ; 
app.jpegExportPreferences.antiAlias =true; 
app.documents.item(0).exportFile(ExportFormat.JPG, destination); 
doc.close(); 

이 코드는 생성되는 미리보기 용으로 사용되므로 품질이 중요하지 않습니다. 아무도 내가 이걸 어떻게 빨리 할 수 ​​있는지 아니? 아니면 미리보기를 내보낼 다른 방법이 있습니까? 미리 감사드립니다.

답변

0

어떤 단계가 느린 지 알고 계십니까? 개별 실행 시간을 측정하여 로그 파일에 기록하십시오. $ .hiresTimer는 시간을 측정하는 가장 좋은 방법을 제공하며, 각 액세스 후에 0으로 재설정됩니다.

운영 체제에는 성능 측정 수단이있을 수도 있습니다. 예를 들어 OSX는 활동 뷰어 또는 개발자 도구와 함께 제공되는 Instruments 응용 프로그램을 통해 함수 호출까지 프로세스를 샘플링 할 수있는 방법을 가지고 있습니다.

잘못 될 수있는 많은 것들이 있으므로 테스트 환경이 없으면 추측 할 수 없습니다. 서버가 느린 시작 스크립트로로드되고 각 작업 후에 다시 시작하도록 구성 되었습니까? 작업이 로컬에서 시작 되었습니까, 아니면 네트워크를 통해 시작 되었습니까?

실제로는 인용 된 스크립트에있는 경우 문제는 느린 공유 볼륨이거나 결함이있는 로컬 볼륨이거나 디렉토리가 넘쳐 흐를 수 있습니다. 원본 문서, 원본 데이터, 연결된 이미지 또는 출력 위치. 원본 문서에는 IDML 왕복으로 벗길 수있는 불필요한 기록 보관소가있을 수 있습니다. 나쁜 글꼴을 사용합니까? 실제 이미지 (초 복잡한 PDF, EPSF 또는 Illustrator 파일)에 문제가있을 수 있습니다. 데이터 병합이 아닌 내보내기 명령 인 경우 예를 들어 해상도 및 기타 내보내기 옵션을 사용하여 재생할 수 있으며 이미지의 다운 샘플링 된 복사본을 사용할 수 있습니다. 필자가 작성한 것처럼 간단히 추측 할 필요가 없습니다.

+0

감사합니다. Dirk! 가장 많은 시간을 소비하는 행은 "doc.dataMergeProperties.mergeRecords();"입니다. 또한 템플릿에 여러 ".eps"파일이 없지만 Indesign Server에서 "링크가 없습니다.; 파일 : C/사용자 ..."라고 말하면 문제가 될 수 있습니까? 또한 글꼴에 문제가 있습니다 ("Missing Font Arial Narrow Italic"). –