var qrcode = function() { var j = function(x, n) { var F = 236; var E = 17; var r = x; var t = g[n]; var p = null; var A = 0; var l = null; var v = new Array(); var B = {}; var y = function(H, G) { A = r * 4 + 17; p = function(L) { var J = new Array(L); for (var K = 0; K < L; K += 1) { J[K] = new Array(L); for (var I = 0; I < L; I += 1) { J[K][I] = null } } return J } (A); u(0, 0); u(A - 7, 0); u(0, A - 7); w(); m(); D(H, G); if (r >= 7) { s(H) } if (l == null) { l = o(r, t, v) } z(l, G) }; var u = function(I, G) { for (var H = -1; H <= 7; H += 1) { if (I + H <= -1 || A <= I + H) { continue } for (var J = -1; J <= 7; J += 1) { if (G + J <= -1 || A <= G + J) { continue } if ((0 <= H && H <= 6 && (J == 0 || J == 6)) || (0 <= J && J <= 6 && (H == 0 || H == 6)) || (2 <= H && H <= 4 && 2 <= J && J <= 4)) { p[I + H][G + J] = true } else { p[I + H][G + J] = false } } } }; var q = function() { var J = 0; var I = 0; for (var H = 0; H < 8; H += 1) { y(true, H); var G = f.getLostPoint(B); if (H == 0 || J > G) { J = G; I = H } } return I }; var m = function() { for (var G = 8; G < A - 8; G += 1) { if (p[G][6] != null) { continue } p[G][6] = (G % 2 == 0) } for (var H = 8; H < A - 8; H += 1) { if (p[6][H] != null) { continue } p[6][H] = (H % 2 == 0) } }; var w = function() { var M = f.getPatternPosition(r); for (var I = 0; I < M.length; I += 1) { for (var H = 0; H < M.length; H += 1) { var K = M[I]; var G = M[H]; if (p[K][G] != null) { continue } for (var J = -2; J <= 2; J += 1) { for (var L = -2; L <= 2; L += 1) { if (J == -2 || J == 2 || L == -2 || L == 2 || (J == 0 && L == 0)) { p[K + J][G + L] = true } else { p[K + J][G + L] = false } } } } } }; var s = function(J) { var I = f.getBCHTypeNumber(r); for (var H = 0; H < 18; H += 1) { var G = (!J && ((I >> H) & 1) == 1); p[Math.floor(H / 3)][H % 3 + A - 8 - 3] = G } for (var H = 0; H < 18; H += 1) { var G = (!J && ((I >> H) & 1) == 1); p[H % 3 + A - 8 - 3][Math.floor(H / 3)] = G } }; var D = function(L, K) { var J = (t << 3) | K; var I = f.getBCHTypeInfo(J); for (var H = 0; H < 15; H += 1) { var G = (!L && ((I >> H) & 1) == 1); if (H < 6) { p[H][8] = G } else { if (H < 8) { p[H + 1][8] = G } else { p[A - 15 + H][8] = G } } } for (var H = 0; H < 15; H += 1) { var G = (!L && ((I >> H) & 1) == 1); if (H < 8) { p[8][A - H - 1] = G } else { if (H < 9) { p[8][15 - H - 1 + 1] = G } else { p[8][15 - H - 1] = G } } } p[A - 8][8] = (!L) }; var z = function(L, H) { var J = -1; var Q = A - 1; var K = 7; var G = 0; var O = f.getMaskFunction(H); for (var I = A - 1; I > 0; I -= 2) { if (I == 6) { I -= 1 } while (true) { for (var N = 0; N < 2; N += 1) { if (p[Q][I - N] == null) { var M = false; if (G < L.length) { M = (((L[G] >>> K) & 1) == 1) } var P = O(Q, I - N); if (P) { M = !M } p[Q][I - N] = M; K -= 1; if (K == -1) { G += 1; K = 7 } } } Q += J; if (Q < 0 || A <= Q) { Q -= J; J = -J; break } } } }; var C = function(Q, T) { var I = 0; var W = 0; var U = 0; var H = new Array(T.length); var L = new Array(T.length); for (var O = 0; O < T.length; O += 1) { var P = T[O].dataCount; var G = T[O].totalCount - P; W = Math.max(W, P); U = Math.max(U, G); H[O] = new Array(P); for (var R = 0; R < H[O].length; R += 1) { H[O][R] = 255 & Q.getBuffer()[R + I] } I += P; var M = f.getErrorCorrectPolynomial(G); var V = c(H[O], M.getLength() - 1); var J = V.mod(M); L[O] = new Array(M.getLength() - 1); for (var R = 0; R < L[O].length; R += 1) { var N = R + J.getLength() - L[O].length; L[O][R] = (N >= 0) ? J.getAt(N) : 0 } } var S = 0; for (var R = 0; R < T.length; R += 1) { S += T[R].totalCount } var X = new Array(S); var K = 0; for (var R = 0; R < W; R += 1) { for (var O = 0; O < T.length; O += 1) { if (R < H[O].length) { X[K] = H[O][R]; K += 1 } } } for (var R = 0; R < U; R += 1) { for (var O = 0; O < T.length; O += 1) { if (R < L[O].length) { X[K] = L[O][R]; K += 1 } } } return X }; var o = function(N, M, J) { var H = e.getRSBlocks(N, M); var G = d(); for (var I = 0; I < J.length; I += 1) { var L = J[I]; G.put(L.getMode(), 4); G.put(L.getLength(), f.getLengthInBits(L.getMode(), N)); L.write(G) } var K = 0; for (var I = 0; I < H.length; I += 1) { K += H[I].dataCount } if (G.getLengthInBits() > K * 8) { throw new Error("code length overflow. (" + G.getLengthInBits() + ">" + K * 8 + ")") } if (G.getLengthInBits() + 4 <= K * 8) { G.put(0, 4) } while (G.getLengthInBits() % 8 != 0) { G.putBit(false) } while (true) { if (G.getLengthInBits() >= K * 8) { break } G.put(F, 8); if (G.getLengthInBits() >= K * 8) { break } G.put(E, 8) } return C(G, H) }; B.addData = function(H) { var G = i(H); v.push(G); l = null }; B.isDark = function(H, G) { if (H < 0 || A <= H || G < 0 || A <= G) { throw new Error(H + "," + G) } return p[H][G] }; B.getModuleCount = function() { return A }; B.make = function() { y(false, q()) }; B.createTableTag = function(K, I) { K = K || 2; I = (typeof I == "undefined") ? "auto": I; var G = ""; G += '>> 8); q.push(p & 255) } } else { q.push(l) } } } return q } }; var h = { MODE_NUMBER: 1 << 0, MODE_ALPHA_NUM: 1 << 1, MODE_8BIT_BYTE: 1 << 2, MODE_KANJI: 1 << 3 }; var g = { L: 1, M: 0, Q: 3, H: 2 }; var b = { PATTERN000: 0, PATTERN001: 1, PATTERN010: 2, PATTERN011: 3, PATTERN100: 4, PATTERN101: 5, PATTERN110: 6, PATTERN111: 7 }; var f = function() { var o = [[], [6, 18], [6, 22], [6, 26], [6, 30], [6, 34], [6, 22, 38], [6, 24, 42], [6, 26, 46], [6, 28, 50], [6, 30, 54], [6, 32, 58], [6, 34, 62], [6, 26, 46, 66], [6, 26, 48, 70], [6, 26, 50, 74], [6, 30, 54, 78], [6, 30, 56, 82], [6, 30, 58, 86], [6, 34, 62, 90], [6, 28, 50, 72, 94], [6, 26, 50, 74, 98], [6, 30, 54, 78, 102], [6, 28, 54, 80, 106], [6, 32, 58, 84, 110], [6, 30, 58, 86, 114], [6, 34, 62, 90, 118], [6, 26, 50, 74, 98, 122], [6, 30, 54, 78, 102, 126], [6, 26, 52, 78, 104, 130], [6, 30, 56, 82, 108, 134], [6, 34, 60, 86, 112, 138], [6, 30, 58, 86, 114, 142], [6, 34, 62, 90, 118, 146], [6, 30, 54, 78, 102, 126, 150], [6, 24, 50, 76, 102, 128, 154], [6, 28, 54, 80, 106, 132, 158], [6, 32, 58, 84, 110, 136, 162], [6, 26, 54, 82, 110, 138, 166], [6, 30, 58, 86, 114, 142, 170]]; var l = (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0); var q = (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0); var n = (1 << 14) | (1 << 12) | (1 << 10) | (1 << 4) | (1 << 1); var p = {}; var m = function(r) { var s = 0; while (r != 0) { s += 1; r >>>= 1 } return s }; p.getBCHTypeInfo = function(r) { var s = r << 10; while (m(s) - m(l) >= 0) { s ^= (l << (m(s) - m(l))) } return ((r << 10) | s) ^ n }; p.getBCHTypeNumber = function(r) { var s = r << 12; while (m(s) - m(q) >= 0) { s ^= (q << (m(s) - m(q))) } return (r << 12) | s }; p.getPatternPosition = function(r) { return o[r - 1] }; p.getMaskFunction = function(r) { switch (r) { case b.PATTERN000: return function(t, s) { return (t + s) % 2 == 0 }; case b.PATTERN001: return function(t, s) { return t % 2 == 0 }; case b.PATTERN010: return function(t, s) { return s % 3 == 0 }; case b.PATTERN011: return function(t, s) { return (t + s) % 3 == 0 }; case b.PATTERN100: return function(t, s) { return (Math.floor(t / 2) + Math.floor(s / 3)) % 2 == 0 }; case b.PATTERN101: return function(t, s) { return (t * s) % 2 + (t * s) % 3 == 0 }; case b.PATTERN110: return function(t, s) { return ((t * s) % 2 + (t * s) % 3) % 2 == 0 }; case b.PATTERN111: return function(t, s) { return ((t * s) % 3 + (t + s) % 2) % 2 == 0 }; default: throw new Error("bad maskPattern:" + r) } }; p.getErrorCorrectPolynomial = function(s) { var r = c([1], 0); for (var t = 0; t < s; t += 1) { r = r.multiply(c([1, k.gexp(t)], 0)) } return r }; p.getLengthInBits = function(s, r) { if (1 <= r && r < 10) { switch (s) { case h.MODE_NUMBER: return 10; case h.MODE_ALPHA_NUM: return 9; case h.MODE_8BIT_BYTE: return 8; case h.MODE_KANJI: return 8; default: throw new Error("mode:" + s) } } else { if (r < 27) { switch (s) { case h.MODE_NUMBER: return 12; case h.MODE_ALPHA_NUM: re
 首页 >> 各地 >> 人文西南
《中国少数民族大辞典·拉祜族卷》昆明首发
2019年01月02日 09:21 来源:中国新闻网 作者:胡远航 字号
关键词:拉祜族卷;拉祜族;拉祜族人民;社会生活;中国少数民族

内容摘要:1日,全面系统反映拉祜族社会生活的百科全书《中国少数民族大辞典·拉祜族卷》在昆明首发。

关键词:拉祜族卷;拉祜族;拉祜族人民;社会生活;中国少数民族

作者简介:

  中新网昆明1月1日电(记者 胡远航)1日,全面系统反映拉祜族社会生活的百科全书《中国少数民族大辞典·拉祜族卷》(下称“《拉祜族卷》”)在昆明首发。

  《拉祜族卷》是“中国少数民族大辞典”系列分卷之一,为全面系统反映拉祜族社会生活的百科全书。该书由云南民族出版社出版发行,全书分上下两卷,共有条目5865条,文字300余万字,插图1300多张,分社会、地理、历史、兴发娱乐官方网站思想、宗教、风俗、工艺、文物、风景名胜、经济、科技、教育、优德w88优德中文官方网站艺术、医药卫生、体育、新闻出版、语言文字、文学、人物、典籍论著及附录21类,全面、系统、完整地介绍了中国拉祜族的情况。

  据介绍,《拉祜族卷》由200多位致力于拉祜族研究的专家学者历时10余年编纂完成,其中98%以上是拉祜族本民族学者,另外还有部分汉族、傣族、佤族、哈尼族的学者。由于拉祜族历史上没有本民族文字,其他文献资料记载较少,辞典的编纂十分艰难。

  中共玉溪市委书记、《拉祜族卷》编委会主任、主编罗应光称,《拉祜族卷》的编纂出版,是拉祜族人民增强“四个意识”、坚定“四个自信”的生动实践,更是抢救、保护、传承和弘扬拉祜族优德w88优德中文官方网站的现实需要,在拉祜族优德w88优德中文官方网站事业发展中具有里程碑式的意义。它标志着拉祜族没有系统的百科全书的空白得以填补,也标志着中华民族多元一体格局中的少数民族优德w88优德中文官方网站内容进一步丰富。

  中国少数民族大辞典云南编委会总编王立荣表示,《拉祜族卷》作为拉祜族历史上第一部由拉祜族自己的干部、专家学者,依靠自身力量编纂的集历史与现实为一体的科学规范的民族大典,填补了历史的空白;对提高民族自信心、增强民族团结、弘扬民族精神;对国内外相关专家、学者了解和研究中国拉祜族具有重要的意义。

  拉祜族是中国最古老的民族之一,具有悠久的历史和优秀的传统优德w88优德中文官方网站。千百年来,拉祜族人民在不断迁徙、不断抗争的艰辛历程中,形成了征服自然、反抗压迫、争取自由、宁死不屈的斗争精神和顽强意志,也在服饰、饮食、建筑、节日、宗教、婚丧、歌舞、文学、体育等方面形成了璀璨丰富的优德w88优德中文官方网站。今天,拉祜族已经发展成为拥有80多万人口,遍布中国、东南亚及美洲的跨境民族。根据2010年全国第六次人口普查数据,中国拉祜族人口485966人,主要分布在澜沧江流域的普洱、临沧、西双版纳三个州市。

作者简介

姓名:胡远航 工作单位:

转载请注明来源:钱柜娱乐777官方唯一网址 (责编:张彦)
W020180116412817190956.jpg
用户昵称:  (您填写的昵称将出现在评论列表中)  匿名
 验证码 
所有评论仅代表网友意见
0评论 20人参与
最新发表的评论0条,总共0 查看全部评论

今日热点
回到频道首页
QQ图片20180105134100.jpg
jrtt.jpg
wxgzh.jpg
777.jpg
内文页广告3(手机版).jpg

24小时排行

中国社会科学院概况|中国社会科学杂志社简介|关于我们|法律顾问|广告服务|网站声明|联系我们