요소 가져오기 앱(Asset Importer)을 연동하기
요소 가져오기 앱
요소 가져오기 앱 (AssetImporter.exe)은 포토얼라인에서 제공하는 프로그램으로, 협약된 다른 프로그램에서 또는 포토얼라인 스튜디오가 임의로 지원하는 프로그램에서 사진 파일과 정보들을 가져오는데 사용되는 중간 프로그램 입니다.
예를 들어, 요소 가져오기 앱을 적절한 명령 인자(command arguments)와 함께 실행하면, 앱에서 정보를 읽어 사진 파일들을 표시하고, 포토얼라인, 포토포트, 또는 포토슬라이드로 정보를 전달할 수 있습니다.
요소 가져오기 앱에 대한 정보는 요소 가져오기 앱 페이지에서 확인할 수 있습니다.
포토얼라인(PhotoAlign)을 실행하면서 사진 파일을 요소 탭에 미리 불러오기
1. 특정 폴더의 파일들을 불러오기단순히 특정 폴더에 포함된 내부 사진들 (가장 바깥 폴더만 해당)을 포토얼라인의 요소 탭에 미리 불러오는 방법입니다.
포토얼라인 프로그램을 실행할 때, 첫 번째 명령 인자로 폴더 경로를 전달하면 됩니다.
실행 명령 인자 예시:
"C:\Program Files\PhotoAlign Studio\PhotoAlign.exe" "C:\Users\ComputerUser\Pictures\Demo"
2. 템플릿 경로 또는 템플릿 이름을 지정해서 불러오기
특정 템플릿을 미리 적용되어 있는 상태로 사진을 불러오는 방법입니다.
템플릿의 경로 또는 템플릿의 정확한 이름이 제공되어야 합니다.
이러한 추가적인 정보는 JSON 파일로 작성되어, 포토얼라인 실행 시 명령 인자로 전달되어야 합니다.
실행 명령 인자 예시:
"C:\Program Files\PhotoAlign Studio\PhotoAlign.exe" "C:\Temp\photoalign_import.json"
단, JSON 파일이 "C:\Users\ComputerUser\Documents\PhotoAlign\api_input.json" 경로에 위치한 경우, 위와 같은 별도의 명령 인자가 없더라도 편의를 위해 포토얼라인이 해당 파일을 읽어 처리하며, 처리된 api_input.json 파일은 삭제됩니다.
templatepath에는 로드할 템플릿의 절대 경로를 입력할 수 있으며, templatename에는 템플릿의 이름을 입력할 수 있습니다.
두 가지 인자가 모두 제공된 경우, 경로를 우선 탐색하며, 경로가 템플릿이 아닌 경우 템플릿 이름을 사용합니다.
templatename은 포토얼라인이 초기에 로드하는 템플릿 명과 일치해야 하며, 포토얼라인에서 선택된 언어를 따릅니다.
mode는 포토얼라인의 메인 에디터 화면이 실행되고, 자동으로 배치할지 여부를 설정하는 인자입니다.
- "mode"값이 allocation인 경우, 사진들은 JSON파일의 "allocation" 필수 항목에 맞추어 배치됩니다. "allocation"의 키(key)값은 선택된 템플릿의 각 캔버스 이름과 일치해야 합니다.
- "mode"값이 aiallocation인 경우, 사진들은 AI가 자동으로 배치를 시도합니다. 이 설정에서는 "selectedfolder" 또는 "assetfolder" 중 하나가 반드시 설정되어 있어야 합니다.
- "mode"값이 load인 경우, 사진들은 로드되지만 자동 배치되지 않습니다.
assetfolder에 경로를 입력하면, 사진 요소 탭에 해당 사진 파일들을 로드합니다.
수동 배치 정보가 포함된 JSON 파일 예시:
{
"version": 1,
"mode": "allocation", // allocation, aiallocation, load
"templatepath": "C:\\Users\\ComputerUser\\Documents\\PhotoAlign\\CanvasTemplate\\Orthodontic Basic Photo", // Full template path
"templatename": "Orthodontic Intraoral and Facial Basic Set (3:2 Ratio)", // or language specific template name
"allocation": {
"IO Frontal": "C:\\Users\\ComputerUser\\Pictures\\Demo\\DSC_0022.JPG", // Allocation canvas name and file path
"Facial Right": "C:\\Users\\ComputerUser\\Pictures\\Demo\\DSC_0032.JPG"
},
"selectedfolder": "C:\\Users\\ComputerUser\\Pictures\\Demo2", // Folder browser default path
"assetfolder": "C:\\Users\\ComputerUser\\Pictures\\Demo3", // Load assets automatically
"from": "PhotoAlign Manager" // (Optional) Source application name
}
AI 배치가 설정된 JSON 파일 예시:
{
"version": 1,
"mode": "aiallocation",
"templatepath": "C:\\Users\\ComputerUser\\Documents\\PhotoAlign\\CanvasTemplate\\Orthodontic Basic Photo",
"templatename": "Orthodontic Intraoral and Facial Basic Set (3:2 Ratio)",
"selectedfolder": "C:\\Users\\ComputerUser\\Pictures\\Demo2", // Either selectedfolder or assetfolder must be specified for AI allocation.
"assetfolder": "C:\\Users\\ComputerUser\\Pictures\\Demo3",
"from": "PhotoAlign Manager"
}
포토얼라인이 편집한 사진들의 정보를 받아오기
포토얼라인에서 편집한 사진들의 정보 출력포토얼라인에서 사진들이 일괄 저장되고 나면, 해당 결과의 메타 정보를 항상 JSON 파일로 저장합니다.
외부 프로그램에서 필요시 해당 JSON 파일을 읽어와서 정보를 사용할 수 있습니다.
해당 JSON 파일은 다음 번 일괄 저장때 까지 유지되며, 기존 파일은 덮어쓰기 됩니다.
JSON 파일은 일반적으로 "%APPDATA%\local\Temp\photoalign_output.json"에 저장됩니다.
해당 위치에 파일이 없는 경우, 사용자 권한이 없거나, %APPDATA% 경로가 변경되었을 수 있습니다.
JSON의 각 정보는 키(key) 이름에서 유추 가능합니다.
출력되는 JSON 파일 예시:
{
"version": 1,
"templatepath": "C:\\Users\\ComputerUser\\Documents\\PhotoAlign\\CanvasTemplate\\Orthodontic Basic Photo",
"templatename": "Orthodontic Intraoral and Facial Basic Set (3:2 Ratio)",
"input": {
// any previous JSON input data if available
},
"result": [
{
"canvastitle": "IO Frontal",
"appointment": "io_frontal", // will be replaced with "class" later
"input": "C:\\Users\\ComputerUser\\Pictures\\Demo\\DSC_0022.JPG", // Original path
"output": "C:\\Users\\ComputerUser\\Pictures\\Result\\io_frontal.JPG", // Saved path
"outputfolder": "C:\\Users\\ComputerUser\\Pictures\\Result",
"outputname": "io_frontal", // Filename without extension
"extension": ".JPG", // File extension
"zoom": 1.5,
"rotation": 3.2,
"left": 0.01,
"top": 0.11,
"horizontalflip": true,
"verticalflip": false
}
]
}
포토포트(PhotoPort)에 사진 파일들 삽입하기
포토포트에 사진 파일들을 가져와서 새 폴더를 만들거나, 기존 폴더에 삽입하기
외부의 사진 파일들을 포토포트에 일괄 등록할 수 있도록 하려면, 각 파일들의 경로와 추가 정보가 포함된 JSON 파일의 절대경로를 실행 명령 인자로 전달해야 합니다.
실행 명령 인자 예시:
"C:\Program Files\PhotoAlign Studio\PhotoPort.exe" "C:\Temp\import_new_photos.json"
mode는 포토포트의 동작 모드를 설정하는 인자입니다. 현재는 "import"만 지원됩니다.
foldername이 제공되면, 사용자가 [새 환자 폴더 생성]을 선택 시 자동으로 "폴더 이름"으로 미리 입력됩니다.
folderdescription이 제공되면, 사용자가 [새 환자 폴더 생성]을 선택 시 자동으로 "폴더 설명"으로 미리 입력됩니다.
foldermemo이 제공되면, 사용자가 [새 환자 폴더 생성]을 선택 시 자동으로 "폴더 메모"로 미리 입력됩니다.
subfoldername이 제공되면, 사용자가 선택한 폴더의 하위 폴더 이름으로 미리 입력됩니다.
assetlist 배열에는 각 파일의 정보가 포함되어 있습니다.
"assetlist"의 filename은 저장될 파일 이름, filepath는 원본 파일의 절대 경로, subfolder는 해당 파일이 저장될 하위 폴더 이름입니다.
만약, "subfolder"가 제공되지 않으면, 파일은 사용자가 선택한 기본 폴더에 저장됩니다.
하나의 JSON 파일에 여러 개의 "subfolder"를 가진 파일을 한 번에 가져올 수 있습니다. 즉, 하나의 환자 폴더 안에 동시에 2개 이상의 하위 폴더를 생성하고, 각각의 폴더에 사진을 복사할 수 있습니다.
각 파일의 정보와 추가 정보가 포함된 JSON 파일 예시:
{
"version": 1,
"mode": "import",
"from": "PhotoAlign Asset Importer",
"foldername": "David 12345", // Optional
"folderdescription": "David Jones, 12345, Class II, VIP", // Optional
"foldermemo": "David Jones, 12345, Private Insurance", // Optional
"subfoldername": "2024-11-11", // Optional
"assetlist": [
{
"filename": "01.jpg",
"filepath": "C:\\Users\\ComputerUser\\Digital Camera\\IMG_01.JPG",
"subfolder": "2024-11-10" // can be blank, but should not be omitted
},
{
"filename": "02.jpg",
"filepath": "C:\\Users\\ComputerUser\\Digital Camera\\IMG_02.JPG",
"subfolder": "2024-11-11"
}
]
}
포토슬라이드(PhotoSlide)를 실행 할 때 폴더를 미리 선택하기
"C:\Program Files\PhotoAlign Studio\PhotoSlide.exe" "C:\Users\ComputerUser\Pictures\Photo Series"
위의 모든 내용은 예고 없이 변경될 수 있으며, 연동 프로토콜 이용 시 예기치 못한 오류나 버그가 발생할 수 있습니다.