2014-02-05 1 views
1

은 내가 하나를 사용하여 픽셀 하나의 모든 반복하는 루프 내에서 루프를 사용포토샵 선택 스크립트

비트 맵에있는 모든 흰색 픽셀을 선택하는 자바 스크립트를 작성하려고 하루 종일 보냈다 (외부 루프를 통해 갔다 수직선과 내부 루프는 수평선을 따라 갔다)

그리고 픽셀 RGB 값이 255에 근접했는지 아닌지를 검출하기 위해 컬러 샘플러를 사용했다.

어쨌든이 코드는 말 그대로 색상 견본 커서 한 번에 모든 단일 픽셀 하나를 통해 이동했다 을 완료하는 데 아주 아주 오랜 시간이 걸렸습니다.

나는 전체 이미지에서 한 범위 내의 모든 색을 선택하고 내 스크립트에서 불러내는 작업을 기록 할 수 있다는 것을 알았습니다.이 작업은 즉시 수행되었습니다.

나는 내 길은 느리다는 것에 놀라지 않습니다. 하지만 질문을 제기

포토샵은 마법의 지팡이로 선택> 범위와 도구를 사용하여 특정 기준을 충족 픽셀 전체 문서를 스캔하고 내 코드는 반드시 느린 확실히 포토샵을 실행하는 빠른 아직 선택할 수 있습니다 오는 방법 이러한 개별 효과를 얻으려면 각 개별 픽셀을 스캔해야합니다.

+0

하지만, 포토샵 코어의 저수준 코드와 픽셀 단위의 픽셀 간 해석 코드가 큰 차이가 있습니다. 당신은 마술 지팡이로 그것을하는 일과를 찾는 것이 가장 좋을 것입니다, 또는 존재하는 (존재하는) 색으로 선택하고 그것을 선택하도록 부르는 것입니다. – Orbling

답변

1

Javascript API에서 직접 지원하지 않는 Photoshop 요소 (색상 범위 선택 중 하나임)의 경우 Adobe Scripting Listener 플러그인을 사용하고 스크립트 핵심 부분에 대한 스크립트 수신기의 출력을 활용하는 것이 좋습니다. .

색 선택 here에 대해 스크립트 수신기를 사용하는 방법에 대한 자습서를 작성했습니다. 튜토리얼은 파이썬을 사용하지만 전체 개념은 똑같습니다. 스크립팅 리스너는 순수 JS 파일을 출력합니다.

픽셀을 반복하는 것보다 훨씬 빠릅니다. 포토샵 응용 프로그램의 핵심 부분 인 동일한 빠른 도구와 동작에 액세스 할 수 있기 때문에 훨씬 빠릅니다.

도움이 되길 바랍니다.

관련 문제