From 98700d073ac9b49f5da6d02eea50e85d866ece9a Mon Sep 17 00:00:00 2001 From: dragdra Date: Mon, 7 Apr 2025 17:18:13 +0900 Subject: [PATCH] =?UTF-8?q?=EC=97=91=EC=85=80=20=EC=B1=84=EC=A0=90?= =?UTF-8?q?=EA=B2=B0=EA=B3=BC=20=ED=8C=8C=EC=9D=BC=20=EC=B6=9C=EB=A0=A5=20?= =?UTF-8?q?=EB=B6=80=EB=B6=84=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 250402_DIC_2503A_TEST.xlsx | Bin 22214 -> 0 bytes 250403_DIC_2503A_TEST.xlsx | Bin 26972 -> 0 bytes 250404_DIC_2503A_TEST.xlsx | Bin 26976 -> 0 bytes ...3B_TEST.xlsx => 250407_DIC_2503A_TEST.xlsx | Bin 26372 -> 27242 bytes 250407_DIC_2503A_채점결과.xlsx | Bin 0 -> 156599 bytes 250407_DIC_2503B_채점결과.xlsx | Bin 0 -> 217710 bytes DIC_2503A.json | 26 +- DIC_2503B.json | 22 +- DIC_2503C.json | 26 +- psdExport_2.js | 63 +- .../2503/excel_채점결과/250403_DIC_2503A_채점결과.xlsx | Bin .../2503/excel_채점결과/250404_DIC_2503A_채점결과.xlsx | Bin .../2503/json_채점기준표/0404/DIC_2503A.json | 688 +++++++++++++++++ .../2503/json_채점기준표/0404/DIC_2503B.json | 690 ++++++++++++++++++ .../2503/json_채점기준표/0404/DIC_2503C.json | 688 +++++++++++++++++ 15 files changed, 2135 insertions(+), 68 deletions(-) delete mode 100644 250402_DIC_2503A_TEST.xlsx delete mode 100644 250403_DIC_2503A_TEST.xlsx delete mode 100644 250404_DIC_2503A_TEST.xlsx rename 250404_DIC_2503B_TEST.xlsx => 250407_DIC_2503A_TEST.xlsx (55%) create mode 100644 250407_DIC_2503A_채점결과.xlsx create mode 100644 250407_DIC_2503B_채점결과.xlsx rename 250403_DIC_2503A_채점결과.xlsx => 회차별채점자료/2503/excel_채점결과/250403_DIC_2503A_채점결과.xlsx (100%) rename 250404_DIC_2503A_채점결과.xlsx => 회차별채점자료/2503/excel_채점결과/250404_DIC_2503A_채점결과.xlsx (100%) create mode 100644 회차별채점자료/2503/json_채점기준표/0404/DIC_2503A.json create mode 100644 회차별채점자료/2503/json_채점기준표/0404/DIC_2503B.json create mode 100644 회차별채점자료/2503/json_채점기준표/0404/DIC_2503C.json diff --git a/250402_DIC_2503A_TEST.xlsx b/250402_DIC_2503A_TEST.xlsx deleted file mode 100644 index 12413c3c0e0c20acf6f6f72a7ad9b0ad066d282a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22214 zcmeHP>u)5-ai?M>Fcb)m5F0Q81Q;w3e=*4AKFA{(lFo2R9(jBmkGscv7y;coGrK#- z*_qMIEFX3PoTN)|u#lH?G9ic)sb_bA{5_ctJ62&CyM}Jy*EiSRS1!D1N|fomq}; z%oUCdzwovB=bxM1HY^r^kl!&~UjZ$)KUe4kfjd(y`dY{6GJni*4I5Hgj@M-YJbLY- z%d|b#Hj3r(@yQ~TAkk5n&*)TE^|^w#s+S5%wtqj=5zi@x=Uw?aK1b@FNz%HBe{3vHLT$jN2 z3>yT6y2lQ{d%BhYV3(P8L9tmEAbgbrRB7;rpPvntFIj*CJMfX9SzaBT$H+*4Yp@x8 zuY?!>$gf$Rvd=8Qu4(JeLBlu%JX_2UAYraB&i^5Ti?NUu^pQ=;E%Se&TqvOLm3f|C zyBTL%TCPrCT8#B`1}n((EiEn8mP)Zc&cHMcYAVW-)>&PiDlJ4hQ%vGEue&xrF<#B` zr}S5HWu9JGSeTd&%OaF=CUINM@lTCUR@HKbpEC*mi5!1*L9Nv$GyI%M@K5IWmoH6E zRP&aOvY{`wLH=IPH z!_15X>ws=T^-|EuFm4_(i{e`_vc}u-Ab3!WmwR_IWvzF-USJYAuXVZ^#tp}@795W> zz#8V2vT&nkx9QBiUYc*4v3)A<8nZJ^yVP?bYDS>U*uK^=GR54om>s|n#5Mv2)0{oS zAZmBZG&6SHFg4HdomQaSGL;2pk|t@G%?ywdp%t?W?Q%rb8Jap{n~fc1!Lg`XFBq8%SubE+N@at=XeZS$>n!L{g{&WWTAFXk51^&nhUF+ry5akj z%vBHSo6^0;AYPHpzF{48vz%UF?om3|nd7867oELYhjm?ww{F^=&co<|hxvf*U#TR*Z|%-~T5LV6}r zcTM}Wux*(Tw?z)0h3&b53Y{3`JS$SL?#K5_7@`+h&)zb?EAr_7EJA-4p$q@#BXmDs zzWBJDgkp%&I3N*YZ9eku_8oY)Ov|d{JNdfL$KF14K>9KeQI1cm81ajk+ksp3WXK@H z*Y+5fQ9LKOVFsOghv5WDiN8j+{ZMt=S6m0?Y{og6)Qy?K*gp_&n-lmRA|i*+f(=I( zWFIAhr(?%IpP{E*?RW5}}p>F5Ntb~OcIJXin8V`z@+~O*uiTQgum^`i; z5Myh?$VP$j5LkHqH?fJvzhMclyiML$@ zp{Ilo652= zCsF?LL>0kyF%=+!$zY|ZOaVmx*Gd5x$u_OgY8hIPZtN5VZ6_YXNa*we!>f1n1Ep#8 zyln=}4>ra6=%x=77Tlrn0cO|G+B_*6Tf<0`p3~xdg3c_r!@_8Zvon#$33d+ExD5O$ zRXnI0S$1Bz;j4lke^FIQ!}$MMRj@mN8H9?CEug{VuE!Mgl(~ZA1sw;XklQh}We@s& z9y6e;aAVt$E)x;p@X|Mya)!{W?S)0=uU!;XBb-$mN@#(P*w`N9--0- z6>&tRitD?g*iB>Kuo@TxCou*Wlny|hN0TrNa6TD-+2_!Mnr$4Tr2Q=u$>Oe4_`v`4 zz(qJSR7x64AbunJ$3^7U$_`wFJQt7p$aF<8AsHoABd^GGe$&%oR_83jARTb3uN4t1 zSL5jU8GzV{1X{Yiej& z*+qfWirzzb!|;W!^jehDyaNrr2($h@ORP@$EjC}JM)MVmC@zjPohslD&(@hpy3XGQr z9;|SB3|_tJJpMwbBaqG^D=i0K|MzDf+~zx}$A*j_dCP4ayRf5&FR^o6&p~H6mh}5 z6cdvLMeM|=IXX-SeC5TS6a4P`?|%D(Ke=Cg|J_&Nq6k{2Bd#C5@v^w-cE$CB`+qEM zd|zBYdh0u(4EKhx81u8}6q(W>VSd*Crf~WaUs}~1%kdQ6hT%&xu96Fm8Y~rrlhrL) zxUh}{nac@a3W9J@M1#nIUtrb&<3U^i^dcn8&q6N*Lw$Q09x9J3d(}f$|WNpW0 z7TgviiSP#0YDPG^y4lL;K5V5L82Vo{0=6~YLV?0tp-()Z{E9`hpjL(=DOC= zX0O{cU;!ET{e*4HbA^0TmB~~kE>yVlVH1U6X)0FS?3oq}vxsVdPW>=34DaFt*0c;h zAdPbYqv)bDYs86jh2(z2(9K?VI_BCk_Z`ut%@vY+!BypLp9BRd2t9mp^`p08=N10G zEP@cZ&*=Q|C{}l2;RwbP=Zi-2E-oFG!)@G8rg%mRmRU+O>I(N29tmO1>;M`pzE`3> zX_$~SZk&#QanQBkuLACla8kOAk0+D^Q^yf%r8+iMDUVmsCl#&dgG=2IDZI;xCCi~C zTtmqL1!2z>&l0Y~306ZvxDF=>72!F;bvQwY@>~$E!wFsr1>riJAnXw2Il^@~L2xxL z2-o2ROW?{}5^shSjnM-)q3Fb5=z(4<%r(K!prR3gN(q7n6^$TNN-#92Xau5Cf}%l1 zBN&wu91SWO0jZQAX;9G!N~Hu#gNjCADkW$dP_!JO32%mjL^(ne-V7-kp{YDHn#vKH z@Mg$dBQ%wVMia(X?sRxFWUdjK%0r{69H9wshRiiWQ+a4Kl_NCa&2YI^A~fO6kfITq zDnp~G5}^rihRiiWQ)Os0RU$Ou%|N*pMPJT)_eI$A3*%wu0H=-cl|{oF73vOSM%Z2i zl>PZnUVG!@m4~y%eH^!jEDKqd%5Eu}UX#9bU90ILRCcS`^kq4HBAb3$ zPM^%CugK|_vgxaG`cyXkikv>3O<$AKOXFFF^&Ep_!Hpb)WWvoHgJi?2IR?pyTR8^F ziq~=sk{P#i43Zt|IR?p)jU0ny$?GyhS+e9#jzO~IjU0ny$(uO_$&$Bn43Z^p=NKeQ zs*+DtcFU3})tpO}C0nX_r;?1R=G>|*SyRn9Rz)(Wnscp+WKT8cTouWnYRRzPE78e-22(_kN!xFRd9&~l--|~TB9bY zQlS<}>XM*J4ZciLFOwQpNa`v{y+TsgNa{LC-5{x(B=ssu-6E;iNa{98t&`LSNxe=| zcS!0DL6zF#Cdqq?q~0c}Dtt$PFp&VEhUk&QsRpl z55d`Y;UO?SILkv|;>$gf+yoWm-9%8OA}*5DB|();wMMBXSLQ>aA>N-i? zAgP-q^(sl-BB|F%>NZKOlhg)Dy-rehNa_timD=Ja$$N{W-X^K4N|P4^S;|kX(cCnC z)DS=t*whd~GMR>u8e*uQn^a>rfwAyeZnAs)*8StZzIXhiw|7ro|H1Lk?;XGS!`+kD z-aPrr>J^f@ zMpD;F>IO;OB&k

J~}8MpCy)YF$v1_{hUygXFzVQg=w|4MCOK;wH&^i=^Hrsj5no z7X(?#Pp#41G=9_&KoZ#05J57ThL9R!Xfhc>X1bh-*q30cA>~WQKfL?NtB;O<`tI?A z2PfZsJUTvJs$MFOe*BMjPhNlNJ~}8MpCy)YMrDuNa}Txx>Wd@V1nZhhnK$V>M>H!_01FNoEx^cUObU(|}U zT-ch{q2Dp+Em5kBq^rSJ$rY0_pRuJ~rf>FcmqCDe7b7X3?;rw&6v7IHS{fhDY*H@nz z8NpxZw9(4z)9s9jv|O0eUf4o(RI)7({7W}B`56q2j_KbBk3qpjd_ENo(T-n344(Y# z9!wZ1AOHN($L~CW4>@q#4=zokhs>C8!_OtbtrU@Te6osU^(%K?_>Xlsg#~}V4xv&U z!}3dV^a{*~iQO?$03GUBml%&Q_3s&@ZtPvjaUaokCe9I^`H?>IBRUHPCLjha(Aj6f zfS($+Zs?~M3AVGGRw6*e#g!;q=EOd5d`|@Bs4SDYlM<2dYpDm_|vn#Ma4?aoXV$cJ^ zI6auzhaIo5Da|*(3H=!0zsY<tlV!Ta{i`CghR$0%CDkBoTeCqweSl}(t3vdsK!xLsXY!sspz zHG{S*D4|KPHgg4tgHd28Vk-3Hgj^F3Zt5$yZ|h@Sf7CdH@z)sl{4o$<-qBc>!AT)Y zHtsP57Ciom*1vyhxln&LnvRM{3elXOZ#D+81P6Fr{~6`r+vU@z z1U^j>xUw@cOg^3%u8~hSJO3i%w4CEHYc!Y`F82sx(mTgMIRbk5F#BmNOAK&N%Nqb5 zjZ>aFYXacWEJIX;BJb2;6!8qaA@n~s6owM1fBg>;mG#IcGA2qsf&4&^3}RV<{0&c{ z;6D|vAOWQ;D(}2cL|^(HE*d*p`n*qBi#)@bXxaTet|i@CvameUk_dlsF)l)M3aczE zPZ%V^-(Jd0AIO68OJ5@RUzhW*fU>kamQSQxS5nfEGs@!f2s9D@bd4O3Zms?5uOZWO N@c&x?iirk3{Wm9CZiD~; diff --git a/250403_DIC_2503A_TEST.xlsx b/250403_DIC_2503A_TEST.xlsx deleted file mode 100644 index c17b2f7faac575759bb9f6ec96f68b4b15a96ae6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26972 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 diff --git a/250404_DIC_2503A_TEST.xlsx b/250404_DIC_2503A_TEST.xlsx deleted file mode 100644 index 37169c703d49d51e5460067241ccc4e5e62b4250..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26976 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 delta 2003 zcmZ`)U1%It6wc0K5-s_eCCMi4u1Iat&BkQ@b~C$XGy6B2WPg(ECRU>rj8xFAApQ|6 zfhM94MunvP2&S!33l^Iep`~cmzKFggRB8)8RD4iGi#93P7bz6cbLUP_lihikJKy={ zoOADY&$;*dcaGODInK`B;c%LI5XU>BsPPA?Z!CVierg4} ze^;YyJ&#}ie0F{Q$j0(4N`A$W#0P#K+B#kJvK-O6iM+A6wDImq9165xv~${F;)--1 z7JBP&yK`DFHJnu?d=#*V04K(~hzME4-(8G2qslmaKN)q)_;5EfzS_Ycb7wB_RYH8c%qbNL<<#a+i zNU1MNyQ~%Lk!RRMWR9wp8NpO=#a_jEMS^N{I8#apim{t=u_ein)gGzbdCzn$63O<-OeVEX+uI(=23NB$Q&E>K_74%dhmd{YIOdeG(pNAx1%lR@W zb9q#S%R?h8g-B>tFjc!q>ah`;ahfWxlI31GR8~1PSRs{dhZ1Z>LD!URVyK}Cp0?fc zTr2BYVYgJk*8wVw;TcV*52R>ohf1 zy%OGefPHiMGJPbU_HU2%*(z%qSD8lU@=|n`f*p_YU>*G|0Pnb~{Z;_ha&H=&&bsZ) z`_CDxun$^=(%Q6B3%T)0%!|Ja{`PIzmX~o1Cd28=D0h*uV2cdQu`T zP(Bv-9@B$UgtI2Y8X~5M@2&4vMAIIu5-z0;G@5m|n5ITeH{w=0ME|<6cfg0=(jw*t zIKNK#z<`LhK^Du6=|LZA2Su#dc*l?rON1jsoIgg`KO|z!#$6d7J|p}{hVvH)4`oFB zo-yz~<4FzE1s7IqyrW236&evP#w_iR z5%w2Jt0K?ZHAY$$*$ODDpsOerTL`cP)Qo#EIOd|_V2621xBH1k>ZdxLoix_flc3A8 zX}mqmj~;z%&00TB8C&gi#qxtl$K3b?yK&F`GQQUIpQ{+>pMFSKE})^*CyYIaJPoUR hFjvxr{t0|liV7b-dU$`o(ES)<``fEue6ot3e*lnibtwP< diff --git a/250407_DIC_2503A_채점결과.xlsx b/250407_DIC_2503A_채점결과.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..2804689e85511eac38355db024d3ab98810ad4b8 GIT binary patch literal 156599 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 literal 0 HcmV?d00001 diff --git a/250407_DIC_2503B_채점결과.xlsx b/250407_DIC_2503B_채점결과.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..45b9baed4db7bbf58ee5e49f05f8e42695fe9fdc GIT binary patch literal 217710 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 literal 0 HcmV?d00001 diff --git a/DIC_2503A.json b/DIC_2503A.json index 9f0a504..a97a222 100644 --- a/DIC_2503A.json +++ b/DIC_2503A.json @@ -35,7 +35,7 @@ "width": 65, "height": 45 }, - "point": 10 + "point": 4 }, "9": { "ele": "none", @@ -59,7 +59,7 @@ "4": { "ele": "$.children[?(@.name=='놀이터')].name", "value": "놀이터", - "point": 10 + "point": 4 }, "5": { "ele": "none", @@ -68,29 +68,29 @@ "6": { "ele": "$.children[?(@.name=='Wooden playground')].name", "value": "Wooden playground", - "point": 10 + "point": 4 }, "7": { "ele": "$.children[?(@.name=='Wooden playground')].text.font.names[0]", "type": "font", "value": "Arial", - "point": 10 + "point": 2 }, "8": { "ele": "$.children[?(@.name=='Wooden playground')].text.font.names[0]", "value": "Arial-BoldItalicMT", - "point": 10 + "point": 2 }, "9": { "ele": "$.children[?(@.name=='Wooden playground')].text.font.sizes[0]", "value": 48, - "point": 10 + "point": 2 }, "10": { "ele": "$.children[?(@.name=='Wooden playground')].text.font.colors[0]", "type": "color", "value": "801717", - "point": 10 + "point": 2 }, "11": { "ele": "none", @@ -107,24 +107,24 @@ "14": { "ele": "$.children[?(@.name=='나무 놀이터')].name", "value": "나무 놀이터", - "point": 10 + "point": 4 }, "15": { "ele": "$.children[?(@.name=='나무 놀이터')].text.font.names[0]", "type": "font", "value": "YetR", - "point": 10 + "point": 2 }, "16": { "ele": "$.children[?(@.name=='나무 놀이터')].text.font.sizes[0]", "value": 36, - "point": 10 + "point": 2 }, "17": { "ele": "$.children[?(@.name=='나무 놀이터')].text.font.colors[0]", "type": "color", "value": "0e4510", - "point": 10 + "point": 2 }, "18": { "ele": "none", @@ -145,7 +145,7 @@ "22": { "ele": "$.children[?(@.name=='은행잎')].name", "value": "은행잎", - "point": 10 + "point": 4 }, "23": { "ele": "none", @@ -166,7 +166,7 @@ "width": 65, "height": 35 }, - "point": 10 + "point": 5 }, "27": { "ele": "none", diff --git a/DIC_2503B.json b/DIC_2503B.json index 29d267e..effaff0 100644 --- a/DIC_2503B.json +++ b/DIC_2503B.json @@ -35,7 +35,7 @@ "width": 65, "height": 45 }, - "point": 10 + "point": 5 }, "9": { "ele": "none", @@ -63,29 +63,29 @@ "5": { "ele": "$.children[?(@.name=='Time to stroll')].name", "value": "Time to stroll", - "point": 10 + "point": 4 }, "6": { "ele": "$.children[?(@.name=='Time to stroll')].text.font.names[0]", "type": "font", "value": "Arial", - "point": 10 + "point": 2 }, "7": { "ele": "$.children[?(@.name=='Time to stroll')].text.font.names[0]", "value": "Arial-BoldItalicMT", - "point": 10 + "point": 2 }, "8": { "ele": "$.children[?(@.name=='Time to stroll')].text.font.sizes[0]", "value": 48, - "point": 10 + "point": 2 }, "9": { "ele": "$.children[?(@.name=='Time to stroll')].text.font.colors[0]", "type": "color", "value": "ff9000", - "point": 10 + "point": 2 }, "10": { "ele": "none", @@ -102,24 +102,24 @@ "13": { "ele": "$.children[?(@.name=='즐거운 산책 시간')].name", "value": "즐거운 산책 시간", - "point": 10 + "point": 4 }, "14": { "ele": "$.children[?(@.name=='즐거운 산책 시간')].text.font.names[0]", "type": "font", "value": "GungsuhChe", - "point": 10 + "point": 2 }, "15": { "ele": "$.children[?(@.name=='즐거운 산책 시간')].text.font.sizes[0]", "value": 36, - "point": 10 + "point": 2 }, "16": { "ele": "$.children[?(@.name=='즐거운 산책 시간')].text.font.colors[0]", "type": "color", "value": "035b80", - "point": 10 + "point": 2 }, "17": { "ele": "none", @@ -168,7 +168,7 @@ "width": 65, "height": 45 }, - "point": 10 + "point": 4 }, "28": { "ele": "none", diff --git a/DIC_2503C.json b/DIC_2503C.json index c974a56..a06da43 100644 --- a/DIC_2503C.json +++ b/DIC_2503C.json @@ -35,7 +35,7 @@ "width": 65, "height": 45 }, - "point": 10 + "point": 4 }, "9": { "ele": "none", @@ -59,7 +59,7 @@ "4": { "ele": "$.children[?(@.name=='나무집')].name", "value": "나무집", - "point": 10 + "point": 4 }, "5": { "ele": "none", @@ -68,29 +68,29 @@ "6": { "ele": "$.children[?(@.name=='Park Rest Area')].name", "value": "Park Rest Area", - "point": 10 + "point": 4 }, "7": { "ele": "$.children[?(@.name=='Park Rest Area')].text.font.names[0]", "type": "font", "value": "Arial", - "point": 10 + "point": 2 }, "8": { "ele": "$.children[?(@.name=='Park Rest Area')].text.font.names[0]", "value": "Arial-BoldItalicMT", - "point": 10 + "point": 2 }, "9": { "ele": "$.children[?(@.name=='Park Rest Area')].text.font.sizes[0]", "value": 48, - "point": 10 + "point": 2 }, "10": { "ele": "$.children[?(@.name=='Park Rest Area')].text.font.colors[0]", "type": "color", "value": "076414", - "point": 10 + "point": 2 }, "11": { "ele": "none", @@ -107,24 +107,24 @@ "14": { "ele": "$.children[?(@.name=='공원 쉼터')].name", "value": "공원 쉼터", - "point": 10 + "point": 4 }, "15": { "ele": "$.children[?(@.name=='공원 쉼터')].text.font.names[0]", "type": "font", "value": "GungsuhChe", - "point": 10 + "point": 2 }, "16": { "ele": "$.children[?(@.name=='공원 쉼터')].text.font.sizes[0]", "value": 36, - "point": 10 + "point": 2 }, "17": { "ele": "$.children[?(@.name=='공원 쉼터')].text.font.colors[0]", "type": "color", "value": "4f4300", - "point": 10 + "point": 2 }, "18": { "ele": "none", @@ -145,7 +145,7 @@ "22": { "ele": "$.children[?(@.name=='나무 의자')].name", "value": "나무 의자", - "point": 10 + "point": 4 }, "23": { "ele": "none", @@ -166,7 +166,7 @@ "width": 65, "height": 35 }, - "point": 10 + "point": 5 }, "27": { "ele": "none", diff --git a/psdExport_2.js b/psdExport_2.js index f54f010..9aaad1d 100644 --- a/psdExport_2.js +++ b/psdExport_2.js @@ -19,25 +19,25 @@ const scoringJson = require('./DIC_2503B.json'); // -------------------------------------------------------- // const answerFilesDir = './output/A/DIC'; -// const answerFilesDir = './output/B/DIC'; +const answerFilesDir = './output/B/DIC'; // const answerFilesDir = './output/C/DIC'; // const answerFilesDir = './output/D/DIC'; // TEST // const answerFilesDir = './output/A/TEST'; -const answerFilesDir = './output/B/TEST'; +// const answerFilesDir = './output/B/TEST'; // const answerFilesDir = './output/C/TEST'; // const answerFilesDir = './output/D/TEST'; // -------------------------------------------------------- // const outputExcelFile = './'+todayDate+'_DIC_2503A_채점결과.xlsx'; -// const outputExcelFile = './'+todayDate+'_DIC_2503B_채점결과.xlsx'; +const outputExcelFile = './'+todayDate+'_DIC_2503B_채점결과.xlsx'; // const outputExcelFile = './'+todayDate+'_DIC_2503C_채점결과.xlsx'; // const outputExcelFile = './'+todayDate+'_DIC_2503D_채점결과.xlsx'; // TEST // const outputExcelFile = './'+todayDate+'_DIC_2503A_TEST.xlsx'; -const outputExcelFile = './'+todayDate+'_DIC_2503B_TEST.xlsx'; +// const outputExcelFile = './'+todayDate+'_DIC_2503B_TEST.xlsx'; // const outputExcelFile = './'+todayDate+'_DIC_2503C_TEST.xlsx'; // const outputExcelFile = './'+todayDate+'_DIC_2503D_TEST.xlsx'; @@ -150,14 +150,15 @@ studentDirs.forEach(student => { */ function prepareExcelData(scoringResultList) { return scoringResultList.map(student => { - const flattened = { "학생": student["0"] }; // 학생 이름을 첫 번째 열로 설정 + // const flattened = { "학생": student["0"] }; // 학생 이름을 첫 번째 열로 설정 + const flattened = { "문항": student["0"] }; // 행열을 변환 할 경우 첫 행의 제목을 "문항"으로 설정 // 제외할 키와 서브키 정의 const exceptKeys = [ "0", // 학생 이름 제외 // "1", // psd1 // "2", // psd2 - ]; + ]; const exceptSubkeys = ["videoStartTime", "openingStartTime"]; // 제외할 서브키 // 학생 데이터 순회 @@ -194,37 +195,37 @@ function transposeData(data) { const keys = Object.keys(data[0]); // 행과 열을 변환 -const transposed = keys.map(key => { - const row = { "항목": key }; // 각 열 제목을 "항목"으로 설정 - data.forEach((item, index) => { - //console.log(data[index]['학생']); - row[data[index]['학생']] = item[key]; // 각 학생의 데이터를 열로 추가 + const transposed = keys.map(key => { + const row = { "항목": key }; // 각 열 제목을 "항목"으로 설정 + data.forEach((item, index) => { + //console.log(data[index]['문항']); + row[data[index]['문항']] = item[key]; // 각 학생의 데이터를 열로 추가 + }); + return row; }); - return row; -}); -return transposed; + return transposed; } -// const transposedData = transposeData(flattenedData); -const transposedData = transposeData(flattenedData).slice(1); +const transposedData = transposeData(flattenedData); +// const transposedData = transposeData(flattenedData).slice(1) // 엑셀 파일 생성 -// const worksheet = XLSX.utils.json_to_sheet(flattenedData); -const worksheet = XLSX.utils.json_to_sheet(transposedData); +const worksheet = XLSX.utils.json_to_sheet(transposedData, {skipHeader: true}); const workbook = XLSX.utils.book_new(); // 열 너비 계산 -// const columnWidths = Object.keys(flattenedData[0]).map(key => { -// const maxLength = Math.max( -// key.length, // 열 제목의 길이 -// ...flattenedData.map(row => (row[key] ? row[key].toString().length : 0)) // 각 셀의 데이터 길이 -// ); -// return { wch: maxLength + 1 }; // 여유 공간 추가 -// }); +const columnWidths = Object.keys(transposedData[0]).map(key => { + const maxLength = Math.max( + // key.length, // 열 제목의 길이 + // ...transposedData.map(row => (row[key] ? row[key].toString().length : 0)) // 각 셀의 데이터 길이 + 4 // 고정 너비 + ); + return { wch: maxLength + 1 }; // 여유 공간 추가 +}); // 열 너비 설정 -// worksheet['!cols'] = columnWidths; +worksheet['!cols'] = columnWidths; // Add the worksheet to the workbook XLSX.utils.book_append_sheet(workbook, worksheet, '채점 결과'); @@ -541,10 +542,10 @@ function getGmepScore(gmepData, scoringJson, index) { // 문제의 타입이 video(동영상자막) 또는 opening(오프닝자막)일 경우 else if (type == "video" || type == "opening") { - + // 찾으려는 자막이 존재하지 않는 경우 // (2-28) 문항의 경우 오프닝 자막이 없어도 xpath구문의 sum함수 결과값이 0이 반환되는것을 방지 - if ( trackClipNode === undefined && clipIndex === null ) { + if (trackClipNode === undefined && clipIndex === null) { scoringResult[key] = 0; continue; } @@ -706,7 +707,7 @@ function getScore(psdData, scoring, index) { } if (type == "size") { // console.log(`result ${result.length}`); - if ( result[0].height == value['height'] && result[0].width == value['width'] ) { + if (result[0].height == value['height'] && result[0].width == value['width']) { scoringResult[key] = point; totalScore += point; } @@ -730,7 +731,7 @@ function getScore(psdData, scoring, index) { // } // console.log(`color: ${color}`); - if ( color === value ) { + if (color === value) { scoringResult[key] = point; totalScore += point; } @@ -746,7 +747,7 @@ function getScore(psdData, scoring, index) { // console.log(`result ${result}`); // console.log(`font: ${font}`); - if ( font === value ) { + if (font === value) { scoringResult[key] = point; totalScore += point; } diff --git a/250403_DIC_2503A_채점결과.xlsx b/회차별채점자료/2503/excel_채점결과/250403_DIC_2503A_채점결과.xlsx similarity index 100% rename from 250403_DIC_2503A_채점결과.xlsx rename to 회차별채점자료/2503/excel_채점결과/250403_DIC_2503A_채점결과.xlsx diff --git a/250404_DIC_2503A_채점결과.xlsx b/회차별채점자료/2503/excel_채점결과/250404_DIC_2503A_채점결과.xlsx similarity index 100% rename from 250404_DIC_2503A_채점결과.xlsx rename to 회차별채점자료/2503/excel_채점결과/250404_DIC_2503A_채점결과.xlsx diff --git a/회차별채점자료/2503/json_채점기준표/0404/DIC_2503A.json b/회차별채점자료/2503/json_채점기준표/0404/DIC_2503A.json new file mode 100644 index 0000000..a97a222 --- /dev/null +++ b/회차별채점자료/2503/json_채점기준표/0404/DIC_2503A.json @@ -0,0 +1,688 @@ +{ + "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=='Wooden playground')].name", + "value": "Wooden playground", + "point": 4 + }, + "7": { + "ele": "$.children[?(@.name=='Wooden playground')].text.font.names[0]", + "type": "font", + "value": "Arial", + "point": 2 + }, + "8": { + "ele": "$.children[?(@.name=='Wooden playground')].text.font.names[0]", + "value": "Arial-BoldItalicMT", + "point": 2 + }, + "9": { + "ele": "$.children[?(@.name=='Wooden playground')].text.font.sizes[0]", + "value": 48, + "point": 2 + }, + "10": { + "ele": "$.children[?(@.name=='Wooden playground')].text.font.colors[0]", + "type": "color", + "value": "801717", + "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": "YetR", + "point": 2 + }, + "16": { + "ele": "$.children[?(@.name=='나무 놀이터')].text.font.sizes[0]", + "value": 36, + "point": 2 + }, + "17": { + "ele": "$.children[?(@.name=='나무 놀이터')].text.font.colors[0]", + "type": "color", + "value": "0e4510", + "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": { + "videoStartTime": 170, + "openingStartTime": 0, + "1": { + "ele": "//CRClipArr/CRClip[position() = //CRTrackList[1]/CRTrackClip/@ClipIndex]/@Path", + "type": "array", + "value": [ + "동영상.mp4", + "이미지1.jpg", + "이미지3.jpg", + "이미지2.jpg" + ], + "point": 4 + }, + "2": { + "ele": "/CROASTERP/CRTrackArr[1]/CRVideoTrackArr[1]/CRTrackList[1]/CRTrackClip[1][@Speed='150']", + "point": 2 + }, + "3": { + "ele": "count(//CRClip[@Path='동영상.mp4']/preceding-sibling::*)", + "type": "startend", + "start": "0", + "end": "380", + "point": 2 + }, + "4": { + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='동영상.mp4']/preceding-sibling::*)]//CRFilter[@ID='40'][@VID100='20'][@VID103='0.5']", + "point": 3 + }, + "5": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@Name", + "type": "video", + "value": "자연 놀이터", + "point": 3 + }, + "6": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID102", + "search": "자연 놀이터", + "type": "video", + "value": "굴림체", + "point": 2 + }, + + "7": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID101", + "search": "자연 놀이터", + "type": "video", + "value": "100", + "point": 2 + }, + "8": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool/GCUnit[@Type='4']/@VID100", + "search": "자연 놀이터", + "type": "video", + "value": "-16711795", + "point": 2 + }, + "9": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@*[name()='VID600' or name()='VID601']", + "ele2": "//CRCUnitArr[@Name='{search}']/@*[name()='VID600' or name()='VID601']", + "type": "video", + "search": "자연 놀이터", + "value": [ + 0.39375001, + 0.93333334 + ], + "point": 2 + }, + "10": { + "ele": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/preceding-sibling::CRTrackClip/@Length)", + "ele2": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/preceding-sibling::CRTrackClip/@Length)", + "search": "자연 놀이터", + "type": "video", + "value": 170, + "point": 2 + }, + "11": { + "ele": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/@Length", + "ele2": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/@Length", + "search": "자연 놀이터", + "type": "video", + "value": "120", + "point": 2 + }, + "12": { + "existEle": "//CRClip[@Path='동영상.mp4']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='동영상.mp4']/preceding-sibling::*)]/@Mute", + "type": "searchIndex", + "value": "1", + "point": 2 + }, + "13": { + "existEle": "//CRClip[@Path='이미지1.jpg'] | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지1.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']/../preceding-sibling::CRClip)][1]/@Length", + "type": "searchIndex", + "value": "150", + "point": 2 + }, + "14": { + "type": "multi", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지1.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']/../preceding-sibling::CRClip)][1]//CRFilter/@*[name()='ID' or name()='VID102']", + "value": [ + "103", + "7" + ], + "point": 2 + }, + "15": { + "type": "multi", + "ele": "//CRTransFilter[@ClipIndex=count(//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지1.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']/../preceding-sibling::CRClip)][1]/preceding-sibling::CRTrackClip)][@Type='2']/@*[name()='ID' or name()='Range' or name()='Type']", + "value": [ + "55", + "470:530", + "2" + ], + "point": 2, + "desc": "오버랩일 경우 XPATH구문에서 Type속성값 16으로 변경, 그리고 ClipIndex값은 트랜지션이 끝나는 지점 이미지의 ClipIndex값을 가지게 되어 다음 순서의 이미지로 변경해주어야한다." + }, + "16": { + "existEle": "//CRClip[@Path='이미지3.jpg'] | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지3.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']/../preceding-sibling::CRClip)][1]/@Length", + "type": "searchIndex", + "value": "180", + "point": 2 + }, + "17": { + "type": "multi", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지3.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']/../preceding-sibling::CRClip)][1]//CRFilter/@*[name()='ID' or name()='VID101']", + "value": [ + "69", + "50" + ], + "point": 2 + }, + "18": { + "type": "multi", + "ele": "//CRTransFilter[@ClipIndex=count(//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지2.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']/../preceding-sibling::CRClip)][1]/preceding-sibling::CRTrackClip)][@Type='16']/@*[name()='ID' or name()='Range' or name()='Type']", + "value": [ + "93", + "680:740", + "16" + ], + "point": 2, + "desc": "오버랩일 경우 XPATH구문에서 Type속성값 16으로 변경, 그리고 ClipIndex값은 트랜지션이 끝나는 지점 이미지의 ClipIndex값을 가지게 되어 다음 순서의 이미지로 변경해주어야한다." + }, + "19": { + "existEle": "//CRClip[@Path='이미지2.jpg'] | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지2.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']/../preceding-sibling::CRClip)][1]/@Length", + "type": "searchIndex", + "value": "180", + "point": 2 + }, + "20": { + "type": "multi", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지2.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']/../preceding-sibling::CRClip)][1]//CRFilter/@*[name()='ID' or name()='VID100']", + "value": [ + "132", + "90" + ], + "point": 2 + }, + "21": { + "type": "multi", + "ele": "//CRTransFilter[@ClipIndex=count(//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지2.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']/../preceding-sibling::CRClip)][1]/preceding-sibling::CRTrackClip)][@Type='2']/@*[name()='ID' or name()='Range' or name()='Type']", + "value": [ + "25", + "860:890", + "2" + ], + "point": 2, + "desc": "오버랩일 경우 XPATH구문에서 Type속성값 16으로 변경, 그리고 ClipIndex값은 트랜지션이 끝나는 지점 이미지의 ClipIndex값을 가지게 되어 다음 순서의 이미지로 변경해주어야한다." + }, + "22": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@Name", + "type": "opening", + "value": "자연 속 놀이터 Nature playground", + "point": 3 + }, + "23": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID102", + "search": "자연 속 놀이터 Nature playground", + "type": "opening", + "value": "휴먼옛체", + "point": 2 + }, + "24": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID101", + "search": "자연 속 놀이터 Nature playground", + "type": "opening", + "value": "150", + "point": 2 + }, + "25": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool/GCUnit[@Type='4']/@VID100", + "search": "자연 속 놀이터 Nature playground", + "type": "opening", + "value": "-13962321", + "point": 2 + }, + "26": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='2']/@*[name()='VID100' or name()='VID101']", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool/GCUnit[@Type='2']/@*[name()='VID100' or name()='VID101']", + "search": "자연 속 놀이터 Nature playground", + "type": "opening", + "value": [ + "0.2", + "-1659649" + ], + "point": 2 + }, + "27": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@*[name()='VID505' or name()='VID507']", + "ele2": "//CRCUnitArr[@Name='{search}']/@*[name()='VID505' or name()='VID507']", + "search": "자연 속 놀이터 Nature playground", + "type": "opening", + "value":[ + "5", + "3" + ], + "point": 3 + }, + "28": { + "ele": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/preceding-sibling::CRTrackClip/@Length)", + "ele2": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/preceding-sibling::CRTrackClip/@Length)", + "search": "자연 속 놀이터 Nature playground", + "type": "opening", + "value": 0, + "point": 2 + }, + "29": { + "ele": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/@Length", + "ele2": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/@Length", + "search": "자연 속 놀이터 Nature playground", + "type": "opening", + "value": "120", + "point": 2 + }, + "30": { + "ele": "//CRTrackList[@Name='오디오1'][@Count>='1']/CRTrackClip[1][not(@ClipIndex='-1')]", + "point": 2 + }, + "31": { + "ele": "//CRTrackArr/CRAudioTrackArr/CRTrackList[@Name='오디오1']/CRTrackClip[@Length='750']", + "point": 2 + }, + "32": { + "ele": "//CRTrackArr/CRAudioTrackArr/CRTrackList[@Name='오디오1']//CRFilter[@Type='2'][@ID='1'][@VID8='90']", + "point": 2 + }, + "33": { + "ele": "none", + "point": 0, + "desc": "파일명 확인" + } + }, + "4": { + "1": { + "type": "multi", + "ele": "//Document/Width/@value | //Document/Height/@value", + "value": [ + "650", + "350" + ], + "point": 5, + "desc": "캔버스 사이즈 650*350" + }, + "2": { + "ele": "none", + "point": 5, + "desc": "자유 변형 문항은 채점 불가" + }, + "3": { + "type" : "isExist", + "ele": "//Layer/Name/@value", + "value": "Tracking", + "point": 5, + "desc": "Tracking 레이어가 있는지 여부 체크" + }, + "4": { + "type" : "multiValue", + "ele": "//Layer[Name[@value='{layer}']]/Effects/Item/Name/@value | //Layer[Name[@value='{layer}']]/Effects/Item/EffectData/{option}/@value", + "layer" : "Tracking", + "option" : "brightness", + "value" : [ + "30", + "밝기/대비" + ], + "point": 5, + "desc": "Tracking 레이어의 효과 체크" + }, + "5": { + "ele": "none", + "point": 6, + "desc": "올가미 도구/이미지 문항은 채점 불가" + }, + "6": { + "type" : "isExist", + "ele": "//Layer/Effects/Item/Name/@value", + "value" : "세피아", + "point": 6, + "desc": "세피아 효과가 있는지 여부 체크" + }, + "7": { + "type": "exact", + "ele": "//Layer/Shapes/Shape/shape_type/@value", + "value": "ELLIPSE", + "point": 3, + "desc": "레이어 쉐이프 타입이 타원인지 체크" + }, + "8": { + "type": "size", + "posX": "//Layer//op_points[Item]/Item[last()]/X/@value - //Layer//op_points[Item]/Item[1]/X/@value", + "posY": "//Layer//op_points[Item]/Item[last()]/Y/@value - //Layer//op_points[Item]/Item[1]/Y/@value", + "value": { + "width": 80, + "height": 80 + }, + "point": 3, + "desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점" + }, + "9": { + "type": "color", + "ele": "//Layer//Shape[contains(draw_type/@value, 'Interior')]/secondary_color/@value", + "value": "999999", + "point": 6, + "desc": "색상 코드 비교 시 소문자로 입력할 것" + }, + "10": { + "type" : "multiValue", + "ele": "//Layer/BlendOp/@value | //Layer/Opacity/@value", + "value" : [ + "색 회피율", + "80" + ], + "point": 5, + "desc": "혼합모드(색 회피율, 불투명도 : 80)" + }, + "11": { + "ele": "none", + "point": 0, + "desc": "기본설정" + }, + "12": { + "ele": "none", + "point": 0, + "desc": "파일명 확인" + } + }, + "5": { + "1": { + "type": "multi", + "ele": "//Document/Width/@value | //Document/Height/@value", + "value": [ + "650", + "450" + ], + "point": 5, + "desc": "캔버스 사이즈 650*450" + }, + "2": { + "ele": "none", + "point": 5, + "desc": "배경색 문항은 채점 불가" + }, + "3": { + "ele": "//Layer[contains(Name/@value, 'Layer 2')][MaskOpType/@value='Layering']", + "point": 6 + }, + "4": { + "ele": "none", + "point": 5, + "desc": "가로방향 흐릿하게 문항은 채점 불가" + }, + "5": { + "ele": "//Layer[contains(Name/@value, 'Layer 3')]//shape_type/@value", + "answer": "RECTANGLE", + "point": 6 + }, + "6": { + "type": "size", + "posX": "//Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[last()]/X/@value - //Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[1]/X/@value", + "posY": "//Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[last()]/Y/@value - //Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[1]/Y/@value", + "value": { + "width": 300, + "height": 50 + }, + "point": 3, + "desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점" + }, + "7": { + "type": "gradient", + "startColor": "//Layer[contains(Name/@value, 'Layer 3')]//gradient_start_color/@value", + "endColor": "//Layer[contains(Name/@value, 'Layer 3')]//gradient_end_color/@value", + "value": { + "startColor": "347813", + "endColor": "041177" + }, + "point": 6 + }, + "8": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/lines/Item/@value", + "value": "어린이 과학관", + "point": 5 + }, + "9": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Name/@value", + "value": "돋움", + "point": 3 + }, + "10": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Italic/@value", + "value": "True", + "point": 3 + }, + "11": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Size/@value", + "value": "32", + "point": 3 + }, + "12": { + "type": "color", + "ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Interior')]/secondary_color/@value", + "value": "f04da5", + "point": 3, + "desc": "색상 코드 비교 시 소문자로 입력할 것" + }, + "13": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/outline_peninfo/Width/@value", + "value": "3", + "point": 3 + }, + "14": { + "type": "color", + "ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Outline')]/primary_color/@value", + "value": "ffe000", + "point": 3, + "desc": "색상 코드 비교 시 소문자로 입력할 것" + }, + "15": { + "ele": "//Layer[MaskOpType/@value='Clipping'][last()]", + "point": 6, + "desc": "클리핑 마스크 항목은 별도 레이어로 추가되고 해당 속성을 추가해놓은 레이어가 있는지 여부 체크 함" + }, + "16": { + "ele": "//Layer[contains(Name/@value, 'Layer 3')]//shape_type/@value", + "value": "RECTANGLE", + "point": 3 + }, + "17": { + "type": "size", + "posX": "//Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[last()]/X/@value - //Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[1]/X/@value", + "posY": "//Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[last()]/Y/@value - //Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[1]/Y/@value", + "value": { + "width": 150, + "height": 150 + }, + "point": 3, + "desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점" + }, + "18": { + "ele": "//Layer[contains(Name/@value, 'Layer 5')]//outline_peninfo/Width/@value", + "value": "7", + "point": 3 + }, + "19": { + "type": "color", + "ele": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Outline')]/primary_color/@value", + "value": "008878", + "point": 3, + "desc": "색상 코드 비교 시 소문자로 입력할 것(채우기:secondary_color, 외곽선:primary_color)" + }, + "20": { + "type": "shadow", + "ele": { + "shadow": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]", + "width": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_width/@value", + "distance": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_distance/@value", + "blur": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_blur/@value", + "angle": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_angle/@value" + }, + "value": { + "width": "5", + "distance": "3", + "blur": "1", + "angle": "320" + }, + "point": 5, + "desc": "그림자 속성이 있는 경우 그림자 속성의 너비, 거리, 흐림 정도, 각도를 비교하여 정답 채점" + }, + "21": { + "ele": "none", + "point": 0, + "desc": "기본설정" + }, + "22": { + "ele": "none", + "point": 0, + "desc": "파일명 확인" + } + } +} \ No newline at end of file diff --git a/회차별채점자료/2503/json_채점기준표/0404/DIC_2503B.json b/회차별채점자료/2503/json_채점기준표/0404/DIC_2503B.json new file mode 100644 index 0000000..effaff0 --- /dev/null +++ b/회차별채점자료/2503/json_채점기준표/0404/DIC_2503B.json @@ -0,0 +1,690 @@ +{ + "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": 5 + }, + "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=='Time to stroll')].name", + "value": "Time to stroll", + "point": 4 + }, + "6": { + "ele": "$.children[?(@.name=='Time to stroll')].text.font.names[0]", + "type": "font", + "value": "Arial", + "point": 2 + }, + "7": { + "ele": "$.children[?(@.name=='Time to stroll')].text.font.names[0]", + "value": "Arial-BoldItalicMT", + "point": 2 + }, + "8": { + "ele": "$.children[?(@.name=='Time to stroll')].text.font.sizes[0]", + "value": 48, + "point": 2 + }, + "9": { + "ele": "$.children[?(@.name=='Time to stroll')].text.font.colors[0]", + "type": "color", + "value": "ff9000", + "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 + }, + "15": { + "ele": "$.children[?(@.name=='즐거운 산책 시간')].text.font.sizes[0]", + "value": 36, + "point": 2 + }, + "16": { + "ele": "$.children[?(@.name=='즐거운 산책 시간')].text.font.colors[0]", + "type": "color", + "value": "035b80", + "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": { + "videoStartTime": 180, + "openingStartTime": 0, + "1": { + "ele": "//CRClipArr/CRClip[position() = //CRTrackList[1]/CRTrackClip/@ClipIndex]/@Path", + "type": "array", + "value": [ + "동영상.mp4", + "이미지2.jpg", + "이미지1.jpg", + "이미지3.jpg" + ], + "point": 4 + }, + "2": { + "ele": "/CROASTERP/CRTrackArr[1]/CRVideoTrackArr[1]/CRTrackList[1]/CRTrackClip[1][@Speed='120']", + "point": 2 + }, + "3": { + "ele": "count(//CRClip[@Path='동영상.mp4']/preceding-sibling::*)", + "type": "startend", + "start": "0", + "end": "360", + "point": 2 + }, + "4": { + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='동영상.mp4']/preceding-sibling::*)]//CRFilter[@Type='1'][@ID='86'][@VID100='5'][@VID101='30']", + "point": 3 + }, + "5": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@Name", + "type": "video", + "value": "숲 속으로 떠나는 여행", + "point": 3 + }, + "6": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID102", + "search": "숲 속으로 떠나는 여행", + "type": "video", + "value": "바탕체", + "point": 2 + }, + "7": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID101", + "search": "숲 속으로 떠나는 여행", + "type": "video", + "value": "110", + "point": 2 + }, + "8": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool/GCUnit[@Type='4']/@VID100", + "search": "숲 속으로 떠나는 여행", + "type": "video", + "value": "-16769281", + "point": 2 + }, + "9": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@*[name()='VID600' or name()='VID601']", + "ele2": "//CRCUnitArr[@Name='{search}']/@*[name()='VID600' or name()='VID601']", + "type": "video", + "search": "숲 속으로 떠나는 여행", + "value": [ + 0.28229165, + 0.92962962 + ], + "point": 2 + }, + "10": { + "ele": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/preceding-sibling::CRTrackClip/@Length)", + "ele2": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/preceding-sibling::CRTrackClip/@Length)", + "search": "숲 속으로 떠나는 여행", + "type": "videoIsExist", + "value": [179, 180], + "point": 2, + "desc": "출제 오류로 인해 두 가지 정답 모두 인정" + }, + "11": { + "ele": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/@Length", + "ele2": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/@Length", + "search": "숲 속으로 떠나는 여행", + "type": "video", + "value": "120", + "point": 2 + }, + "12": { + "existEle": "//CRClip[@Path='동영상.mp4']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='동영상.mp4']/preceding-sibling::*)]/@Mute", + "type": "searchIndex", + "value": "1", + "point": 2 + }, + "13": { + "existEle": "//CRClip[@Path='이미지2.jpg'] | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지2.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']/../preceding-sibling::CRClip)][1]/@Length", + "type": "searchIndex", + "value": "180", + "point": 2 + }, + "14": { + "type": "multi", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지2.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']/../preceding-sibling::CRClip)][1]//CRFilter/@*[name()='ID' or name()='VID101']", + "value": [ + "125", + "8" + ], + "point": 2 + }, + "15": { + "type": "multi", + "ele": "//CRTransFilter[@ClipIndex=count(//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지2.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']/../preceding-sibling::CRClip)][1]/preceding-sibling::CRTrackClip)][@Type='2']/@*[name()='ID' or name()='Range' or name()='Type']", + "value": [ + "96", + "450:540", + "2" + ], + "point": 2, + "desc": "오버랩일 경우 XPATH구문에서 Type속성값 16으로 변경, 그리고 ClipIndex값은 트랜지션이 끝나는 지점 이미지의 ClipIndex값을 가지게 되어 다음 순서의 이미지로 변경해주어야한다." + }, + "16": { + "existEle": "//CRClip[@Path='이미지1.jpg'] | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지1.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']/../preceding-sibling::CRClip)][1]/@Length", + "type": "searchIndex", + "value": "150", + "point": 2 + }, + "17": { + "type": "multi", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지1.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']/../preceding-sibling::CRClip)][1]//CRFilter/@*[name()='ID' or name()='VID100']", + "value": [ + "99", + "50" + ], + "point": 2 + }, + "18": { + "type": "multi", + "ele": "//CRTransFilter[@ClipIndex=count(//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지3.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']/../preceding-sibling::CRClip)][1]/preceding-sibling::CRTrackClip)][@Type='16']/@*[name()='ID' or name()='Range' or name()='Type']", + "value": [ + "35", + "660:720", + "16" + ], + "point": 2, + "desc": "오버랩일 경우 XPATH구문에서 Type속성값 16으로 변경, 그리고 ClipIndex값은 트랜지션이 끝나는 지점 이미지의 ClipIndex값을 가지게 되어 다음 순서의 이미지로 변경해주어야한다." + }, + "19": { + "existEle": "//CRClip[@Path='이미지3.jpg'] | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지3.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']/../preceding-sibling::CRClip)][1]/@Length", + "type": "searchIndex", + "value": "150", + "point": 2 + }, + "20": { + "type": "multi", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지3.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']/../preceding-sibling::CRClip)][1]//CRFilter/@*[name()='ID' or name()='VID101']", + "value": [ + "102", + "8" + ], + "point": 2 + }, + "21": { + "type": "multi", + "ele": "//CRTransFilter[@ClipIndex=count(//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지3.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']/../preceding-sibling::CRClip)][1]/preceding-sibling::CRTrackClip)][@Type='2']/@*[name()='ID' or name()='Range' or name()='Type']", + "value": [ + "1", + "810:840", + "2" + ], + "point": 2, + "desc": "오버랩일 경우 XPATH구문에서 Type속성값 16으로 변경, 그리고 ClipIndex값은 트랜지션이 끝나는 지점 이미지의 ClipIndex값을 가지게 되어 다음 순서의 이미지로 변경해주어야한다." + }, + "22": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@Name", + "type": "opening", + "value": "길가에 피어있는 꽃 Roadside flowers", + "point": 3 + }, + "23": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID102", + "search": "길가에 피어있는 꽃 Roadside flowers", + "type": "opening", + "value": "휴먼편지체", + "point": 2 + }, + "24": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID101", + "search": "길가에 피어있는 꽃 Roadside flowers", + "type": "opening", + "value": "130", + "point": 2 + }, + "25": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool/GCUnit[@Type='4']/@VID100", + "search": "길가에 피어있는 꽃 Roadside flowers", + "type": "opening", + "value": "-9664512", + "point": 2 + }, + "26": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='2']/@*[name()='VID100' or name()='VID101']", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool/GCUnit[@Type='2']/@*[name()='VID100' or name()='VID101']", + "search": "길가에 피어있는 꽃 Roadside flowers", + "type": "opening", + "value": [ + "0.40000001", + "-3868161" + ], + "point": 2 + }, + "27": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@*[name()='VID505' or name()='VID507']", + "ele2": "//CRCUnitArr[@Name='{search}']/@*[name()='VID505' or name()='VID507']", + "search": "길가에 피어있는 꽃 Roadside flowers", + "type": "opening", + "value": [ + "23", + "2" + ], + "point": 3 + }, + "28": { + "ele": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/preceding-sibling::CRTrackClip/@Length)", + "ele2": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/preceding-sibling::CRTrackClip/@Length)", + "search": "길가에 피어있는 꽃 Roadside flowers", + "type": "opening", + "value": 0, + "point": 2 + }, + "29": { + "ele": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/@Length", + "ele2": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/@Length", + "search": "길가에 피어있는 꽃 Roadside flowers", + "type": "opening", + "value": "120", + "point": 2 + }, + "30": { + "ele": "//CRTrackList[@Name='오디오1'][@Count>='1']/CRTrackClip[1][not(@ClipIndex='-1')]", + "point": 2 + }, + "31": { + "ele": "//CRTrackArr/CRAudioTrackArr/CRTrackList[@Name='오디오1']/CRTrackClip[@Length='740']", + "point": 2 + }, + "32": { + "ele": "//CRTrackArr/CRAudioTrackArr/CRTrackList[@Name='오디오1']//CRFilter[@Type='2'][@ID='0'][@VID8='60']", + "point": 2 + }, + "33": { + "ele": "none", + "point": 0, + "desc": "파일명 확인" + } + }, + "4": { + "1": { + "type": "multi", + "ele": "//Document/Width/@value | //Document/Height/@value", + "value": [ + "650", + "350" + ], + "point": 5, + "desc": "캔버스 사이즈 650*350" + }, + "2": { + "ele": "none", + "point": 5, + "desc": "자유 변형 문항은 채점 불가" + }, + "3": { + "type": "isExist", + "ele": "//Layer/Name/@value", + "value": "Tracking", + "point": 5, + "desc": "Tracking 레이어가 있는지 여부 체크" + }, + "4": { + "type": "multiValue", + "ele": "//Layer[Name[@value='{layer}']]/Effects/Item/Name/@value | //Layer[Name[@value='{layer}']]/Effects/Item/EffectData/{option}/@value", + "layer": "Tracking", + "option": "brightness", + "value": [ + "30", + "밝기/대비" + ], + "point": 5, + "desc": "Tracking 레이어의 효과 체크" + }, + "5": { + "ele": "none", + "point": 6, + "desc": "올가미 도구/이미지 문항은 채점 불가" + }, + "6": { + "type": "isExist", + "ele": "//Layer/Effects/Item/Name/@value", + "value": "세피아", + "point": 6, + "desc": "세피아 효과가 있는지 여부 체크" + }, + "7": { + "type": "exact", + "ele": "//Layer/Shapes/Shape/shape_type/@value", + "value": "ELLIPSE", + "point": 3, + "desc": "레이어 쉐이프 타입이 타원인지 체크" + }, + "8": { + "type": "size", + "posX": "//Layer//op_points[Item]/Item[last()]/X/@value - //Layer//op_points[Item]/Item[1]/X/@value", + "posY": "//Layer//op_points[Item]/Item[last()]/Y/@value - //Layer//op_points[Item]/Item[1]/Y/@value", + "value": { + "width": 80, + "height": 80 + }, + "point": 3, + "desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점" + }, + "9": { + "type": "color", + "ele": "//Layer//Shape[contains(draw_type/@value, 'Interior')]/secondary_color/@value", + "value": "999999", + "point": 6, + "desc": "색상 코드 비교 시 소문자로 입력할 것" + }, + "10": { + "type": "multiValue", + "ele": "//Layer/BlendOp/@value | //Layer/Opacity/@value", + "value": [ + "색 회피율", + "80" + ], + "point": 5, + "desc": "혼합모드(색 회피율, 불투명도 : 80)" + }, + "11": { + "ele": "none", + "point": 0, + "desc": "기본설정" + }, + "12": { + "ele": "none", + "point": 0, + "desc": "파일명 확인" + } + }, + "5": { + "1": { + "type": "multi", + "ele": "//Document/Width/@value | //Document/Height/@value", + "value": [ + "650", + "450" + ], + "point": 5, + "desc": "캔버스 사이즈 650*450" + }, + "2": { + "ele": "none", + "point": 5, + "desc": "배경색 문항은 채점 불가" + }, + "3": { + "ele": "//Layer[contains(Name/@value, 'Layer 2')][MaskOpType/@value='Layering']", + "point": 6 + }, + "4": { + "ele": "none", + "point": 5, + "desc": "가로방향 흐릿하게 문항은 채점 불가" + }, + "5": { + "ele": "//Layer[contains(Name/@value, 'Layer 3')]//shape_type/@value", + "answer": "ROUNDED_RECTANGLE", + "point": 6 + }, + "6": { + "type": "size", + "posX": "//Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[last()]/X/@value - //Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[1]/X/@value", + "posY": "//Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[last()]/Y/@value - //Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[1]/Y/@value", + "value": { + "width": 370, + "height": 60 + }, + "point": 3, + "desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점" + }, + "7": { + "type": "gradient", + "startColor": "//Layer[contains(Name/@value, 'Layer 3')]//gradient_start_color/@value", + "endColor": "//Layer[contains(Name/@value, 'Layer 3')]//gradient_end_color/@value", + "value": { + "startColor": "347813", + "endColor": "041177" + }, + "point": 6 + }, + "8": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/lines/Item/@value", + "value": "어린이 과학관", + "point": 5 + }, + "9": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Name/@value", + "value": "돋움", + "point": 3 + }, + "10": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Italic/@value", + "value": "True", + "point": 3 + }, + "11": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Size/@value", + "value": "32", + "point": 3 + }, + "12": { + "type": "color", + "ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Interior')]/secondary_color/@value", + "value": "f04da5", + "point": 3, + "desc": "색상 코드 비교 시 소문자로 입력할 것" + }, + "13": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/outline_peninfo/Width/@value", + "value": "3", + "point": 3 + }, + "14": { + "type": "color", + "ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Outline')]/primary_color/@value", + "value": "ffe000", + "point": 3, + "desc": "색상 코드 비교 시 소문자로 입력할 것" + }, + "15": { + "ele": "//Layer[MaskOpType/@value='Clipping'][last()]", + "point": 6, + "desc": "클리핑 마스크 항목은 별도 레이어로 추가되고 해당 속성을 추가해놓은 레이어가 있는지 여부 체크 함" + }, + "16": { + "ele": "//Layer[contains(Name/@value, 'Layer 3')]//shape_type/@value", + "value": "RECTANGLE", + "point": 3 + }, + "17": { + "type": "size", + "posX": "//Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[last()]/X/@value - //Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[1]/X/@value", + "posY": "//Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[last()]/Y/@value - //Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[1]/Y/@value", + "value": { + "width": 150, + "height": 150 + }, + "point": 3, + "desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점" + }, + "18": { + "ele": "//Layer[contains(Name/@value, 'Layer 5')]//outline_peninfo/Width/@value", + "value": "7", + "point": 3 + }, + "19": { + "type": "color", + "ele": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Outline')]/primary_color/@value", + "value": "008878", + "point": 3, + "desc": "색상 코드 비교 시 소문자로 입력할 것(채우기:secondary_color, 외곽선:primary_color)" + }, + "20": { + "type": "shadow", + "ele": { + "shadow": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]", + "width": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_width/@value", + "distance": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_distance/@value", + "blur": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_blur/@value", + "angle": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_angle/@value" + }, + "value": { + "width": "5", + "distance": "3", + "blur": "1", + "angle": "320" + }, + "point": 5, + "desc": "그림자 속성이 있는 경우 그림자 속성의 너비, 거리, 흐림 정도, 각도를 비교하여 정답 채점" + }, + "21": { + "ele": "none", + "point": 0, + "desc": "기본설정" + }, + "22": { + "ele": "none", + "point": 0, + "desc": "파일명 확인" + } + } +} \ No newline at end of file diff --git a/회차별채점자료/2503/json_채점기준표/0404/DIC_2503C.json b/회차별채점자료/2503/json_채점기준표/0404/DIC_2503C.json new file mode 100644 index 0000000..a06da43 --- /dev/null +++ b/회차별채점자료/2503/json_채점기준표/0404/DIC_2503C.json @@ -0,0 +1,688 @@ +{ + "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=='Park Rest Area')].name", + "value": "Park Rest Area", + "point": 4 + }, + "7": { + "ele": "$.children[?(@.name=='Park Rest Area')].text.font.names[0]", + "type": "font", + "value": "Arial", + "point": 2 + }, + "8": { + "ele": "$.children[?(@.name=='Park Rest Area')].text.font.names[0]", + "value": "Arial-BoldItalicMT", + "point": 2 + }, + "9": { + "ele": "$.children[?(@.name=='Park Rest Area')].text.font.sizes[0]", + "value": 48, + "point": 2 + }, + "10": { + "ele": "$.children[?(@.name=='Park Rest Area')].text.font.colors[0]", + "type": "color", + "value": "076414", + "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 + }, + "16": { + "ele": "$.children[?(@.name=='공원 쉼터')].text.font.sizes[0]", + "value": 36, + "point": 2 + }, + "17": { + "ele": "$.children[?(@.name=='공원 쉼터')].text.font.colors[0]", + "type": "color", + "value": "4f4300", + "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": { + "videoStartTime": 170, + "openingStartTime": 0, + "1": { + "ele": "//CRClipArr/CRClip[position() = //CRTrackList[1]/CRTrackClip/@ClipIndex]/@Path", + "type": "array", + "value": [ + "동영상.mp4", + "이미지2.jpg", + "이미지3.jpg", + "이미지1.jpg" + ], + "point": 4 + }, + "2": { + "ele": "/CROASTERP/CRTrackArr[1]/CRVideoTrackArr[1]/CRTrackList[1]/CRTrackClip[1][@Speed='150']", + "point": 2 + }, + "3": { + "ele": "count(//CRClip[@Path='동영상.mp4']/preceding-sibling::*)", + "type": "startend", + "start": "0", + "end": "350", + "point": 2 + }, + "4": { + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='동영상.mp4']/preceding-sibling::*)]//CRFilter[@ID='56'][@VID100='80'][@VID101='100']", + "point": 3 + }, + "5": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@Name", + "type": "video", + "value": "연못 전망대 가는 길", + "point": 3 + }, + "6": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID102", + "search": "연못 전망대 가는 길", + "type": "video", + "value": "바탕체", + "point": 2 + }, + + "7": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID101", + "search": "연못 전망대 가는 길", + "type": "video", + "value": "100", + "point": 2 + }, + "8": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool/GCUnit[@Type='4']/@VID100", + "search": "연못 전망대 가는 길", + "type": "video", + "value": "-2490121", + "point": 2 + }, + "9": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@*[name()='VID600' or name()='VID601']", + "ele2": "//CRCUnitArr[@Name='{search}']/@*[name()='VID600' or name()='VID601']", + "type": "video", + "search": "연못 전망대 가는 길", + "value": [ + 0.31979167, + 0.93333334 + ], + "point": 2 + }, + "10": { + "ele": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/preceding-sibling::CRTrackClip/@Length)", + "ele2": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/preceding-sibling::CRTrackClip/@Length)", + "search": "연못 전망대 가는 길", + "type": "video", + "value": 170, + "point": 2 + }, + "11": { + "ele": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/@Length", + "ele2": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/@Length", + "search": "연못 전망대 가는 길", + "type": "video", + "value": "150", + "point": 2 + }, + "12": { + "existEle": "//CRClip[@Path='동영상.mp4']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='동영상.mp4']/preceding-sibling::*)]/@Mute", + "type": "searchIndex", + "value": "1", + "point": 2 + }, + "13": { + "existEle": "//CRClip[@Path='이미지2.jpg'] | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지2.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']/../preceding-sibling::CRClip)][1]/@Length", + "type": "searchIndex", + "value": "150", + "point": 2 + }, + "14": { + "type": "multi", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지2.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']/../preceding-sibling::CRClip)][1]//CRFilter/@*[name()='ID' or name()='VID101']", + "value": [ + "104", + "7" + ], + "point": 2 + }, + "15": { + "type": "multi", + "ele": "//CRTransFilter[@ClipIndex=count(//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지2.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지2.jpg']/../preceding-sibling::CRClip)][1]/preceding-sibling::CRTrackClip)][@Type='2']/@*[name()='ID' or name()='Range' or name()='Type']", + "value": [ + "13", + "440:500", + "2" + ], + "point": 2, + "desc": "오버랩일 경우 XPATH구문에서 Type속성값 16으로 변경, 그리고 ClipIndex값은 트랜지션이 끝나는 지점 이미지의 ClipIndex값을 가지게 되어 다음 순서의 이미지로 변경해주어야한다." + }, + "16": { + "existEle": "//CRClip[@Path='이미지3.jpg'] | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지3.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']/../preceding-sibling::CRClip)][1]/@Length", + "type": "searchIndex", + "value": "180", + "point": 2 + }, + "17": { + "type": "multi", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지3.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지3.jpg']/../preceding-sibling::CRClip)][1]//CRFilter/@*[name()='ID' or name()='VID105']", + "value": [ + "108", + "5" + ], + "point": 2 + }, + "18": { + "type": "multi", + "ele": "//CRTransFilter[@ClipIndex=count(//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지1.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']/../preceding-sibling::CRClip)][1]/preceding-sibling::CRTrackClip)][@Type='16']/@*[name()='ID' or name()='Range' or name()='Type']", + "value": [ + "21", + "650:710", + "16" + ], + "point": 2, + "desc": "오버랩일 경우 XPATH구문에서 Type속성값 16으로 변경, 그리고 ClipIndex값은 트랜지션이 끝나는 지점 이미지의 ClipIndex값을 가지게 되어 다음 순서의 이미지로 변경해주어야한다." + }, + "19": { + "existEle": "//CRClip[@Path='이미지1.jpg'] | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지1.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']/../preceding-sibling::CRClip)][1]/@Length", + "type": "searchIndex", + "value": "150", + "point": 2 + }, + "20": { + "type": "multi", + "ele": "//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지1.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']/../preceding-sibling::CRClip)][1]//CRFilter/@*[name()='ID' or name()='VID101']", + "value": [ + "93", + "5" + ], + "point": 2 + }, + "21": { + "type": "multi", + "ele": "//CRTransFilter[@ClipIndex=count(//CRTrackList[@Name='비디오1']/CRTrackClip[@ClipIndex=count(//CRClip[@Path='이미지1.jpg']/preceding-sibling::CRClip | //CRClip[@Type='11']/CRCUnitArr[@Path='이미지1.jpg']/../preceding-sibling::CRClip)][1]/preceding-sibling::CRTrackClip)][@Type='2']/@*[name()='ID' or name()='Range' or name()='Type']", + "value": [ + "24", + "800:830", + "2" + ], + "point": 2, + "desc": "오버랩일 경우 XPATH구문에서 Type속성값 16으로 변경, 그리고 ClipIndex값은 트랜지션이 끝나는 지점 이미지의 ClipIndex값을 가지게 되어 다음 순서의 이미지로 변경해주어야한다." + }, + "22": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@Name", + "type": "opening", + "value": "자연 테마 파크 Nature theme park", + "point": 3 + }, + "23": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID102", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID102", + "search": "자연 테마 파크 Nature theme park", + "type": "opening", + "value": "궁서체", + "point": 2 + }, + "24": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool[@Type='1']/GCUnit/@VID101", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool[@Type='1']/GCUnit/@VID101", + "search": "자연 테마 파크 Nature theme park", + "type": "opening", + "value": "150", + "point": 2 + }, + "25": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='4']/@VID100", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool/GCUnit[@Type='4']/@VID100", + "search": "자연 테마 파크 Nature theme park", + "type": "opening", + "value": "-16715265", + "point": 2 + }, + "26": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr//GCUnitPool/GCUnit[@Type='2']/@*[name()='VID100' or name()='VID101']", + "ele2": "//CRCUnitArr[@Name='{search}']//GCUnitPool/GCUnit[@Type='2']/@*[name()='VID100' or name()='VID101']", + "search": "자연 테마 파크 Nature theme park", + "type": "opening", + "value": [ + "0.2", + "-6323684" + ], + "point": 2 + }, + "27": { + "ele": "//CROwneUnit[{subtitleIndex}]/CRCUnitArr/@*[name()='VID505' or name()='VID507']", + "ele2": "//CRCUnitArr[@Name='{search}']/@*[name()='VID505' or name()='VID507']", + "search": "자연 테마 파크 Nature theme park", + "type": "opening", + "value":[ + "1", + "3" + ], + "point": 3 + }, + "28": { + "ele": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/preceding-sibling::CRTrackClip/@Length)", + "ele2": "sum(//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/preceding-sibling::CRTrackClip/@Length)", + "search": "자연 테마 파크 Nature theme park", + "type": "opening", + "value": 0, + "point": 2 + }, + "29": { + "ele": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][{subtitleOrder}]/@Length", + "ele2": "//CRTrackList[@Name='텍스트' or @Name='비디오2']/CRTrackClip[not(@ClipIndex='-1')][@ClipIndex={clipIndex}]/@Length", + "search": "자연 테마 파크 Nature theme park", + "type": "opening", + "value": "120", + "point": 2 + }, + "30": { + "ele": "//CRTrackList[@Name='오디오1'][@Count>='1']/CRTrackClip[1][not(@ClipIndex='-1')]", + "point": 2 + }, + "31": { + "ele": "//CRTrackArr/CRAudioTrackArr/CRTrackList[@Name='오디오1']/CRTrackClip[@Length='800']", + "point": 2 + }, + "32": { + "ele": "//CRTrackArr/CRAudioTrackArr/CRTrackList[@Name='오디오1']//CRFilter[@Type='2'][@ID='1'][@VID8='90']", + "point": 2 + }, + "33": { + "ele": "none", + "point": 0, + "desc": "파일명 확인" + } + }, + "4": { + "1": { + "type": "multi", + "ele": "//Document/Width/@value | //Document/Height/@value", + "value": [ + "650", + "350" + ], + "point": 5, + "desc": "캔버스 사이즈 650*350" + }, + "2": { + "ele": "none", + "point": 5, + "desc": "자유 변형 문항은 채점 불가" + }, + "3": { + "type" : "isExist", + "ele": "//Layer/Name/@value", + "value": "Tracking", + "point": 5, + "desc": "Tracking 레이어가 있는지 여부 체크" + }, + "4": { + "type" : "multiValue", + "ele": "//Layer[Name[@value='{layer}']]/Effects/Item/Name/@value | //Layer[Name[@value='{layer}']]/Effects/Item/EffectData/{option}/@value", + "layer" : "Tracking", + "option" : "brightness", + "value" : [ + "30", + "밝기/대비" + ], + "point": 5, + "desc": "Tracking 레이어의 효과 체크" + }, + "5": { + "ele": "none", + "point": 6, + "desc": "올가미 도구/이미지 문항은 채점 불가" + }, + "6": { + "type" : "isExist", + "ele": "//Layer/Effects/Item/Name/@value", + "value" : "세피아", + "point": 6, + "desc": "세피아 효과가 있는지 여부 체크" + }, + "7": { + "type": "exact", + "ele": "//Layer/Shapes/Shape/shape_type/@value", + "value": "ELLIPSE", + "point": 3, + "desc": "레이어 쉐이프 타입이 타원인지 체크" + }, + "8": { + "type": "size", + "posX": "//Layer//op_points[Item]/Item[last()]/X/@value - //Layer//op_points[Item]/Item[1]/X/@value", + "posY": "//Layer//op_points[Item]/Item[last()]/Y/@value - //Layer//op_points[Item]/Item[1]/Y/@value", + "value": { + "width": 80, + "height": 80 + }, + "point": 3, + "desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점" + }, + "9": { + "type": "color", + "ele": "//Layer//Shape[contains(draw_type/@value, 'Interior')]/secondary_color/@value", + "value": "999999", + "point": 6, + "desc": "색상 코드 비교 시 소문자로 입력할 것" + }, + "10": { + "type" : "multiValue", + "ele": "//Layer/BlendOp/@value | //Layer/Opacity/@value", + "value" : [ + "색 회피율", + "80" + ], + "point": 5, + "desc": "혼합모드(색 회피율, 불투명도 : 80)" + }, + "11": { + "ele": "none", + "point": 0, + "desc": "기본설정" + }, + "12": { + "ele": "none", + "point": 0, + "desc": "파일명 확인" + } + }, + "5": { + "1": { + "type": "multi", + "ele": "//Document/Width/@value | //Document/Height/@value", + "value": [ + "650", + "450" + ], + "point": 5, + "desc": "캔버스 사이즈 650*450" + }, + "2": { + "ele": "none", + "point": 5, + "desc": "배경색 문항은 채점 불가" + }, + "3": { + "ele": "//Layer[contains(Name/@value, 'Layer 2')][MaskOpType/@value='Layering']", + "point": 6 + }, + "4": { + "ele": "none", + "point": 5, + "desc": "가로방향 흐릿하게 문항은 채점 불가" + }, + "5": { + "ele": "//Layer[contains(Name/@value, 'Layer 3')]//shape_type/@value", + "answer": "RECTANGLE", + "point": 6 + }, + "6": { + "type": "size", + "posX": "//Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[last()]/X/@value - //Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[1]/X/@value", + "posY": "//Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[last()]/Y/@value - //Layer[contains(Name/@value, 'Layer 3')]//op_points[Item]/Item[1]/Y/@value", + "value": { + "width": 300, + "height": 50 + }, + "point": 3, + "desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점" + }, + "7": { + "type": "gradient", + "startColor": "//Layer[contains(Name/@value, 'Layer 3')]//gradient_start_color/@value", + "endColor": "//Layer[contains(Name/@value, 'Layer 3')]//gradient_end_color/@value", + "value": { + "startColor": "347813", + "endColor": "041177" + }, + "point": 6 + }, + "8": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/lines/Item/@value", + "value": "어린이 과학관", + "point": 5 + }, + "9": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Name/@value", + "value": "돋움", + "point": 3 + }, + "10": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Italic/@value", + "value": "True", + "point": 3 + }, + "11": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/font/Size/@value", + "value": "32", + "point": 3 + }, + "12": { + "type": "color", + "ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Interior')]/secondary_color/@value", + "value": "f04da5", + "point": 3, + "desc": "색상 코드 비교 시 소문자로 입력할 것" + }, + "13": { + "type": "exact", + "ele": "//Layer//Shape[shape_type/@value='TEXT']/outline_peninfo/Width/@value", + "value": "3", + "point": 3 + }, + "14": { + "type": "color", + "ele": "//Layer//Shape[shape_type/@value='TEXT'][contains(draw_type/@value, 'Outline')]/primary_color/@value", + "value": "ffe000", + "point": 3, + "desc": "색상 코드 비교 시 소문자로 입력할 것" + }, + "15": { + "ele": "//Layer[MaskOpType/@value='Clipping'][last()]", + "point": 6, + "desc": "클리핑 마스크 항목은 별도 레이어로 추가되고 해당 속성을 추가해놓은 레이어가 있는지 여부 체크 함" + }, + "16": { + "ele": "//Layer[contains(Name/@value, 'Layer 3')]//shape_type/@value", + "value": "RECTANGLE", + "point": 3 + }, + "17": { + "type": "size", + "posX": "//Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[last()]/X/@value - //Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[1]/X/@value", + "posY": "//Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[last()]/Y/@value - //Layer[contains(Name/@value, 'Layer 5')]//op_points[Item]/Item[1]/Y/@value", + "value": { + "width": 150, + "height": 150 + }, + "point": 3, + "desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점" + }, + "18": { + "ele": "//Layer[contains(Name/@value, 'Layer 5')]//outline_peninfo/Width/@value", + "value": "7", + "point": 3 + }, + "19": { + "type": "color", + "ele": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Outline')]/primary_color/@value", + "value": "008878", + "point": 3, + "desc": "색상 코드 비교 시 소문자로 입력할 것(채우기:secondary_color, 외곽선:primary_color)" + }, + "20": { + "type": "shadow", + "ele": { + "shadow": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]", + "width": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_width/@value", + "distance": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_distance/@value", + "blur": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_blur/@value", + "angle": "//Layer//Shape[shape_type/@value='RECTANGLE'][contains(draw_type/@value, 'Shadow')]/shadow_angle/@value" + }, + "value": { + "width": "5", + "distance": "3", + "blur": "1", + "angle": "320" + }, + "point": 5, + "desc": "그림자 속성이 있는 경우 그림자 속성의 너비, 거리, 흐림 정도, 각도를 비교하여 정답 채점" + }, + "21": { + "ele": "none", + "point": 0, + "desc": "기본설정" + }, + "22": { + "ele": "none", + "point": 0, + "desc": "파일명 확인" + } + } +} \ No newline at end of file