2506회 정기 채점결과
This commit is contained in:
BIN
00_DIC_2506C_TEST.xlsx
Normal file
BIN
00_DIC_2506C_TEST.xlsx
Normal file
Binary file not shown.
BIN
00_DPI_2506C_TEST.xlsx
Normal file
BIN
00_DPI_2506C_TEST.xlsx
Normal file
Binary file not shown.
@@ -39,7 +39,7 @@ def copy_dic_subdirs(source_root, target_root_a, target_root_b, target_root_c, t
|
||||
|
||||
# 사용법
|
||||
exam_round = "2506"
|
||||
source_directory = r"C:\Users\dra\project\GOM\DIC\회차별채점자료\2506\정답" # 원본 디렉토리 경로
|
||||
source_directory = r"C:\Users\dra\project\data\제2506회 정기\답안파일\제2506회 디지털정보활용능력 답안파일\충북강원지부\신촌정보통신학교" # 원본 디렉토리 경로
|
||||
|
||||
target_directory_a = f".\\output\\{exam_round}\\A" # '1교시'의 타겟 경로
|
||||
target_directory_b = f".\\output\\{exam_round}\\B" # '2교시'의 타겟 경로
|
||||
|
||||
Binary file not shown.
BIN
250704_DIC_2506A_채점결과.xlsx
Normal file
BIN
250704_DIC_2506A_채점결과.xlsx
Normal file
Binary file not shown.
BIN
250704_DIC_2506B_채점결과.xlsx
Normal file
BIN
250704_DIC_2506B_채점결과.xlsx
Normal file
Binary file not shown.
BIN
250704_DIC_2506C_채점결과.xlsx
Normal file
BIN
250704_DIC_2506C_채점결과.xlsx
Normal file
Binary file not shown.
BIN
250704_DPI_2506C_채점결과.xlsx
Normal file
BIN
250704_DPI_2506C_채점결과.xlsx
Normal file
Binary file not shown.
@@ -492,7 +492,8 @@
|
||||
},
|
||||
"4": {
|
||||
"type": "layer.Effects",
|
||||
"ele": "//Layer[Name[@value='{search}']]/Effects/Item",
|
||||
"ele": "//Layer/Effects/Item",
|
||||
"ele_temp": "//Layer[Name[@value='{search}']]/Effects/Item",
|
||||
"search": "Museum",
|
||||
"value": {
|
||||
"name": "선명하게",
|
||||
|
||||
@@ -173,7 +173,6 @@ function getGpdpScore(gpdpData, scoringJson, index) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (type === "none") {
|
||||
console.log("❌ 채점하지 않음");
|
||||
scoringResult[key] = "확인필요";
|
||||
@@ -191,31 +190,9 @@ function getGpdpScore(gpdpData, scoringJson, index) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// []
|
||||
// else if (type === "layer.exists") {
|
||||
// const layerNameList = xpath.select(ele, gpdpXmlDoc);
|
||||
// const layerNames = layerNameList.map(layer => layer.value);
|
||||
// let isMatched = false
|
||||
|
||||
// let result = findSimilarString(gpdpXmlDoc, rightAnswer, 0.8);
|
||||
// if (result !== null) {
|
||||
// userAnswer = result;
|
||||
// isMatched = true;
|
||||
// }
|
||||
|
||||
// if (isMatched) {
|
||||
// totalScore += compareAndScore(userAnswer, rightAnswer, point, key, scoringResult, {
|
||||
// type: 'force-correct'
|
||||
// });
|
||||
// }
|
||||
// else {
|
||||
// totalScore += compareAndScore(userAnswer, rightAnswer, point, key, scoringResult);
|
||||
// }
|
||||
// }
|
||||
|
||||
// [1-4] 사진1 > 조정
|
||||
else if (type === "layer.Effects") {
|
||||
const effects = xpath.select(ele, gpdpXmlDoc);
|
||||
const effects = ele ? xpath.select(ele, gpdpXmlDoc) : [];
|
||||
|
||||
let isMatched = false;
|
||||
for (const item of effects) {
|
||||
@@ -474,7 +451,15 @@ function getGpdpScore(gpdpData, scoringJson, index) {
|
||||
// [5-20]
|
||||
else if (type === 'shadow') {
|
||||
const shapes = xpath.select(ele, gpdpXmlDoc);
|
||||
|
||||
if (!(shapes?.length)) {
|
||||
userAnswer = {
|
||||
shadow: null,
|
||||
width: null,
|
||||
distance: null,
|
||||
blur: null,
|
||||
angle: null,
|
||||
}
|
||||
}
|
||||
for (const shape of shapes) {
|
||||
// 그림자 설정 여부
|
||||
const shadowExists = xpath.select1('contains(draw_type/@value, "Shadow")', shape);
|
||||
@@ -505,7 +490,6 @@ function getGpdpScore(gpdpData, scoringJson, index) {
|
||||
blur: null,
|
||||
angle: null,
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
// console.log("🚀 ~ userAnswer:", userAnswer);
|
||||
|
||||
@@ -14,13 +14,13 @@ const getToday = require('./getToday.js');
|
||||
const todayDate = getToday();
|
||||
|
||||
const examRound = '2506';
|
||||
// const DICorDPI = 'DIC'
|
||||
const DICorDPI = 'DPI'
|
||||
const DICorDPI = 'DIC'
|
||||
// const DICorDPI = 'DPI'
|
||||
const examTypes = [
|
||||
// 'A',
|
||||
// 'B',
|
||||
'A',
|
||||
'B',
|
||||
'C',
|
||||
// 'D'
|
||||
'D'
|
||||
];
|
||||
|
||||
// testMode가 true일 경우 TEST 폴더에 있는 답안 파일을 읽어옴
|
||||
@@ -30,7 +30,9 @@ const testMode = false;
|
||||
const outputExcelFiles = [];
|
||||
|
||||
examTypes.forEach(type => {
|
||||
const scoringJson = require(`./${DICorDPI}_${examRound}${type}.json`);
|
||||
const jsonPath = `./${DICorDPI}_${examRound}${type}.json`
|
||||
if ( !fs.existsSync(jsonPath)) return;
|
||||
const scoringJson = require(jsonPath);
|
||||
const answerFilesDir = `./output/${examRound}/${type}/${testMode ? 'TEST' : DICorDPI}`;
|
||||
let outputExcelFile = `./${todayDate}_${DICorDPI}_${examRound}${type}_채점결과.xlsx`;
|
||||
if (testMode) {
|
||||
@@ -516,7 +518,7 @@ function getGmepScore(gmepData, scoringJson, index) {
|
||||
const crFilter = xpath.select1(xpathExpr, gmepXmlDoc);
|
||||
if (!crFilter) {
|
||||
userAnswer = null;
|
||||
totalScore += compareAndScore(userAnswer, rightAnswer, point, key, scoringResult);
|
||||
// totalScore += compareAndScore(userAnswer, rightAnswer, point, key, scoringResult);
|
||||
}
|
||||
else {
|
||||
userAnswer = {}
|
||||
@@ -529,15 +531,17 @@ function getGmepScore(gmepData, scoringJson, index) {
|
||||
const attr = attributes.getNamedItem(keyName);
|
||||
userAnswer[keyName] = attr ? attr.value : null;
|
||||
}
|
||||
// totalScore += compareAndScore(userAnswer, rightAnswer, point, key, scoringResult);
|
||||
}
|
||||
}
|
||||
totalScore += compareAndScore(userAnswer, rightAnswer, point, key, scoringResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 동영상 클립 트랜지션 [2-15, 18, 21]
|
||||
else if (type === 'clipTransition') {
|
||||
const crclipIndex = getCRClipIndex(media);
|
||||
let crtrackClipIndex = getCRTrackClipIndex(crclipIndex, "비디오1");
|
||||
let isMatched = false;
|
||||
|
||||
if (crtrackClipIndex == -1) {
|
||||
userAnswer = null;
|
||||
@@ -559,7 +563,6 @@ function getGmepScore(gmepData, scoringJson, index) {
|
||||
}
|
||||
else {
|
||||
userAnswer = {};
|
||||
let isMatched = false;
|
||||
|
||||
for (let i = 0; i < crTransFilter.length; i++) {
|
||||
const crTransFilterNode = crTransFilter[i];
|
||||
@@ -598,6 +601,8 @@ function getGmepScore(gmepData, scoringJson, index) {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// 일치하지 않으면 null 처리
|
||||
if (!isMatched) {
|
||||
// userAnswer = null;
|
||||
@@ -609,8 +614,6 @@ function getGmepScore(gmepData, scoringJson, index) {
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
else if (type == "Mute") {
|
||||
const crclipIndex = getCRClipIndex(media);
|
||||
@@ -633,7 +636,7 @@ function getGmepScore(gmepData, scoringJson, index) {
|
||||
else {
|
||||
const xpathExpr = ele?.replace(/{CRClipIndex}/g, crclipIndex);
|
||||
const imageLength = xpath.select1(xpathExpr, gmepXmlDoc);
|
||||
userAnswer = parseInt(imageLength.value, 10);
|
||||
userAnswer = parseInt(imageLength?.value ?? '0', 10);
|
||||
}
|
||||
totalScore += compareAndScore(userAnswer, rightAnswer, point, key, scoringResult);
|
||||
}
|
||||
@@ -654,7 +657,7 @@ function getGmepScore(gmepData, scoringJson, index) {
|
||||
userAnswer = null;
|
||||
} else {
|
||||
const length = crTrackClip.getAttribute('Length');
|
||||
userAnswer = parseInt(length, 10);
|
||||
userAnswer = parseInt(length ?? '0', 10);
|
||||
}
|
||||
}
|
||||
else if (type.includes('Effect')) {
|
||||
@@ -716,7 +719,7 @@ function getGmepScore(gmepData, scoringJson, index) {
|
||||
const crtrackClipIndex = getCRTrackClipIndex(index, "텍스트") + 1 // XML 1-based index
|
||||
const clipLength = xpath.select1(`//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[${crtrackClipIndex}]/@Length`, gmepXmlDoc);
|
||||
|
||||
userAnswer = parseInt(clipLength.value, 10);
|
||||
userAnswer = parseInt(clipLength?.value ?? '0', 10);
|
||||
totalScore += compareAndScore(userAnswer, rightAnswer, point, key, scoringResult);
|
||||
}
|
||||
// 자막 텍스트(글자, 폰트, 크기, 색상) [2-5, 6, 7, 8] [2-22, 23, 24, 25]
|
||||
|
||||
12
회차별채점자료/2506/README.md
Normal file
12
회차별채점자료/2506/README.md
Normal file
@@ -0,0 +1,12 @@
|
||||
# 제2506회 확인필요
|
||||
|
||||
## 답안파일 경로 및 시험종류, 유형 상이한 경우
|
||||
|
||||
- 경북지역본부\경북대학교-정보화본부\2실\3교시\\**DIC** > **DPI** 변경
|
||||
- 곰픽인데 포토샵으로 분류되어있음
|
||||
- 000062-허필남
|
||||
- 000332-장은숙
|
||||
|
||||
- 충북강원지부\신촌정보통신학교\1실\3교시\DIC
|
||||
- 답안 저장 경로 오류
|
||||
- ***수험자명\dic_03_000000_수험자명*** 형식으로 저장
|
||||
739
회차별채점자료/2506/json_채점기준표/0704/DIC_2506A.json
Normal file
739
회차별채점자료/2506/json_채점기준표/0704/DIC_2506A.json
Normal file
@@ -0,0 +1,739 @@
|
||||
{
|
||||
"0": {
|
||||
"1": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"2": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"3": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"4": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"5": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"6": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"7": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"8": {
|
||||
"ele": "$[?(@.width == 65 && @.height == 45)]",
|
||||
"type": "size",
|
||||
"value": {
|
||||
"width": 65,
|
||||
"height": 45
|
||||
},
|
||||
"point": 4
|
||||
},
|
||||
"9": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"1": {
|
||||
"1": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"2": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"3": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"4": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"5": {
|
||||
"ele": "$.children[?(@.name=='Trail with Water')].name",
|
||||
"value": "Trail with Water",
|
||||
"point": 4
|
||||
},
|
||||
"6": {
|
||||
"ele": "$.children[?(@.name=='Trail with Water')].text.font.names[0]",
|
||||
"type": "font",
|
||||
"value": "Arial",
|
||||
"point": 2
|
||||
},
|
||||
"7": {
|
||||
"ele": "$.children[?(@.name=='Trail with Water')].text.font.names[0]",
|
||||
"value": "Arial-BoldItalicMT",
|
||||
"point": 2
|
||||
},
|
||||
"8": {
|
||||
"ele": "$.children[?(@.name=='Trail with Water')].text.font.sizes[0]",
|
||||
"value": 48,
|
||||
"point": 2
|
||||
},
|
||||
"9": {
|
||||
"ele": "$.children[?(@.name=='Trail with Water')].text.font.colors[0]",
|
||||
"type": "color",
|
||||
"value": "76f3c8",
|
||||
"point": 2
|
||||
},
|
||||
"10": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"11": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"12": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"13": {
|
||||
"ele": "$.children[?(@.name=='물길 따라 둘레길')].name",
|
||||
"value": "물길 따라 둘레길",
|
||||
"point": 4
|
||||
},
|
||||
"14": {
|
||||
"ele": "$.children[?(@.name=='물길 따라 둘레길')].text.font.names[0]",
|
||||
"type": "font",
|
||||
"value": "GungsuhChe",
|
||||
"point": 2,
|
||||
"desc": {
|
||||
"돋움체": "DotumChe",
|
||||
"궁서체": "GungsuhChe",
|
||||
"굴림체": "GulimChe",
|
||||
"휴먼옛체": "YetR"
|
||||
}
|
||||
},
|
||||
"15": {
|
||||
"ele": "$.children[?(@.name=='물길 따라 둘레길')].text.font.sizes[0]",
|
||||
"value": 36,
|
||||
"point": 2
|
||||
},
|
||||
"16": {
|
||||
"ele": "$.children[?(@.name=='물길 따라 둘레길')].text.font.colors[0]",
|
||||
"type": "color",
|
||||
"value": "fafd00",
|
||||
"point": 2
|
||||
},
|
||||
"17": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"18": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"19": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"20": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"21": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"22": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"23": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"24": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"25": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"26": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"27": {
|
||||
"ele": "$[?(@.width == 65 && @.height == 45)]",
|
||||
"type": "size",
|
||||
"value": {
|
||||
"width": 65,
|
||||
"height": 45
|
||||
},
|
||||
"point": 4
|
||||
},
|
||||
"28": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"2": {
|
||||
"1": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[not(@Length<='5' and @ClipLength='-1')]/@ClipIndex",
|
||||
"type": "mediaOrder",
|
||||
"value": ["동영상.mp4", "이미지1.jpg", "이미지3.jpg", "이미지2.jpg"],
|
||||
"point": 4,
|
||||
"desc": "클립의 ClipIndex값이 -1인 경우와 길이가 5프레임 이하인 경우는 제외한다."
|
||||
},
|
||||
"2": {
|
||||
"ele": "/CROASTERP/CRTrackArr[1]/CRVideoTrackArr[1]/CRTrackList[1]/CRTrackClip[1]/@Speed",
|
||||
"type": "oneAnswer",
|
||||
"value": {
|
||||
"speed": "150"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "100당 1배속 / 130 = 1.3배속"
|
||||
},
|
||||
"3": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']",
|
||||
"type": "startEnd",
|
||||
"media": "동영상.mp4",
|
||||
"value": {
|
||||
"start": "0",
|
||||
"end": "350"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "start: 시작시간 / end: 재생시간( 12.20 = 12*30 + 20 = 380 )"
|
||||
},
|
||||
"4": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "effect",
|
||||
"media": "동영상.mp4",
|
||||
"value": {
|
||||
"ID": "90",
|
||||
"VID104": "5",
|
||||
"VID103": "1.5"
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "value값의 키값(VID___)은 이펙트의 속성종류에 따라 변경되므로 채점기준표작성시 확인 필요"
|
||||
},
|
||||
"5": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@Name",
|
||||
"search": "휴식 중인 청둥오리들",
|
||||
"type": "video.Text",
|
||||
"value": "휴식 중인 청둥오리들",
|
||||
"point": 3
|
||||
},
|
||||
"6": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102",
|
||||
"search": "휴식 중인 청둥오리들",
|
||||
"type": "video.Text",
|
||||
"value": "굴림체",
|
||||
"point": 2
|
||||
},
|
||||
"7": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101",
|
||||
"search": "휴식 중인 청둥오리들",
|
||||
"type": "video.Text",
|
||||
"value": "110",
|
||||
"point": 2
|
||||
},
|
||||
"8": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100",
|
||||
"search": "휴식 중인 청둥오리들",
|
||||
"type": "video.Text.Color",
|
||||
"value": "6ad2cd",
|
||||
"point": 2,
|
||||
"desc": "컬러값은 RGB로 입력한다, [대소문자, #]허용 (#FFFFFF, ffffff 두 값 모두 허용)"
|
||||
},
|
||||
"9": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@*[name()='VID600' or name()='VID601']",
|
||||
"search": "휴식 중인 청둥오리들",
|
||||
"type": "video.Location",
|
||||
"value": ["0.29270834", "0.92962962"],
|
||||
"point": 2,
|
||||
"desc": "정답 파일의 자막 좌표를 기준으로 프로그램 내부적으로 0.1까지 오차를 허용한다"
|
||||
},
|
||||
"10": {
|
||||
"ele": "",
|
||||
"search": "휴식 중인 청둥오리들",
|
||||
"type": "video.StartTime",
|
||||
"value": 160,
|
||||
"point": 2,
|
||||
"desc": "내부적으로 자막의 시작시간과 길이를 계산"
|
||||
},
|
||||
"11": {
|
||||
"ele": "",
|
||||
"search": "휴식 중인 청둥오리들",
|
||||
"type": "video.Length",
|
||||
"value": 180,
|
||||
"point": 2,
|
||||
"desc": "내부적으로 자막의 시작시간과 길이를 계산"
|
||||
},
|
||||
"12": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Mute",
|
||||
"type": "Mute",
|
||||
"media": "동영상.mp4",
|
||||
"value": "1",
|
||||
"point": 2
|
||||
},
|
||||
"13": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지1.jpg",
|
||||
"value": 150,
|
||||
"point": 2
|
||||
},
|
||||
"14": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지1.jpg",
|
||||
"value": {
|
||||
"ID": "102",
|
||||
"VID100": "5"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"15": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지1.jpg",
|
||||
"value": {
|
||||
"ID": "12",
|
||||
"Range": "470:500",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"16": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지3.jpg",
|
||||
"value": 180,
|
||||
"point": 2
|
||||
},
|
||||
"17": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지3.jpg",
|
||||
"value": {
|
||||
"ID": "67",
|
||||
"VID102": "30"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"18": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지3.jpg",
|
||||
"value": {
|
||||
"ID": "14",
|
||||
"Range": "620:680",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"19": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지2.jpg",
|
||||
"value": 180,
|
||||
"point": 2
|
||||
},
|
||||
"20": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지2.jpg",
|
||||
"value": {
|
||||
"ID": "103",
|
||||
"VID102": "7"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"21": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지2.jpg",
|
||||
"value": {
|
||||
"ID": "7",
|
||||
"Range": "800:860",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"22": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@Name",
|
||||
"search": "둘레길 생태계 (Trail Ecosystem)",
|
||||
"type": "video.Text",
|
||||
"value": "둘레길 생태계 (Trail Ecosystem)",
|
||||
"point": 3
|
||||
},
|
||||
"23": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102",
|
||||
"search": "둘레길 생태계 (Trail Ecosystem)",
|
||||
"type": "video.Text",
|
||||
"value": "돋움체",
|
||||
"point": 2
|
||||
},
|
||||
"24": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101",
|
||||
"search": "둘레길 생태계 (Trail Ecosystem)",
|
||||
"type": "video.Text",
|
||||
"value": "150",
|
||||
"point": 2
|
||||
},
|
||||
"25": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100",
|
||||
"search": "둘레길 생태계 (Trail Ecosystem)",
|
||||
"type": "video.Text.Color",
|
||||
"value": "fff100",
|
||||
"point": 2,
|
||||
"desc": "컬러값은 RGB로 입력한다, [대소문자, #]허용 (#FFFFFF, ffffff 두 값 모두 허용)"
|
||||
},
|
||||
"26": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='2']",
|
||||
"search": "둘레길 생태계 (Trail Ecosystem)",
|
||||
"type": "video.Text.Outline",
|
||||
"value": {
|
||||
"width": "40",
|
||||
"color": "7b1fa2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "두께는 XML에서는 소수점으로 표기되지만, 프로그램 내부적으로 변환하여 사용하므로 현재 파일에서는 정수로 작성"
|
||||
},
|
||||
"27": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr",
|
||||
"search": "둘레길 생태계 (Trail Ecosystem)",
|
||||
"type": "opening.Text.FadeInEffect",
|
||||
"value": {
|
||||
"VID505": "6",
|
||||
"VID507": "2"
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "오프닝자막의 나타나기 효과를 확인하는 문항. id속성은 VID505, playtime속성은 VID507으로 XML 내부에 표기되어 있다."
|
||||
},
|
||||
"28": {
|
||||
"ele": "",
|
||||
"search": "둘레길 생태계 (Trail Ecosystem)",
|
||||
"type": "opening.StartTime",
|
||||
"value": 0,
|
||||
"point": 2,
|
||||
"desc": "오프닝자막의 시작시간 value 속성만 수정"
|
||||
},
|
||||
"29": {
|
||||
"ele": "",
|
||||
"search": "둘레길 생태계 (Trail Ecosystem)",
|
||||
"type": "opening.Length",
|
||||
"value": 120,
|
||||
"point": 2
|
||||
},
|
||||
"30": {
|
||||
"ele": "",
|
||||
"type": "audio.StartTime",
|
||||
"media": "음악.mp3",
|
||||
"value": 0,
|
||||
"point": 2
|
||||
},
|
||||
"31": {
|
||||
"ele": "//CRTrackList[@Name='오디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']",
|
||||
"type": "audio.EndTime",
|
||||
"media": "음악.mp3",
|
||||
"value": 840,
|
||||
"point": 2
|
||||
},
|
||||
"32": {
|
||||
"ele": "//CRTrackList[@Name='오디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "audio.Effect",
|
||||
"media": "음악.mp3",
|
||||
"value": {
|
||||
"ID": "1",
|
||||
"PlayTime": "60"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "ID속성-페이드인:0 / 페이드아웃: 1"
|
||||
},
|
||||
"33": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"4": {
|
||||
"1": {
|
||||
"type": "canvas.Size",
|
||||
"ele": "//Document/Width/@value | //Document/Height/@value",
|
||||
"value": ["650", "350"],
|
||||
"point": 5,
|
||||
"desc": "캔버스 사이즈 650*350"
|
||||
},
|
||||
"2": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 5,
|
||||
"desc": "자유 변형 문항은 채점 불가"
|
||||
},
|
||||
"3": {
|
||||
"type": "layer.exists",
|
||||
"ele": "//Layer/Name/@value",
|
||||
"value": "Flower",
|
||||
"point": 5,
|
||||
"desc": "Flower 레이어가 있는지 여부 체크"
|
||||
},
|
||||
"4": {
|
||||
"type": "layer.Effects",
|
||||
"ele": "//Layer[Name[@value='{search}']]/Effects/Item",
|
||||
"search": "Flower",
|
||||
"value": {
|
||||
"name": "생동감",
|
||||
"option": {
|
||||
"생동감": "40"
|
||||
}
|
||||
},
|
||||
"point": 5,
|
||||
"desc": {
|
||||
"흑백": "강도",
|
||||
"밝기/대비": ["밝기", "대비"],
|
||||
"노출": "노출",
|
||||
"색조/채도": ["색조", "채도", "명도"],
|
||||
"감마": ["리프트", "감마", "게인"],
|
||||
"세피아": ["U", "V"],
|
||||
"생동감": "생동감"
|
||||
}
|
||||
},
|
||||
"5": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 6,
|
||||
"desc": "올가미 도구/이미지 문항은 채점 불가"
|
||||
},
|
||||
"6": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Effects/Item/Name/@value",
|
||||
"value": "세피아",
|
||||
"point": 6,
|
||||
"desc": "세피아 효과가 있는지 여부 체크"
|
||||
},
|
||||
"7": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Shapes/Shape/shape_type/@value",
|
||||
"value": "ELLIPSE",
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 타입이 타원인지 체크"
|
||||
},
|
||||
"8": {
|
||||
"type": "shape.size",
|
||||
"ele": "//Layer//op_points",
|
||||
"value": {
|
||||
"width": 120,
|
||||
"height": 120
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"9": {
|
||||
"type": "shape.color",
|
||||
"ele": "//Layer//Shape[contains(draw_type/@value, 'Interior')]/secondary_color/@value",
|
||||
"value": "7097BB",
|
||||
"point": 6,
|
||||
"desc": ""
|
||||
},
|
||||
"10": {
|
||||
"type": "layer.blend.opacity",
|
||||
"ele": "//Layer",
|
||||
"value": {
|
||||
"BlendOp": "반사",
|
||||
"Opacity": "80"
|
||||
},
|
||||
"point": 6
|
||||
},
|
||||
"11": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "기본설정"
|
||||
},
|
||||
"12": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"5": {
|
||||
"1": {
|
||||
"type": "canvas.Size",
|
||||
"ele": "//Document/Width/@value | //Document/Height/@value",
|
||||
"value": ["650", "450"],
|
||||
"point": 5,
|
||||
"desc": "캔버스 사이즈 650*450"
|
||||
},
|
||||
"2": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 5,
|
||||
"desc": "배경색 문항은 채점 불가"
|
||||
},
|
||||
"3": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/MaskOpType/@value",
|
||||
"value": "Layering",
|
||||
"point": 6,
|
||||
"desc": "레이어 마스크 설정 확인"
|
||||
},
|
||||
"4": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 6,
|
||||
"desc": "가로방향 흐릿하게 문항은 채점 불가"
|
||||
},
|
||||
"5": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//shape_type/@value",
|
||||
"value": "ROUNDED_RECTANGLE",
|
||||
"point": 3
|
||||
},
|
||||
"6": {
|
||||
"type": "shape.size",
|
||||
"ele": "//Layer//op_points",
|
||||
"value": {
|
||||
"width": 400,
|
||||
"height": 60
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"7": {
|
||||
"type": "gradient.color",
|
||||
"ele": "//Layer/Shapes/Shape",
|
||||
"startColor": "gradient_start_color/@value",
|
||||
"endColor": "gradient_end_color/@value",
|
||||
"value": {
|
||||
"startColor": "ffe000",
|
||||
"endColor": "34A159"
|
||||
},
|
||||
"point": 6
|
||||
},
|
||||
"8": {
|
||||
"type": "text.exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/lines/Item/@value",
|
||||
"value": "흰 꽃 사이 노란 꽃",
|
||||
"point": 5
|
||||
},
|
||||
"9": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Name/@value",
|
||||
"value": "맑은 고딕",
|
||||
"point": 3
|
||||
},
|
||||
"10": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/{style}/@value",
|
||||
"style": "Italic",
|
||||
"value": "True",
|
||||
"point": 3
|
||||
},
|
||||
"11": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Size/@value",
|
||||
"value": "30",
|
||||
"point": 3
|
||||
},
|
||||
"12": {
|
||||
"type": "text.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Interior')]/secondary_color/@value",
|
||||
"value": "b46Ef8",
|
||||
"point": 3
|
||||
},
|
||||
"13": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/outline_peninfo/Width/@value",
|
||||
"value": "7",
|
||||
"point": 3
|
||||
},
|
||||
"14": {
|
||||
"type": "text.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Outline')]/primary_color/@value",
|
||||
"value": "ffffff",
|
||||
"point": 3
|
||||
},
|
||||
"15": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/MaskOpType/@value",
|
||||
"value": "Clipping",
|
||||
"point": 6,
|
||||
"desc": "클리핑 마스크 항목은 별도 레이어로 추가되고 해당 속성을 추가해놓은 레이어가 있는지 여부 체크 함"
|
||||
},
|
||||
"16": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Shapes/Shape/shape_type/@value",
|
||||
"value": "RECTANGLE",
|
||||
"point": 3,
|
||||
"desc": {
|
||||
"사각형": "RECTANGLE"
|
||||
}
|
||||
},
|
||||
"17": {
|
||||
"type": "clipping.size",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']//op_points",
|
||||
"option": "RECTANGLE",
|
||||
"value": {
|
||||
"width": 150,
|
||||
"height": 150
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"18": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']/outline_peninfo/Width/@value",
|
||||
"option": "RECTANGLE",
|
||||
"value": "7",
|
||||
"point": 3
|
||||
},
|
||||
"19": {
|
||||
"type": "clipping.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}' and contains(draw_type/@value, 'Outline')]/primary_color/@value",
|
||||
"option": "RECTANGLE",
|
||||
"value": "e8e88e",
|
||||
"point": 3,
|
||||
"desc": "채우기:secondary_color, 외곽선:primary_color"
|
||||
},
|
||||
"20": {
|
||||
"type": "shadow",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']",
|
||||
"option": "RECTANGLE",
|
||||
"value": {
|
||||
"shadow": true,
|
||||
"width": "3",
|
||||
"distance": "5",
|
||||
"blur": "1",
|
||||
"angle": "320"
|
||||
},
|
||||
"point": 5,
|
||||
"desc": "그림자 속성이 있는 경우 그림자 속성의 너비, 거리, 흐림 정도, 각도를 비교하여 정답 채점"
|
||||
},
|
||||
"21": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "기본설정"
|
||||
},
|
||||
"22": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
}
|
||||
}
|
||||
737
회차별채점자료/2506/json_채점기준표/0704/DIC_2506B.json
Normal file
737
회차별채점자료/2506/json_채점기준표/0704/DIC_2506B.json
Normal file
@@ -0,0 +1,737 @@
|
||||
{
|
||||
"0": {
|
||||
"1": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"2": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"3": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"4": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"5": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"6": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"7": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"8": {
|
||||
"ele": "$[?(@.width == 65 && @.height == 45)]",
|
||||
"type": "size",
|
||||
"value": {
|
||||
"width": 65,
|
||||
"height": 45
|
||||
},
|
||||
"point": 4
|
||||
},
|
||||
"9": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"1": {
|
||||
"1": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"2": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"3": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"4": {
|
||||
"ele": "$.children[?(@.name=='산책길')].name",
|
||||
"value": "산책길",
|
||||
"point": 4
|
||||
},
|
||||
"5": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"6": {
|
||||
"ele": "$.children[?(@.name=='Healing Forest')].name",
|
||||
"value": "Healing Forest",
|
||||
"point": 4
|
||||
},
|
||||
"7": {
|
||||
"ele": "$.children[?(@.name=='Healing Forest')].text.font.names[0]",
|
||||
"type": "font",
|
||||
"value": "Arial",
|
||||
"point": 2
|
||||
},
|
||||
"8": {
|
||||
"ele": "$.children[?(@.name=='Healing Forest')].text.font.names[0]",
|
||||
"value": "Arial-BoldItalicMT",
|
||||
"point": 2
|
||||
},
|
||||
"9": {
|
||||
"ele": "$.children[?(@.name=='Healing Forest')].text.font.sizes[0]",
|
||||
"value": 48,
|
||||
"point": 2
|
||||
},
|
||||
"10": {
|
||||
"ele": "$.children[?(@.name=='Healing Forest')].text.font.colors[0]",
|
||||
"type": "color",
|
||||
"value": "d93009",
|
||||
"point": 2
|
||||
},
|
||||
"11": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"12": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"13": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"14": {
|
||||
"ele": "$.children[?(@.name=='치유의 숲')].name",
|
||||
"value": "치유의 숲",
|
||||
"point": 4
|
||||
},
|
||||
"15": {
|
||||
"ele": "$.children[?(@.name=='치유의 숲')].text.font.names[0]",
|
||||
"type": "font",
|
||||
"value": "GungsuhChe",
|
||||
"point": 2,
|
||||
"desc": {
|
||||
"돋움체": "DotumChe",
|
||||
"궁서체": "GungsuhChe",
|
||||
"굴림체": "GulimChe",
|
||||
"휴먼옛체": "YetR"
|
||||
}
|
||||
},
|
||||
"16": {
|
||||
"ele": "$.children[?(@.name=='치유의 숲')].text.font.sizes[0]",
|
||||
"value": 36,
|
||||
"point": 2
|
||||
},
|
||||
"17": {
|
||||
"ele": "$.children[?(@.name=='치유의 숲')].text.font.colors[0]",
|
||||
"type": "color",
|
||||
"value": "19ea4a",
|
||||
"point": 2
|
||||
},
|
||||
"18": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"19": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"20": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"21": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"22": {
|
||||
"ele": "$.children[?(@.name=='조각상')].name",
|
||||
"value": "조각상",
|
||||
"point": 4
|
||||
},
|
||||
"23": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"24": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"25": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"26": {
|
||||
"ele": "$[?(@.width == 65 && @.height == 35)]",
|
||||
"type": "size",
|
||||
"value": {
|
||||
"width": 65,
|
||||
"height": 35
|
||||
},
|
||||
"point": 5
|
||||
},
|
||||
"27": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"2": {
|
||||
"1": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[not(@Length<='5' and @ClipLength='-1')]/@ClipIndex",
|
||||
"type": "mediaOrder",
|
||||
"value": ["동영상.mp4", "이미지1.jpg", "이미지3.jpg", "이미지2.jpg"],
|
||||
"point": 4,
|
||||
"desc": "클립의 ClipIndex값이 -1인 경우와 길이가 5프레임 이하인 경우는 제외한다."
|
||||
},
|
||||
"2": {
|
||||
"ele": "/CROASTERP/CRTrackArr[1]/CRVideoTrackArr[1]/CRTrackList[1]/CRTrackClip[1]/@Speed",
|
||||
"type": "oneAnswer",
|
||||
"value": {
|
||||
"speed": "120"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "100당 1배속 / 130 = 1.3배속"
|
||||
},
|
||||
"3": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']",
|
||||
"type": "startEnd",
|
||||
"media": "동영상.mp4",
|
||||
"value": {
|
||||
"start": "0",
|
||||
"end": "380"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "start: 시작시간 / end: 재생시간( 12.20 = 12*30 + 20 = 380 )"
|
||||
},
|
||||
"4": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "effect",
|
||||
"media": "동영상.mp4",
|
||||
"value": {
|
||||
"ID": "168",
|
||||
"VID100": "0.75",
|
||||
"VID102": "10"
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "value값의 키값(VID___)은 이펙트의 속성종류에 따라 변경되므로 채점기준표작성시 확인 필요"
|
||||
},
|
||||
"5": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@Name",
|
||||
"search": "푸르른 풀과 꽃",
|
||||
"type": "video.Text",
|
||||
"value": "푸르른 풀과 꽃",
|
||||
"point": 3
|
||||
},
|
||||
"6": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102",
|
||||
"search": "푸르른 풀과 꽃",
|
||||
"type": "video.Text",
|
||||
"value": "궁서체",
|
||||
"point": 2
|
||||
},
|
||||
"7": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101",
|
||||
"search": "푸르른 풀과 꽃",
|
||||
"type": "video.Text",
|
||||
"value": "100",
|
||||
"point": 2
|
||||
},
|
||||
"8": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100",
|
||||
"search": "푸르른 풀과 꽃",
|
||||
"type": "video.Text.Color",
|
||||
"value": "feccbc",
|
||||
"point": 2,
|
||||
"desc": "컬러값은 RGB로 입력한다, [대소문자, #]허용 (#FFFFFF, ffffff 두 값 모두 허용)"
|
||||
},
|
||||
"9": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@*[name()='VID600' or name()='VID601']",
|
||||
"search": "푸르른 풀과 꽃",
|
||||
"type": "video.Location",
|
||||
"value": ["0.36562499", "0.93333334"],
|
||||
"point": 2,
|
||||
"desc": "정답 파일의 자막 좌표를 기준으로 프로그램 내부적으로 0.1까지 오차를 허용한다"
|
||||
},
|
||||
"10": {
|
||||
"ele": "",
|
||||
"search": "푸르른 풀과 꽃",
|
||||
"type": "video.StartTime",
|
||||
"value": 175,
|
||||
"point": 2,
|
||||
"desc": "내부적으로 자막의 시작시간과 길이를 계산"
|
||||
},
|
||||
"11": {
|
||||
"ele": "",
|
||||
"search": "푸르른 풀과 꽃",
|
||||
"type": "video.Length",
|
||||
"value": 180,
|
||||
"point": 2,
|
||||
"desc": "내부적으로 자막의 시작시간과 길이를 계산"
|
||||
},
|
||||
"12": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Mute",
|
||||
"type": "Mute",
|
||||
"media": "동영상.mp4",
|
||||
"value": "1",
|
||||
"point": 2
|
||||
},
|
||||
"13": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지1.jpg",
|
||||
"value": 180,
|
||||
"point": 2
|
||||
},
|
||||
"14": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지1.jpg",
|
||||
"value": {
|
||||
"ID": "184",
|
||||
"VID101": "8"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"15": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지1.jpg",
|
||||
"value": {
|
||||
"ID": "7",
|
||||
"Range": "500:560",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"16": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지3.jpg",
|
||||
"value": 150,
|
||||
"point": 2
|
||||
},
|
||||
"17": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지3.jpg",
|
||||
"value": {
|
||||
"ID": "102",
|
||||
"VID100": "5"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"18": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지3.jpg",
|
||||
"value": {
|
||||
"ID": "14",
|
||||
"Range": "680:710",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"19": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지2.jpg",
|
||||
"value": 180,
|
||||
"point": 2
|
||||
},
|
||||
"20": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지2.jpg",
|
||||
"value": {
|
||||
"ID": "67",
|
||||
"VID104": "3"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"21": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지2.jpg",
|
||||
"value": {
|
||||
"ID": "20",
|
||||
"Range": "800:890",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"22": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@Name",
|
||||
"search": "숲속 치유 공원 (Forest Healing Park)",
|
||||
"type": "video.Text",
|
||||
"value": "숲속 치유 공원 (Forest Healing Park)",
|
||||
"point": 3
|
||||
},
|
||||
"23": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102",
|
||||
"search": "숲속 치유 공원 (Forest Healing Park)",
|
||||
"type": "video.Text",
|
||||
"value": "바탕체",
|
||||
"point": 2
|
||||
},
|
||||
"24": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101",
|
||||
"search": "숲속 치유 공원 (Forest Healing Park)",
|
||||
"type": "video.Text",
|
||||
"value": "150",
|
||||
"point": 2
|
||||
},
|
||||
"25": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100",
|
||||
"search": "숲속 치유 공원 (Forest Healing Park)",
|
||||
"type": "video.Text.Color",
|
||||
"value": "fec02d",
|
||||
"point": 2,
|
||||
"desc": "컬러값은 RGB로 입력한다, [대소문자, #]허용 (#FFFFFF, ffffff 두 값 모두 허용)"
|
||||
},
|
||||
"26": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='2']",
|
||||
"search": "숲속 치유 공원 (Forest Healing Park)",
|
||||
"type": "video.Text.Outline",
|
||||
"value": {
|
||||
"width": "20",
|
||||
"color": "262626"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "두께는 XML에서는 소수점으로 표기되지만, 프로그램 내부적으로 변환하여 사용하므로 현재 파일에서는 정수로 작성"
|
||||
},
|
||||
"27": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr",
|
||||
"search": "숲속 치유 공원 (Forest Healing Park)",
|
||||
"type": "opening.Text.FadeInEffect",
|
||||
"value": {
|
||||
"VID505": "14",
|
||||
"VID507": "2"
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "오프닝자막의 나타나기 효과를 확인하는 문항. id속성은 VID505, playtime속성은 VID507으로 XML 내부에 표기되어 있다."
|
||||
},
|
||||
"28": {
|
||||
"ele": "",
|
||||
"search": "숲속 치유 공원 (Forest Healing Park)",
|
||||
"type": "opening.StartTime",
|
||||
"value": 0,
|
||||
"point": 2,
|
||||
"desc": "오프닝자막의 시작시간 value 속성만 수정"
|
||||
},
|
||||
"29": {
|
||||
"ele": "",
|
||||
"search": "숲속 치유 공원 (Forest Healing Park)",
|
||||
"type": "opening.Length",
|
||||
"value": 120,
|
||||
"point": 2
|
||||
},
|
||||
"30": {
|
||||
"ele": "",
|
||||
"type": "audio.StartTime",
|
||||
"media": "음악.mp3",
|
||||
"value": 0,
|
||||
"point": 2
|
||||
},
|
||||
"31": {
|
||||
"ele": "//CRTrackList[@Name='오디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']",
|
||||
"type": "audio.EndTime",
|
||||
"media": "음악.mp3",
|
||||
"value": 870,
|
||||
"point": 2
|
||||
},
|
||||
"32": {
|
||||
"ele": "//CRTrackList[@Name='오디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "audio.Effect",
|
||||
"media": "음악.mp3",
|
||||
"value": {
|
||||
"ID": "1",
|
||||
"PlayTime": "90"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "ID속성-페이드인:0 / 페이드아웃: 1"
|
||||
},
|
||||
"33": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"4": {
|
||||
"1": {
|
||||
"type": "canvas.Size",
|
||||
"ele": "//Document/Width/@value | //Document/Height/@value",
|
||||
"value": ["650", "350"],
|
||||
"point": 5,
|
||||
"desc": "캔버스 사이즈 650*350"
|
||||
},
|
||||
"2": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 5,
|
||||
"desc": "자유 변형 문항은 채점 불가"
|
||||
},
|
||||
"3": {
|
||||
"type": "layer.exists",
|
||||
"ele": "//Layer/Name/@value",
|
||||
"value": "Flower",
|
||||
"point": 5,
|
||||
"desc": "Flower 레이어가 있는지 여부 체크"
|
||||
},
|
||||
"4": {
|
||||
"type": "layer.Effects",
|
||||
"ele": "//Layer[Name[@value='{search}']]/Effects/Item",
|
||||
"search": "Flower",
|
||||
"value": {
|
||||
"name": "생동감",
|
||||
"option": {
|
||||
"생동감": "40"
|
||||
}
|
||||
},
|
||||
"point": 5,
|
||||
"desc": {
|
||||
"흑백": "강도",
|
||||
"밝기/대비": ["밝기", "대비"],
|
||||
"노출": "노출",
|
||||
"색조/채도": ["색조", "채도", "명도"],
|
||||
"감마": ["리프트", "감마", "게인"],
|
||||
"세피아": ["U", "V"],
|
||||
"생동감": "생동감"
|
||||
}
|
||||
},
|
||||
"5": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 6,
|
||||
"desc": "올가미 도구/이미지 문항은 채점 불가"
|
||||
},
|
||||
"6": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Effects/Item/Name/@value",
|
||||
"value": "세피아",
|
||||
"point": 6,
|
||||
"desc": "세피아 효과가 있는지 여부 체크"
|
||||
},
|
||||
"7": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Shapes/Shape/shape_type/@value",
|
||||
"value": "ELLIPSE",
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 타입이 타원인지 체크"
|
||||
},
|
||||
"8": {
|
||||
"type": "shape.size",
|
||||
"ele": "//Layer//op_points",
|
||||
"value": {
|
||||
"width": 120,
|
||||
"height": 120
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"9": {
|
||||
"type": "shape.color",
|
||||
"ele": "//Layer//Shape[contains(draw_type/@value, 'Interior')]/secondary_color/@value",
|
||||
"value": "7097BB",
|
||||
"point": 6,
|
||||
"desc": ""
|
||||
},
|
||||
"10": {
|
||||
"type": "layer.blend.opacity",
|
||||
"ele": "//Layer",
|
||||
"value": {
|
||||
"BlendOp": "반사",
|
||||
"Opacity": "80"
|
||||
},
|
||||
"point": 6
|
||||
},
|
||||
"11": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "기본설정"
|
||||
},
|
||||
"12": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"5": {
|
||||
"1": {
|
||||
"type": "canvas.Size",
|
||||
"ele": "//Document/Width/@value | //Document/Height/@value",
|
||||
"value": ["650", "450"],
|
||||
"point": 5,
|
||||
"desc": "캔버스 사이즈 650*450"
|
||||
},
|
||||
"2": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 5,
|
||||
"desc": "배경색 문항은 채점 불가"
|
||||
},
|
||||
"3": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/MaskOpType/@value",
|
||||
"value": "Layering",
|
||||
"point": 6,
|
||||
"desc": "레이어 마스크 설정 확인"
|
||||
},
|
||||
"4": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 6,
|
||||
"desc": "가로방향 흐릿하게 문항은 채점 불가"
|
||||
},
|
||||
"5": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//shape_type/@value",
|
||||
"value": "ROUNDED_RECTANGLE",
|
||||
"point": 3
|
||||
},
|
||||
"6": {
|
||||
"type": "shape.size",
|
||||
"ele": "//Layer//op_points",
|
||||
"value": {
|
||||
"width": 400,
|
||||
"height": 60
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"7": {
|
||||
"type": "gradient.color",
|
||||
"ele": "//Layer/Shapes/Shape",
|
||||
"startColor": "gradient_start_color/@value",
|
||||
"endColor": "gradient_end_color/@value",
|
||||
"value": {
|
||||
"startColor": "ffe000",
|
||||
"endColor": "34A159"
|
||||
},
|
||||
"point": 6
|
||||
},
|
||||
"8": {
|
||||
"type": "text.exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/lines/Item/@value",
|
||||
"value": "흰 꽃 사이 노란 꽃",
|
||||
"point": 5
|
||||
},
|
||||
"9": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Name/@value",
|
||||
"value": "맑은 고딕",
|
||||
"point": 3
|
||||
},
|
||||
"10": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/{style}/@value",
|
||||
"style": "Italic",
|
||||
"value": "True",
|
||||
"point": 3
|
||||
},
|
||||
"11": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Size/@value",
|
||||
"value": "30",
|
||||
"point": 3
|
||||
},
|
||||
"12": {
|
||||
"type": "text.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Interior')]/secondary_color/@value",
|
||||
"value": "b46Ef8",
|
||||
"point": 3
|
||||
},
|
||||
"13": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/outline_peninfo/Width/@value",
|
||||
"value": "7",
|
||||
"point": 3
|
||||
},
|
||||
"14": {
|
||||
"type": "text.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Outline')]/primary_color/@value",
|
||||
"value": "ffffff",
|
||||
"point": 3
|
||||
},
|
||||
"15": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/MaskOpType/@value",
|
||||
"value": "Clipping",
|
||||
"point": 6,
|
||||
"desc": "클리핑 마스크 항목은 별도 레이어로 추가되고 해당 속성을 추가해놓은 레이어가 있는지 여부 체크 함"
|
||||
},
|
||||
"16": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Shapes/Shape/shape_type/@value",
|
||||
"value": "RECTANGLE",
|
||||
"point": 3,
|
||||
"desc": {
|
||||
"사각형": "RECTANGLE"
|
||||
}
|
||||
},
|
||||
"17": {
|
||||
"type": "clipping.size",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']//op_points",
|
||||
"option": "RECTANGLE",
|
||||
"value": {
|
||||
"width": 150,
|
||||
"height": 150
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"18": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']/outline_peninfo/Width/@value",
|
||||
"option": "RECTANGLE",
|
||||
"value": "7",
|
||||
"point": 3
|
||||
},
|
||||
"19": {
|
||||
"type": "clipping.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}' and contains(draw_type/@value, 'Outline')]/primary_color/@value",
|
||||
"option": "RECTANGLE",
|
||||
"value": "e8e88e",
|
||||
"point": 3,
|
||||
"desc": "채우기:secondary_color, 외곽선:primary_color"
|
||||
},
|
||||
"20": {
|
||||
"type": "shadow",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']",
|
||||
"option": "RECTANGLE",
|
||||
"value": {
|
||||
"shadow": true,
|
||||
"width": "3",
|
||||
"distance": "5",
|
||||
"blur": "1",
|
||||
"angle": "320"
|
||||
},
|
||||
"point": 5,
|
||||
"desc": "그림자 속성이 있는 경우 그림자 속성의 너비, 거리, 흐림 정도, 각도를 비교하여 정답 채점"
|
||||
},
|
||||
"21": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "기본설정"
|
||||
},
|
||||
"22": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
}
|
||||
}
|
||||
739
회차별채점자료/2506/json_채점기준표/0704/DIC_2506C.json
Normal file
739
회차별채점자료/2506/json_채점기준표/0704/DIC_2506C.json
Normal file
@@ -0,0 +1,739 @@
|
||||
{
|
||||
"0": {
|
||||
"1": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"2": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"3": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"4": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"5": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"6": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"7": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"8": {
|
||||
"ele": "$[?(@.width == 65 && @.height == 45)]",
|
||||
"type": "size",
|
||||
"value": {
|
||||
"width": 65,
|
||||
"height": 45
|
||||
},
|
||||
"point": 4
|
||||
},
|
||||
"9": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"1": {
|
||||
"1": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"2": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"3": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"4": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"5": {
|
||||
"ele": "$.children[?(@.name=='Happy Lake Park')].name",
|
||||
"value": "Happy Lake Park",
|
||||
"point": 4
|
||||
},
|
||||
"6": {
|
||||
"ele": "$.children[?(@.name=='Happy Lake Park')].text.font.names[0]",
|
||||
"type": "font",
|
||||
"value": "Arial",
|
||||
"point": 2
|
||||
},
|
||||
"7": {
|
||||
"ele": "$.children[?(@.name=='Happy Lake Park')].text.font.names[0]",
|
||||
"value": "Arial-BoldItalicMT",
|
||||
"point": 2
|
||||
},
|
||||
"8": {
|
||||
"ele": "$.children[?(@.name=='Happy Lake Park')].text.font.sizes[0]",
|
||||
"value": 48,
|
||||
"point": 2
|
||||
},
|
||||
"9": {
|
||||
"ele": "$.children[?(@.name=='Happy Lake Park')].text.font.colors[0]",
|
||||
"type": "color",
|
||||
"value": "bd04bb",
|
||||
"point": 2
|
||||
},
|
||||
"10": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"11": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"12": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"13": {
|
||||
"ele": "$.children[?(@.name=='행복한 호수공원')].name",
|
||||
"value": "행복한 호수공원",
|
||||
"point": 4
|
||||
},
|
||||
"14": {
|
||||
"ele": "$.children[?(@.name=='행복한 호수공원')].text.font.names[0]",
|
||||
"type": "font",
|
||||
"value": "GungsuhChe",
|
||||
"point": 2,
|
||||
"desc": {
|
||||
"돋움체": "DotumChe",
|
||||
"궁서체": "GungsuhChe",
|
||||
"굴림체": "GulimChe",
|
||||
"휴먼옛체": "YetR"
|
||||
}
|
||||
},
|
||||
"15": {
|
||||
"ele": "$.children[?(@.name=='행복한 호수공원')].text.font.sizes[0]",
|
||||
"value": 36,
|
||||
"point": 2
|
||||
},
|
||||
"16": {
|
||||
"ele": "$.children[?(@.name=='행복한 호수공원')].text.font.colors[0]",
|
||||
"type": "color",
|
||||
"value": "146c08",
|
||||
"point": 2
|
||||
},
|
||||
"17": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"18": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"19": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"20": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"21": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"22": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"23": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"24": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"25": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"26": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"27": {
|
||||
"ele": "$[?(@.width == 65 && @.height == 45)]",
|
||||
"type": "size",
|
||||
"value": {
|
||||
"width": 65,
|
||||
"height": 45
|
||||
},
|
||||
"point": 4
|
||||
},
|
||||
"28": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"2": {
|
||||
"1": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[not(@Length<='5' and @ClipLength='-1')]/@ClipIndex",
|
||||
"type": "mediaOrder",
|
||||
"value": ["동영상.mp4", "이미지3.jpg", "이미지1.jpg", "이미지2.jpg"],
|
||||
"point": 4,
|
||||
"desc": "클립의 ClipIndex값이 -1인 경우와 길이가 5프레임 이하인 경우는 제외한다."
|
||||
},
|
||||
"2": {
|
||||
"ele": "/CROASTERP/CRTrackArr[1]/CRVideoTrackArr[1]/CRTrackList[1]/CRTrackClip[1]/@Speed",
|
||||
"type": "oneAnswer",
|
||||
"value": {
|
||||
"speed": "110"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "100당 1배속 / 130 = 1.3배속"
|
||||
},
|
||||
"3": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']",
|
||||
"type": "startEnd",
|
||||
"media": "동영상.mp4",
|
||||
"value": {
|
||||
"start": "0",
|
||||
"end": "380"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "start: 시작시간 / end: 재생시간( 12.20 = 12*30 + 20 = 380 )"
|
||||
},
|
||||
"4": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "effect",
|
||||
"media": "동영상.mp4",
|
||||
"value": {
|
||||
"ID": "44",
|
||||
"VID100": "10",
|
||||
"VID103": "1.2"
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "value값의 키값(VID___)은 이펙트의 속성종류에 따라 변경되므로 채점기준표작성시 확인 필요"
|
||||
},
|
||||
"5": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@Name",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Text",
|
||||
"value": "호수의 시원한 전경",
|
||||
"point": 3
|
||||
},
|
||||
"6": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Text",
|
||||
"value": "굴림체",
|
||||
"point": 2
|
||||
},
|
||||
"7": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Text",
|
||||
"value": "110",
|
||||
"point": 2
|
||||
},
|
||||
"8": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Text.Color",
|
||||
"value": "f4511e",
|
||||
"point": 2,
|
||||
"desc": "컬러값은 RGB로 입력한다, [대소문자, #]허용 (#FFFFFF, ffffff 두 값 모두 허용)"
|
||||
},
|
||||
"9": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@*[name()='VID600' or name()='VID601']",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Location",
|
||||
"value": ["0.3125", "0.92962962"],
|
||||
"point": 2,
|
||||
"desc": "정답 파일의 자막 좌표를 기준으로 프로그램 내부적으로 0.1까지 오차를 허용한다"
|
||||
},
|
||||
"10": {
|
||||
"ele": "",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.StartTime",
|
||||
"value": 170,
|
||||
"point": 2,
|
||||
"desc": "내부적으로 자막의 시작시간과 길이를 계산"
|
||||
},
|
||||
"11": {
|
||||
"ele": "",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Length",
|
||||
"value": 180,
|
||||
"point": 2,
|
||||
"desc": "내부적으로 자막의 시작시간과 길이를 계산"
|
||||
},
|
||||
"12": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Mute",
|
||||
"type": "Mute",
|
||||
"media": "동영상.mp4",
|
||||
"value": "1",
|
||||
"point": 2
|
||||
},
|
||||
"13": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지3.jpg",
|
||||
"value": 150,
|
||||
"point": 2
|
||||
},
|
||||
"14": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지3.jpg",
|
||||
"value": {
|
||||
"ID": "173",
|
||||
"VID101": "300"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"15": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지3.jpg",
|
||||
"value": {
|
||||
"ID": "21",
|
||||
"Range": "500:530",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"16": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지1.jpg",
|
||||
"value": 210,
|
||||
"point": 2
|
||||
},
|
||||
"17": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지1.jpg",
|
||||
"value": {
|
||||
"ID": "67",
|
||||
"VID102": "60"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"18": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지1.jpg",
|
||||
"value": {
|
||||
"ID": "10",
|
||||
"Range": "680:740",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"19": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지2.jpg",
|
||||
"value": 180,
|
||||
"point": 2
|
||||
},
|
||||
"20": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지2.jpg",
|
||||
"value": {
|
||||
"ID": "184",
|
||||
"VID103": "50"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"21": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지2.jpg",
|
||||
"value": {
|
||||
"ID": "7",
|
||||
"Range": "890:920",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"22": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@Name",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "video.Text",
|
||||
"value": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"point": 3
|
||||
},
|
||||
"23": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "video.Text",
|
||||
"value": "궁서체",
|
||||
"point": 2
|
||||
},
|
||||
"24": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "video.Text",
|
||||
"value": "150",
|
||||
"point": 2
|
||||
},
|
||||
"25": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "video.Text.Color",
|
||||
"value": "1976d2",
|
||||
"point": 2,
|
||||
"desc": "컬러값은 RGB로 입력한다, [대소문자, #]허용 (#FFFFFF, ffffff 두 값 모두 허용)"
|
||||
},
|
||||
"26": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='2']",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "video.Text.Outline",
|
||||
"value": {
|
||||
"width": "25",
|
||||
"color": "cdf9fc"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "두께는 XML에서는 소수점으로 표기되지만, 프로그램 내부적으로 변환하여 사용하므로 현재 파일에서는 정수로 작성"
|
||||
},
|
||||
"27": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "opening.Text.FadeInEffect",
|
||||
"value": {
|
||||
"VID505": "15",
|
||||
"VID507": "2"
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "오프닝자막의 나타나기 효과를 확인하는 문항. id속성은 VID505, playtime속성은 VID507으로 XML 내부에 표기되어 있다."
|
||||
},
|
||||
"28": {
|
||||
"ele": "",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "opening.StartTime",
|
||||
"value": 0,
|
||||
"point": 2,
|
||||
"desc": "오프닝자막의 시작시간 value 속성만 수정"
|
||||
},
|
||||
"29": {
|
||||
"ele": "",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "opening.Length",
|
||||
"value": 120,
|
||||
"point": 2
|
||||
},
|
||||
"30": {
|
||||
"ele": "",
|
||||
"type": "audio.StartTime",
|
||||
"media": "음악.mp3",
|
||||
"value": 0,
|
||||
"point": 2
|
||||
},
|
||||
"31": {
|
||||
"ele": "//CRTrackList[@Name='오디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']",
|
||||
"type": "audio.EndTime",
|
||||
"media": "음악.mp3",
|
||||
"value": 900,
|
||||
"point": 2
|
||||
},
|
||||
"32": {
|
||||
"ele": "//CRTrackList[@Name='오디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "audio.Effect",
|
||||
"media": "음악.mp3",
|
||||
"value": {
|
||||
"ID": "1",
|
||||
"PlayTime": "60"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "ID속성-페이드인:0 / 페이드아웃: 1"
|
||||
},
|
||||
"33": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"4": {
|
||||
"1": {
|
||||
"type": "canvas.Size",
|
||||
"ele": "//Document/Width/@value | //Document/Height/@value",
|
||||
"value": ["650", "350"],
|
||||
"point": 5,
|
||||
"desc": "캔버스 사이즈 650*350"
|
||||
},
|
||||
"2": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 5,
|
||||
"desc": "자유 변형 문항은 채점 불가"
|
||||
},
|
||||
"3": {
|
||||
"type": "layer.exists",
|
||||
"ele": "//Layer/Name/@value",
|
||||
"value": "Flower",
|
||||
"point": 5,
|
||||
"desc": "Flower 레이어가 있는지 여부 체크"
|
||||
},
|
||||
"4": {
|
||||
"type": "layer.Effects",
|
||||
"ele": "//Layer[Name[@value='{search}']]/Effects/Item",
|
||||
"search": "Flower",
|
||||
"value": {
|
||||
"name": "생동감",
|
||||
"option": {
|
||||
"생동감": "40"
|
||||
}
|
||||
},
|
||||
"point": 5,
|
||||
"desc": {
|
||||
"흑백": "강도",
|
||||
"밝기/대비": ["밝기", "대비"],
|
||||
"노출": "노출",
|
||||
"색조/채도": ["색조", "채도", "명도"],
|
||||
"감마": ["리프트", "감마", "게인"],
|
||||
"세피아": ["U", "V"],
|
||||
"생동감": "생동감"
|
||||
}
|
||||
},
|
||||
"5": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 6,
|
||||
"desc": "올가미 도구/이미지 문항은 채점 불가"
|
||||
},
|
||||
"6": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Effects/Item/Name/@value",
|
||||
"value": "세피아",
|
||||
"point": 6,
|
||||
"desc": "세피아 효과가 있는지 여부 체크"
|
||||
},
|
||||
"7": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Shapes/Shape/shape_type/@value",
|
||||
"value": "ELLIPSE",
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 타입이 타원인지 체크"
|
||||
},
|
||||
"8": {
|
||||
"type": "shape.size",
|
||||
"ele": "//Layer//op_points",
|
||||
"value": {
|
||||
"width": 120,
|
||||
"height": 120
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"9": {
|
||||
"type": "shape.color",
|
||||
"ele": "//Layer//Shape[contains(draw_type/@value, 'Interior')]/secondary_color/@value",
|
||||
"value": "7097BB",
|
||||
"point": 6,
|
||||
"desc": ""
|
||||
},
|
||||
"10": {
|
||||
"type": "layer.blend.opacity",
|
||||
"ele": "//Layer",
|
||||
"value": {
|
||||
"BlendOp": "반사",
|
||||
"Opacity": "80"
|
||||
},
|
||||
"point": 6
|
||||
},
|
||||
"11": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "기본설정"
|
||||
},
|
||||
"12": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"5": {
|
||||
"1": {
|
||||
"type": "canvas.Size",
|
||||
"ele": "//Document/Width/@value | //Document/Height/@value",
|
||||
"value": ["650", "450"],
|
||||
"point": 5,
|
||||
"desc": "캔버스 사이즈 650*450"
|
||||
},
|
||||
"2": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 5,
|
||||
"desc": "배경색 문항은 채점 불가"
|
||||
},
|
||||
"3": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/MaskOpType/@value",
|
||||
"value": "Layering",
|
||||
"point": 6,
|
||||
"desc": "레이어 마스크 설정 확인"
|
||||
},
|
||||
"4": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 6,
|
||||
"desc": "가로방향 흐릿하게 문항은 채점 불가"
|
||||
},
|
||||
"5": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//shape_type/@value",
|
||||
"value": "ROUNDED_RECTANGLE",
|
||||
"point": 3
|
||||
},
|
||||
"6": {
|
||||
"type": "shape.size",
|
||||
"ele": "//Layer//op_points",
|
||||
"value": {
|
||||
"width": 400,
|
||||
"height": 60
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"7": {
|
||||
"type": "gradient.color",
|
||||
"ele": "//Layer/Shapes/Shape",
|
||||
"startColor": "gradient_start_color/@value",
|
||||
"endColor": "gradient_end_color/@value",
|
||||
"value": {
|
||||
"startColor": "ffe000",
|
||||
"endColor": "34A159"
|
||||
},
|
||||
"point": 6
|
||||
},
|
||||
"8": {
|
||||
"type": "text.exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/lines/Item/@value",
|
||||
"value": "흰 꽃 사이 노란 꽃",
|
||||
"point": 5
|
||||
},
|
||||
"9": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Name/@value",
|
||||
"value": "맑은 고딕",
|
||||
"point": 3
|
||||
},
|
||||
"10": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/{style}/@value",
|
||||
"style": "Italic",
|
||||
"value": "True",
|
||||
"point": 3
|
||||
},
|
||||
"11": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Size/@value",
|
||||
"value": "30",
|
||||
"point": 3
|
||||
},
|
||||
"12": {
|
||||
"type": "text.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Interior')]/secondary_color/@value",
|
||||
"value": "b46Ef8",
|
||||
"point": 3
|
||||
},
|
||||
"13": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/outline_peninfo/Width/@value",
|
||||
"value": "7",
|
||||
"point": 3
|
||||
},
|
||||
"14": {
|
||||
"type": "text.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Outline')]/primary_color/@value",
|
||||
"value": "ffffff",
|
||||
"point": 3
|
||||
},
|
||||
"15": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/MaskOpType/@value",
|
||||
"value": "Clipping",
|
||||
"point": 6,
|
||||
"desc": "클리핑 마스크 항목은 별도 레이어로 추가되고 해당 속성을 추가해놓은 레이어가 있는지 여부 체크 함"
|
||||
},
|
||||
"16": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Shapes/Shape/shape_type/@value",
|
||||
"value": "RECTANGLE",
|
||||
"point": 3,
|
||||
"desc": {
|
||||
"사각형": "RECTANGLE"
|
||||
}
|
||||
},
|
||||
"17": {
|
||||
"type": "clipping.size",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']//op_points",
|
||||
"option": "RECTANGLE",
|
||||
"value": {
|
||||
"width": 150,
|
||||
"height": 150
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"18": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']/outline_peninfo/Width/@value",
|
||||
"option": "RECTANGLE",
|
||||
"value": "7",
|
||||
"point": 3
|
||||
},
|
||||
"19": {
|
||||
"type": "clipping.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}' and contains(draw_type/@value, 'Outline')]/primary_color/@value",
|
||||
"option": "RECTANGLE",
|
||||
"value": "e8e88e",
|
||||
"point": 3,
|
||||
"desc": "채우기:secondary_color, 외곽선:primary_color"
|
||||
},
|
||||
"20": {
|
||||
"type": "shadow",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']",
|
||||
"option": "RECTANGLE",
|
||||
"value": {
|
||||
"shadow": true,
|
||||
"width": "3",
|
||||
"distance": "5",
|
||||
"blur": "1",
|
||||
"angle": "320"
|
||||
},
|
||||
"point": 5,
|
||||
"desc": "그림자 속성이 있는 경우 그림자 속성의 너비, 거리, 흐림 정도, 각도를 비교하여 정답 채점"
|
||||
},
|
||||
"21": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "기본설정"
|
||||
},
|
||||
"22": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
}
|
||||
}
|
||||
747
회차별채점자료/2506/json_채점기준표/0704/DPI_2506C.json
Normal file
747
회차별채점자료/2506/json_채점기준표/0704/DPI_2506C.json
Normal file
@@ -0,0 +1,747 @@
|
||||
{
|
||||
"0": {
|
||||
"1": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"2": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"3": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"4": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"5": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"6": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"7": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"8": {
|
||||
"ele": "$[?(@.width == 65 && @.height == 45)]",
|
||||
"type": "size",
|
||||
"value": {
|
||||
"width": 65,
|
||||
"height": 45
|
||||
},
|
||||
"point": 4
|
||||
},
|
||||
"9": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"1": {
|
||||
"1": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"2": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"3": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"4": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"5": {
|
||||
"ele": "$.children[?(@.name=='Happy Lake Park')].name",
|
||||
"value": "Happy Lake Park",
|
||||
"point": 4
|
||||
},
|
||||
"6": {
|
||||
"ele": "$.children[?(@.name=='Happy Lake Park')].text.font.names[0]",
|
||||
"type": "font",
|
||||
"value": "Arial",
|
||||
"point": 2
|
||||
},
|
||||
"7": {
|
||||
"ele": "$.children[?(@.name=='Happy Lake Park')].text.font.names[0]",
|
||||
"value": "Arial-BoldItalicMT",
|
||||
"point": 2
|
||||
},
|
||||
"8": {
|
||||
"ele": "$.children[?(@.name=='Happy Lake Park')].text.font.sizes[0]",
|
||||
"value": 48,
|
||||
"point": 2
|
||||
},
|
||||
"9": {
|
||||
"ele": "$.children[?(@.name=='Happy Lake Park')].text.font.colors[0]",
|
||||
"type": "color",
|
||||
"value": "bd04bb",
|
||||
"point": 2
|
||||
},
|
||||
"10": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"11": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"12": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"13": {
|
||||
"ele": "$.children[?(@.name=='행복한 호수공원')].name",
|
||||
"value": "행복한 호수공원",
|
||||
"point": 4
|
||||
},
|
||||
"14": {
|
||||
"ele": "$.children[?(@.name=='행복한 호수공원')].text.font.names[0]",
|
||||
"type": "font",
|
||||
"value": "GungsuhChe",
|
||||
"point": 2,
|
||||
"desc": {
|
||||
"돋움체": "DotumChe",
|
||||
"궁서체": "GungsuhChe",
|
||||
"굴림체": "GulimChe",
|
||||
"휴먼옛체": "YetR"
|
||||
}
|
||||
},
|
||||
"15": {
|
||||
"ele": "$.children[?(@.name=='행복한 호수공원')].text.font.sizes[0]",
|
||||
"value": 36,
|
||||
"point": 2
|
||||
},
|
||||
"16": {
|
||||
"ele": "$.children[?(@.name=='행복한 호수공원')].text.font.colors[0]",
|
||||
"type": "color",
|
||||
"value": "146c08",
|
||||
"point": 2
|
||||
},
|
||||
"17": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"18": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"19": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"20": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"21": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"22": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"23": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"24": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"25": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"26": {
|
||||
"ele": "none",
|
||||
"point": 0
|
||||
},
|
||||
"27": {
|
||||
"ele": "$[?(@.width == 65 && @.height == 45)]",
|
||||
"type": "size",
|
||||
"value": {
|
||||
"width": 65,
|
||||
"height": 45
|
||||
},
|
||||
"point": 4
|
||||
},
|
||||
"28": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"2": {
|
||||
"1": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[not(@Length<='5' and @ClipLength='-1')]/@ClipIndex",
|
||||
"type": "mediaOrder",
|
||||
"value": ["동영상.mp4", "이미지3.jpg", "이미지1.jpg", "이미지2.jpg"],
|
||||
"point": 4,
|
||||
"desc": "클립의 ClipIndex값이 -1인 경우와 길이가 5프레임 이하인 경우는 제외한다."
|
||||
},
|
||||
"2": {
|
||||
"ele": "/CROASTERP/CRTrackArr[1]/CRVideoTrackArr[1]/CRTrackList[1]/CRTrackClip[1]/@Speed",
|
||||
"type": "oneAnswer",
|
||||
"value": {
|
||||
"speed": "110"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "100당 1배속 / 130 = 1.3배속"
|
||||
},
|
||||
"3": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']",
|
||||
"type": "startEnd",
|
||||
"media": "동영상.mp4",
|
||||
"value": {
|
||||
"start": "0",
|
||||
"end": "380"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "start: 시작시간 / end: 재생시간( 12.20 = 12*30 + 20 = 380 )"
|
||||
},
|
||||
"4": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "effect",
|
||||
"media": "동영상.mp4",
|
||||
"value": {
|
||||
"ID": "44",
|
||||
"VID100": "10",
|
||||
"VID103": "1.2"
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "value값의 키값(VID___)은 이펙트의 속성종류에 따라 변경되므로 채점기준표작성시 확인 필요"
|
||||
},
|
||||
"5": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@Name",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Text",
|
||||
"value": "호수의 시원한 전경",
|
||||
"point": 3
|
||||
},
|
||||
"6": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Text",
|
||||
"value": "굴림체",
|
||||
"point": 2
|
||||
},
|
||||
"7": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Text",
|
||||
"value": "110",
|
||||
"point": 2
|
||||
},
|
||||
"8": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Text.Color",
|
||||
"value": "f4511e",
|
||||
"point": 2,
|
||||
"desc": "컬러값은 RGB로 입력한다, [대소문자, #]허용 (#FFFFFF, ffffff 두 값 모두 허용)"
|
||||
},
|
||||
"9": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@*[name()='VID600' or name()='VID601']",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Location",
|
||||
"value": ["0.3125", "0.92962962"],
|
||||
"point": 2,
|
||||
"desc": "정답 파일의 자막 좌표를 기준으로 프로그램 내부적으로 0.1까지 오차를 허용한다"
|
||||
},
|
||||
"10": {
|
||||
"ele": "",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.StartTime",
|
||||
"value": 170,
|
||||
"point": 2,
|
||||
"desc": "내부적으로 자막의 시작시간과 길이를 계산"
|
||||
},
|
||||
"11": {
|
||||
"ele": "",
|
||||
"search": "호수의 시원한 전경",
|
||||
"type": "video.Length",
|
||||
"value": 180,
|
||||
"point": 2,
|
||||
"desc": "내부적으로 자막의 시작시간과 길이를 계산"
|
||||
},
|
||||
"12": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Mute",
|
||||
"type": "Mute",
|
||||
"media": "동영상.mp4",
|
||||
"value": "1",
|
||||
"point": 2
|
||||
},
|
||||
"13": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지3.jpg",
|
||||
"value": 150,
|
||||
"point": 2
|
||||
},
|
||||
"14": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지3.jpg",
|
||||
"value": {
|
||||
"ID": "173",
|
||||
"VID101": "300"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"15": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지3.jpg",
|
||||
"value": {
|
||||
"ID": "21",
|
||||
"Range": "500:530",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"16": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지1.jpg",
|
||||
"value": 210,
|
||||
"point": 2
|
||||
},
|
||||
"17": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지1.jpg",
|
||||
"value": {
|
||||
"ID": "67",
|
||||
"VID102": "60"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"18": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지1.jpg",
|
||||
"value": {
|
||||
"ID": "10",
|
||||
"Range": "680:740",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"19": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']/@Length",
|
||||
"type": "imageLength",
|
||||
"media": "이미지2.jpg",
|
||||
"value": 180,
|
||||
"point": 2
|
||||
},
|
||||
"20": {
|
||||
"ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "imageOverlay",
|
||||
"media": "이미지2.jpg",
|
||||
"value": {
|
||||
"ID": "184",
|
||||
"VID103": "50"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버레이 속성 키값(VID10X) 확인하고 변경"
|
||||
},
|
||||
"21": {
|
||||
"ele": "//CRTransFilter[@ClipIndex='{CRTrackClipIndex}']",
|
||||
"type": "clipTransition",
|
||||
"media": "이미지2.jpg",
|
||||
"value": {
|
||||
"ID": "7",
|
||||
"Range": "890:920",
|
||||
"Type": "2"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "오버랩일 경우 Type속성값 16으로 변경"
|
||||
},
|
||||
"22": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr/@Name",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "video.Text",
|
||||
"value": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"point": 3
|
||||
},
|
||||
"23": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "video.Text",
|
||||
"value": "궁서체",
|
||||
"point": 2
|
||||
},
|
||||
"24": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "video.Text",
|
||||
"value": "150",
|
||||
"point": 2
|
||||
},
|
||||
"25": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "video.Text.Color",
|
||||
"value": "1976d2",
|
||||
"point": 2,
|
||||
"desc": "컬러값은 RGB로 입력한다, [대소문자, #]허용 (#FFFFFF, ffffff 두 값 모두 허용)"
|
||||
},
|
||||
"26": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='2']",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "video.Text.Outline",
|
||||
"value": {
|
||||
"width": "25",
|
||||
"color": "cdf9fc"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "두께는 XML에서는 소수점으로 표기되지만, 프로그램 내부적으로 변환하여 사용하므로 현재 파일에서는 정수로 작성"
|
||||
},
|
||||
"27": {
|
||||
"ele": "//CROwneUnit[{index}]/CRCUnitArr",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "opening.Text.FadeInEffect",
|
||||
"value": {
|
||||
"VID505": "15",
|
||||
"VID507": "2"
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "오프닝자막의 나타나기 효과를 확인하는 문항. id속성은 VID505, playtime속성은 VID507으로 XML 내부에 표기되어 있다."
|
||||
},
|
||||
"28": {
|
||||
"ele": "",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "opening.StartTime",
|
||||
"value": 0,
|
||||
"point": 2,
|
||||
"desc": "오프닝자막의 시작시간 value 속성만 수정"
|
||||
},
|
||||
"29": {
|
||||
"ele": "",
|
||||
"search": "호수공원의 추억 (Memories of Lake Park)",
|
||||
"type": "opening.Length",
|
||||
"value": 120,
|
||||
"point": 2
|
||||
},
|
||||
"30": {
|
||||
"ele": "",
|
||||
"type": "audio.StartTime",
|
||||
"media": "음악.mp3",
|
||||
"value": 0,
|
||||
"point": 2
|
||||
},
|
||||
"31": {
|
||||
"ele": "//CRTrackList[@Name='오디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']",
|
||||
"type": "audio.EndTime",
|
||||
"media": "음악.mp3",
|
||||
"value": 900,
|
||||
"point": 2
|
||||
},
|
||||
"32": {
|
||||
"ele": "//CRTrackList[@Name='오디오1']/CRTrackClip[@ClipIndex='{CRClipIndex}']//CRFilter",
|
||||
"type": "audio.Effect",
|
||||
"media": "음악.mp3",
|
||||
"value": {
|
||||
"ID": "1",
|
||||
"PlayTime": "60"
|
||||
},
|
||||
"point": 2,
|
||||
"desc": "ID속성-페이드인:0 / 페이드아웃: 1"
|
||||
},
|
||||
"33": {
|
||||
"ele": "none",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"4": {
|
||||
"1": {
|
||||
"type": "canvas.Size",
|
||||
"ele": "//Document/Width/@value | //Document/Height/@value",
|
||||
"value": ["650", "350"],
|
||||
"point": 5,
|
||||
"desc": "캔버스 사이즈 650*350"
|
||||
},
|
||||
"2": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 5,
|
||||
"desc": "자유 변형 문항은 채점 불가"
|
||||
},
|
||||
"3": {
|
||||
"type": "layer.exists",
|
||||
"ele": "//Layer/Name/@value",
|
||||
"value": "Museum",
|
||||
"point": 5,
|
||||
"desc": "Museum 레이어가 있는지 여부 체크"
|
||||
},
|
||||
"4": {
|
||||
"type": "layer.Effects",
|
||||
"ele": "//Layer/Effects/Item",
|
||||
"ele_temp": "//Layer[Name[@value='{search}']]/Effects/Item",
|
||||
"search": "Museum",
|
||||
"value": {
|
||||
"name": "선명하게",
|
||||
"option": {
|
||||
"양": "10"
|
||||
}
|
||||
},
|
||||
"point": 5,
|
||||
"desc": {
|
||||
"흑백": "강도",
|
||||
"밝기/대비": ["밝기", "대비"],
|
||||
"노출": "노출",
|
||||
"색조/채도": ["색조", "채도", "명도"],
|
||||
"감마": ["리프트", "감마", "게인"],
|
||||
"세피아": ["U", "V"],
|
||||
"생동감": "생동감",
|
||||
"흐리게": "반경",
|
||||
"글로우": ["반경", "밝기", "대비"],
|
||||
"픽셀효과": "셀크기",
|
||||
"선명하게": "양"
|
||||
}
|
||||
},
|
||||
"5": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 6,
|
||||
"desc": "올가미 도구/이미지 문항은 채점 불가"
|
||||
},
|
||||
"6": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Effects/Item/Name/@value",
|
||||
"value": "세피아",
|
||||
"point": 6,
|
||||
"desc": "세피아 효과가 있는지 여부 체크"
|
||||
},
|
||||
"7": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Shapes/Shape/shape_type/@value",
|
||||
"value": "ROUNDED_RECTANGLE",
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 타입이 타원인지 체크"
|
||||
},
|
||||
"8": {
|
||||
"type": "shape.size",
|
||||
"ele": "//Layer//op_points",
|
||||
"value": {
|
||||
"width": 90,
|
||||
"height": 20
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"9": {
|
||||
"type": "shape.color",
|
||||
"ele": "//Layer//Shape[contains(draw_type/@value, 'Interior')]/secondary_color/@value",
|
||||
"value": "FF0000",
|
||||
"point": 6,
|
||||
"desc": ""
|
||||
},
|
||||
"10": {
|
||||
"type": "layer.blend.opacity",
|
||||
"ele": "//Layer",
|
||||
"value": {
|
||||
"BlendOp": "중첩",
|
||||
"Opacity": "80"
|
||||
},
|
||||
"point": 6
|
||||
},
|
||||
"11": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "기본설정"
|
||||
},
|
||||
"12": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
},
|
||||
"5": {
|
||||
"1": {
|
||||
"type": "canvas.Size",
|
||||
"ele": "//Document/Width/@value | //Document/Height/@value",
|
||||
"value": ["650", "450"],
|
||||
"point": 5,
|
||||
"desc": "캔버스 사이즈 650*450"
|
||||
},
|
||||
"2": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 5,
|
||||
"desc": "배경색 문항은 채점 불가"
|
||||
},
|
||||
"3": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/MaskOpType/@value",
|
||||
"value": "Layering",
|
||||
"point": 6,
|
||||
"desc": "레이어 마스크 설정 확인"
|
||||
},
|
||||
"4": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 6,
|
||||
"desc": "가로방향 흐릿하게 문항은 채점 불가"
|
||||
},
|
||||
"5": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//shape_type/@value",
|
||||
"value": "RECTANGLE",
|
||||
"point": 3,
|
||||
"desc": "모서리가 둥근 사각형 : ROUNDED_RECTANGLE / 사각형 : RECTANGLE"
|
||||
},
|
||||
"6": {
|
||||
"type": "shape.size",
|
||||
"ele": "//Layer//op_points",
|
||||
"value": {
|
||||
"width": 380,
|
||||
"height": 70
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"7": {
|
||||
"type": "gradient.color",
|
||||
"ele": "//Layer/Shapes/Shape",
|
||||
"startColor": "gradient_start_color/@value",
|
||||
"endColor": "gradient_end_color/@value",
|
||||
"value": {
|
||||
"startColor": "00C9BA",
|
||||
"endColor": "A6A600"
|
||||
},
|
||||
"point": 6
|
||||
},
|
||||
"8": {
|
||||
"type": "text.exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/lines/Item/@value",
|
||||
"value": "해양 박물관",
|
||||
"point": 5
|
||||
},
|
||||
"9": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Name/@value",
|
||||
"value": "바탕체",
|
||||
"point": 3
|
||||
},
|
||||
"10": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/{style}/@value",
|
||||
"style": "Italic",
|
||||
"value": "True",
|
||||
"point": 3
|
||||
},
|
||||
"11": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Size/@value",
|
||||
"value": "36",
|
||||
"point": 3
|
||||
},
|
||||
"12": {
|
||||
"type": "text.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Interior')]/secondary_color/@value",
|
||||
"value": "151DE8",
|
||||
"point": 3
|
||||
},
|
||||
"13": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT']/outline_peninfo/Width/@value",
|
||||
"value": "3",
|
||||
"point": 3
|
||||
},
|
||||
"14": {
|
||||
"type": "text.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Outline')]/primary_color/@value",
|
||||
"value": "FFFFFF",
|
||||
"point": 3
|
||||
},
|
||||
"15": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/MaskOpType/@value",
|
||||
"value": "Clipping",
|
||||
"point": 6,
|
||||
"desc": "클리핑 마스크 항목은 별도 레이어로 추가되고 해당 속성을 추가해놓은 레이어가 있는지 여부 체크 함"
|
||||
},
|
||||
"16": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer/Shapes/Shape/shape_type/@value",
|
||||
"value": "ELLIPSE",
|
||||
"point": 3,
|
||||
"desc": {
|
||||
"사각형": "RECTANGLE",
|
||||
"원형/타원형": "ELLIPSE",
|
||||
"17~20 문항 option값 변경":""
|
||||
}
|
||||
},
|
||||
"17": {
|
||||
"type": "clipping.size",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']//op_points",
|
||||
"option": "ELLIPSE",
|
||||
"value": {
|
||||
"width": 180,
|
||||
"height": 180
|
||||
},
|
||||
"point": 3,
|
||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||
},
|
||||
"18": {
|
||||
"type": "exists",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']/outline_peninfo/Width/@value",
|
||||
"option": "ELLIPSE",
|
||||
"value": "7",
|
||||
"point": 3
|
||||
},
|
||||
"19": {
|
||||
"type": "clipping.color",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}' and contains(draw_type/@value, 'Outline')]/primary_color/@value",
|
||||
"option": "ELLIPSE",
|
||||
"value": "FF3030",
|
||||
"point": 3,
|
||||
"desc": "채우기:secondary_color, 외곽선:primary_color"
|
||||
},
|
||||
"20": {
|
||||
"type": "shadow",
|
||||
"ele": "//Layer//Shape[shape_type/@value='{option}']",
|
||||
"option": "ELLIPSE",
|
||||
"value": {
|
||||
"shadow": true,
|
||||
"width": "5",
|
||||
"distance": "3",
|
||||
"blur": "1",
|
||||
"angle": "320"
|
||||
},
|
||||
"point": 5,
|
||||
"desc": "그림자 속성이 있는 경우 그림자 속성의 너비, 거리, 흐림 정도, 각도를 비교하여 정답 채점"
|
||||
},
|
||||
"21": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "기본설정"
|
||||
},
|
||||
"22": {
|
||||
"type": "none",
|
||||
"ele": "",
|
||||
"point": 0,
|
||||
"desc": "파일명 확인"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user