版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
利用XML實(shí)現(xiàn)通用WEB報(bào)表打印(實(shí)現(xiàn)篇)摘要:本文結(jié)合代碼詳細(xì)講解了《利用XML實(shí)現(xiàn)通用WEB報(bào)表打印》(以下簡稱"《利》")一文中所介紹的報(bào)表打印中的.NetWeb控件方案的實(shí)現(xiàn)及擴(kuò)充過程。本文為《利》文的續(xù)作,文中所舉的代碼示例均為C#語言編寫。目錄:引言軟件原理結(jié)構(gòu)設(shè)計(jì)代碼實(shí)現(xiàn)方案擴(kuò)充總結(jié)引言:在《利》刊出后,有大量的讀者發(fā)E-Mail給我表示對該方案非常感興趣,同時還詢問具體如何實(shí)現(xiàn)報(bào)表格式的解析和打印細(xì)節(jié)并索取該程序的源代碼。讀者的熱情讓我始料未及,雖然我一一對來信進(jìn)行解答和發(fā)送了源代碼,但是還是深感抱歉和遺憾,因?yàn)闀r間和精力的關(guān)系,我不可能對每封信都作出很詳細(xì)的答復(fù),而且我寫的源代碼也很亂,事實(shí)上,是我花了兩個小時趕寫出來的(原來的程序因?yàn)橛脖P故障被銷毀了),不但沒有什么注解而且還不完善,包括一些標(biāo)簽還沒有被實(shí)現(xiàn)。為了彌補(bǔ)以前的缺憾,我花了一些時間改進(jìn)了程序的結(jié)構(gòu),重寫了全部的源代碼,實(shí)現(xiàn)了所有標(biāo)簽的功能,下面就要開始講解該程序的設(shè)計(jì)和編碼過程,在看此文之前,強(qiáng)烈推薦您先閱讀《利》一文來了解一下相關(guān)的概念,如果在該文中已經(jīng)有清楚講解的部分,本文將不再詳細(xì)介紹,這里只將主要講解《利》文沒有提及或是介紹得不清楚和讀者來信提問最多的部分。軟件原理:簽該軟件的原悼理其實(shí)很簡授單,就是要飲方便的解析積出定義好的國XML格式徒標(biāo)記,解讀留出文件中標(biāo)賊記的參數(shù)定臥義,最后將慣這些信息還純原成打印機(jī)箭輸出的圖形搜格式。今為了能表達(dá)低出復(fù)雜的報(bào)萄表樣式,我她們需要定義居一些標(biāo)記,宗在這些標(biāo)記獸中附加上具脈體的樣式信都息,作用類傳似HTML孕的標(biāo)簽,而暖我們的解析采程序就相當(dāng)紡于IE瀏覽棒器,所不同圍的是IE將懇圖形輸出到帆屏幕,而我認(rèn)們是將圖形免輸出到打印等機(jī),由于打?yàn)跤C(jī)相對于乳顯示屏的特梢殊性(例如索分頁),因殼此我們不能檢直接采用網(wǎng)仙頁瀏覽器的久標(biāo)簽解析功趕能來打印,鹿需要自己來同做一個滿足灌需要的"打豐印瀏覽器"哀。頭針對大多數(shù)律報(bào)表的功能亡需要,我只耳定義了兩種架格式標(biāo)簽:兄文本(te筐xt)和表惡格(tab抖le),它益?zhèn)兊木唧w屬自性定義和另叫外一些設(shè)置余性的標(biāo)簽定描義請參考《豆利》文,這體里再補(bǔ)充一虜幅結(jié)構(gòu)圖幫霞助讀者理解糕。如下所示饞:可牢螺與考土腫喂應(yīng)到--侵壤恭比耳疼級治結(jié)構(gòu)設(shè)計(jì):踐伐為了描述所寸有的樣式標(biāo)復(fù)記,我先定暈義了一個抽抬象基類Pr炭intEl晴ement然,它擁有一挽個虛擬方法饑Draw,畜然后對應(yīng)表敬格和文本,弟從Prin穗tElem蘋ent派生康出兩個子類住,分別是T握able和題Text,攜我還創(chuàng)建了湯一個Par裕ser類用休來解析不同湯的樣式標(biāo)記湯和創(chuàng)建對應(yīng)識的對象,它蒙擁有一個靜涌態(tài)的方法C票reate鷹Eleme旗nt,用來臨根據(jù)不同的累格式標(biāo)簽創(chuàng)詞建出對應(yīng)的父對象。結(jié)構(gòu)饑圖如下所示個:玻讀過《設(shè)計(jì)隙模式》的讀堆者一定已經(jīng)丟看出來了,營這種設(shè)計(jì)應(yīng)根用了設(shè)計(jì)模潛式中的一個貨非常著名的賴模式:Ab愚strac誠tFac灣tory。饞這里使用該裹模式的好處丸就是讓標(biāo)簽巴對象和解析插器都獨(dú)立出系來,降低了歲系統(tǒng)的耦合云度,有利于母今后在需要型的時候可以蛛很容易的增伙加其它的格膝式標(biāo)簽(下傅文將會舉一防個實(shí)例)和很方便的更換該不同的用戶萍界面(圖中鏈Clien才t表示W(wǎng)i羞ndows耕應(yīng)用程序或襯者是網(wǎng)頁插刺件)。孝繭附制國木治灰善荷棋匪疲鮮但權(quán)狐饑代碼實(shí)現(xiàn):楊老首先,創(chuàng)建積一個"Wi濃ndows爪控件庫"的善新項(xiàng)目,在遮項(xiàng)目名稱處根寫入Rem稍otePr望int,如鋼下圖所示:其晚然后把新建潛項(xiàng)目中的那呆個默認(rèn)的U差serCo程ntrol嚷1類,它的陷構(gòu)造函數(shù)名押和文件名都海改成Pri橫ntCon度trol??蛟賹⑺谋潮拙邦伾O(shè)置星為白色,添夸加三個按紐請,并將它們個的Enab胖le屬性都嫂設(shè)置為fa丈lse,A戚nchor嚼屬性設(shè)置為齒Botto杠m,Ri適ght,再協(xié)添加一個L妻abel控騰件用來顯示糧程序狀態(tài),脫它的Anc干hor屬性瞞設(shè)置為Le嘩ft。如下程圖所示:真再從控件欄遼中拖入三個剪打印對象:達(dá)Print犯Docum氧ent,半PageS鄙etupD繪ialog泳,Pri離ntPre味viewD厲ialog豪,如下圖所幸示:拖將其中的p到ageSe扮tupDi挽alog1龍和prin烏tPrev幫iewDi濫alog1腹的Docu煩ment屬貴性均設(shè)置為暗print中Docum拐ent1。叼期然后為項(xiàng)目石添加一個P使rintE宏lemen乳t的新類,穗代碼如下:懂財(cái)using季Syst先em;嘴using焦Syst恩em.Xm換l;白u(yù)sing麥Syst摘em.Dr篩awing該;怎names委pace缸Remot怎ePrin摔t{班
publ阿iccl脊assP互rintE幫lemen丑t
{涼
pub椅licP閣rint礦Eleme灣nt()
{
}扇
pub行l(wèi)icv縱irtua胞lboo粒lDra巷w(Gra密phics尼g)
{右
re父turn粱false倦;
}
}}杏該類中只有痰一個虛擬方值法Draw雖,注意它規(guī)道定需要返回玻一個boo耳l值,這個乖值的作用是華用來指示標(biāo)否簽是否在頁已內(nèi)打印完畢僚。鏈然后再添一瑞個Tabl夾e的新類,仆代碼如下:熔目using杏Syst話em;辦using納Syst范em.Xm中l(wèi);抱using哭Syst橋em.Dr皆awing磚;幟names亡pace翅Remot懼ePrin猾t{叨
publ赤iccl殃assT炕able擊:Pri倍ntEle討ment
{折
pri蒸vate重XmlNo價deta震ble;摩
pub談lics觀tatic蒙int表count危=0,鴉pc=鑄1;滾
pub雪licT劉able(躍XmlNo轎deTa手ble)
{浸
ta逃ble=灣Tabl穿e;
}卷
pub惠lico跡verri歉debo損olDr投aw(Gr陳aphic碌sg)
{已
//震表格坐標(biāo)說
in膝ttab千leX=線int.矛Parse諸(tabl曠e.Att婦ribut箏es["x肌"].In田nerTe警xt);劍
in拼ttab別leY=娘int.班Parse晨(tabl傻e.Att蔽ribut貿(mào)es["y拉"].In公nerTe弊xt);灑
in流tx=濁t(yī)abl蘇eX,y嚷=ta盈bleY;愛醬
Dr刷awTop踏Line(醒g,ta涂ble);吩//畫表格柱頂線股
Pe爽npen漠=ne峰wPen刷(Colo串r.Fro危mName念(tabl拐e.Att萄ribut保es["b沫order陜color辰"].In藥nerTe凝xt),逃
f界loat.散Parse校(t駝able.困Attri畜butes忙["bor袖der"]脊.Inne獸rText棗));丘
in稈ttrh軋eight希=0;詞碧
//王表頭風(fēng)
fo議reach懶(XmlN然odet危rin勁table筋["tab鞋lehea登d"].C員hildN撥odes)吵
{脂
t窗rheig鋪ht=麥int.P枝arse(眼tr.At隱tribu押tes["桿heigh紋t"].I槐nnerT緒ext);餓罩
D匆rawTR糾(x,y天,tr,汗pen,王g);帶
y燥+=t株rheig林ht;
}斥
//隊(duì)表項(xiàng)蘋
fo風(fēng)r(int強(qiáng)i=踏0;i春<int淡.Pars屬e(tab腳le.At胃tribu茶tes["屆maxli是nes"]錘.Inne肆rText基);i+韻+)
{猜
X憶mlNod灶etr胸=tab貌le["t均ableb泡ody"]養(yǎng).Chil仆dNode都s[cou規(guī)nt];棚
t概rheig魯ht=疊int.P貍arse(槍tr.At孝tribu賭tes["駁heigh閱t"].I輕nnerT斯ext);蘭速
D挎rawTR莊(x,y譽(yù),tr,敗pen,腎g);坐
y寸+=t普rheig崗h份t;洲
c注ount+宗+;好
i但f(cou堂nt==到tabl梅e["ta房blebo慮dy"].護(hù)Child續(xù)Nodes通.Coun掏t)族皺break珍;
}承
x詢=tab胞leX;嶄
//種表底奸
fo煮reach條(XmlN胃odet廉rin救table宅["tab慘lefoo規(guī)t"].C爪hildN肌odes)每
{閱
t案rheig寸ht=仗int.P按arse(花tr.At掏tribu鑒tes["宰heigh洽t"].I余nnerT濱ext);芳泳
D混rawTR孤(x,y踢,tr,下pen,衡g);則
y野+=t期rheig蓮ht;
}瓦
in勺tcur固rentp涼age=購pc;差
pc溪++;醒
bo辦olha敲sPage卡=fa孝lse;斧
if殺(coun殺t<t身able[返"tabl粗ebody既"].Ch疏ildNo歡des.C釣ount染-1)
{毫
h戰(zhàn)asPag清e=t汗rue;/揉/需要繼續(xù)陶打印
}論
el概se
{懼
c閣ount孟=0;陳
p新c=1粱;魄
h睛asPag鍬e=f坡alse;涉//表格打獻(xiàn)印完畢
}臨
re丈turn橋hasPa減ge;
}接
pri但vate收void鞠DrawT赴opLin脈e(Gra富phics禁g,X源mlNod護(hù)etab辱le)
{慢
Pe禾npen著=ne突wPen納(Colo面r.Fro惑mName革(tabl席e.Att粘ribut拒es["b鈔order訂color伍"].In登nerTe兩xt),腎
f土loat.滑Parse呀(tabl網(wǎng)e.Att敏ribut喜es["b丘order濤"].In堅(jiān)nerTe診xt));畫瞇
in塔tw電idth榨=0;賀
fo鞋reach翻(XmlN笨odet念din霧table兆.Firs鋪tChil艙d.Fir倒stChi衰ld)
{監(jiān)
w氧idth蝴+=in據(jù)t.Par市se(td趕.Attr慣ibute危s["wi暢dth"]蔽.Inne揚(yáng)rText掀);
}緒
in馬tx=牧int.您Parse脹(tabl扶e.Att海ribut剩es["x上"].In協(xié)nerTe鴉xt);批
in畢ty=悄int.類Parse聚(tabl盼e.Att揪ribut灶es["y末"].In鍛nerTe娘xt);燃
g.妻D(zhuǎn)rawL蚊ine(p道en,x界,y,直x+w不idth,止y);
}梁
//且畫表格行殲
pri購vate諸void興DrawT蘆R(int賄x,i須nty,減XmlN孔o(hù)det仿r,Pe陷npen乓,Gra王phics五g)
{界
in辯thei犯ght=針int.相Parse醋(tr.A細(xì)ttrib斯utes[臟"heig蜓ht"].鴉Inner必Text)終;惑
in徑twid壯th;性
g.鐵DrawL敵ine(p疊en,x譽(yù),y,燭x,y廣+hei譜ght);朋//畫左端侄線條季
fo木reach誓(XmlN鳳odet王din妄tr)
{謹(jǐn)
w泰idth龍=表int.P附arse(肯td.At誤tribu頁tes["盤width反"].In乎nerTe容xt);喘
D攤rawTD艇(x,y揚(yáng),wid架th,h桂eight并,td,挽g);芳
g祖.Draw滔Line(沸pen,烈x+w折idth,農(nóng)y,x攤+wi媽dth,剃y+h夏eight虜);//右船線寸
g枕.Draw逝Line(副pen,座x,y見+hei就ght,澇x+w悄idth,西y+乳heigh攏t);//夠底線拿
x焰+=w屈idth;岡
}
}杠
//畫塑單元格碗
pr緞ivate能void習(xí)Draw名TD(in障tx,鏟inty存,int具widt庫h,in音thei彎ght,盾XmlNo綱detd烤,Gra聲phics訂g)
{諒
Br餅ushb遵rush腫=new揭Soli舒dBrus階h(Col許or.Fr己omNam浪e(td.叨Attri款butes友["bgc眾olor"背].Inn承erTex防t));塞
g.眨FillR例ectan達(dá)gle(b借rush,錫x,y山,wid甲th,h大eight矩);留
Fo勇ntSty池lest擇yle=抽Font閘Style輝.Regu舞lar;勸
//始設(shè)置字體樣戲式滲
if核(td.A柏ttrib抵utes[勢"b"].鑰Inner流Text給=="t樹rue")五提
s劇tyle炸|=Fo逃ntSty忽le.Bo液ld;筍
if概(td.A華ttrib楚utes[柔"i"].踐Inner蘋Text短=="t擔(dān)rue")蓬叨
s搭tyle謊|=Fo擾ntSty槳le.It齡alic;睬傻
if蔑(td.A筒ttrib災(zāi)utes[飽"u"].賢Inner疤Text襖=="t耐rue")鉆詢
s悟tyle悲|=Fo意ntSty鄭le.Un齊derli喬ne;猾
Fo榮ntfo荒nt=鄙newF紫ont(t放d.Att黨ribut點(diǎn)es["f佛ontna冊me"].變Inner玩Text,戚矮
f度loat.將Parse籮(td.A逃ttrib困utes[耳"font末size"濫].Inn附erTex糕t),s警tyle)侄;絕
br扣ush=撞new耀Solid賣Brush燥(Colo供r.Fro城mName餅(td.A址ttrib拒utes[甲"font得color厘"].In戴nerTe晚xt));懇爆
St樂ringF防ormat華sf=蝕new們Strin詠gForm窗at();音朵
//灑設(shè)置對齊方臉式抬
s宗witch醬(td.A跑ttrib爸utes[荷"alig置n"].I肥nnerT論ext)
{犧
c堅(jiān)ase"供cente回r":撕芒sf.Al次ignme扔nt=勇Strin現(xiàn)gAlig缺nment姥.Cent幕er;乒娘break淺;棕
c冠ase"傳right輝":瀉秋sf.Al勾ignme抵nt=仍Strin排gAlig具nment脖.Near知;斗陰break稿;委
d極efaul晚t:悅持sf.Al棒ignme夏nt=氧Strin浪gAlig嘩nment扛.Far;覽男介break虎;
}也
sf承.Line僵Align貍ment輪=Str剖ingAl礎(chǔ)ignme刷nt.Ce級nter;戴日
Re崇ctang肅leFr地ect=齡new桌Recta嫁ngleF圣((fl泉oat)x洲,(fl匪oat)y結(jié),根
(那float精)widt鬼h,(f紛loat)午heigh紀(jì)t);晚
g.勇DrawS和tring螺(td.I沉nnerT世ext,東font,魔brus苦h,re梯ct,s溝f);
}
}}冷Table肢類將tab霸le標(biāo)簽內(nèi)蕉部的解析和渾打印獨(dú)立出徐來,全部在花類的內(nèi)部完殖成,這樣,褲我們在對頂暗層標(biāo)簽解析昨的時候只要必是碰到ta刑ble標(biāo)簽?zāi)骄椭苯咏唤o給Table茫類去完成,播不需要再關(guān)免心其實(shí)現(xiàn)細(xì)滅節(jié)。貨再添加一個玻Text類怕,代碼如下邁:勞using者Syst達(dá)em;就using駛Syst咸em.Xm載l;壟using誕Syst玩em.Dr花awing弊;劑names胃pace窯Remot禾ePrin挎t{半
publ纏iccl掙assT鏟ext:偷Prin痛tElem采ent
{房
pri代vate晌XmlNo憂dete寺xt=恨nu憑ll;苗
pub協(xié)licT剩ext(X煎mlNod疲eTex窮t)
{燭
te桑xt=害Text;奮
}足
pub蒸lico匆verri況debo短olDr昨aw(Gr笑aphic瞎sg)
{濃
Fo紙ntfo嗽nt=迅newF共ont(t憐ext.A菜ttrib諸utes[悠"font索name"隆].Inn稠erTex撇t,盒
i鳳nt.Pa吐rse(t射ext.A療ttrib語utes[略"font共size"煤].Inn列erTex押t));害
Br壽ushb菜rush僅=new作Soli挺dBrus匆h(Col初or.Fr終omNam曾e(tex隱t.Att本ribut回es歲
[紀(jì)"font做color絲"].In材nerTe嗽xt));晚堪
g.艙DrawS真tring院(text起.Inne捷rText耽,fon蝦t,br高ush,奶float購.Pars率e港
(激text.獻(xiàn)Attri嫌butes烤["x"]珍.Inne日rText港),驢
f廚loat.建Parse勵(text敲.Attr脂ibute秋s["y"勻].Inn思erTex外t));灘
re賽turn殿false任;
}
}}章同Tabl估e類一樣,拌Text類卵完成對te肝xt標(biāo)簽的般解析和打印佩,不過因?yàn)榱舤ext的話簡單性,它理的代碼也少腥了很多。它前們兩者同樣秘繼承自Pr搬intEl腎ement執(zhí),都重載了墨Draw方惑法的實(shí)現(xiàn)。瞧疑最后,我們?nèi)贿€需要一個您解析器用來肅解析頂層的堅(jiān)標(biāo)簽和生成棍相應(yīng)的對象伶,它在此模臥式中的作用說就是一個"小工廠類",俱負(fù)責(zé)生產(chǎn)出環(huán)用戶需要的伸"產(chǎn)品"。勾代碼如下:側(cè)黃using澇Syst氏em;抓using芒Syst胖em.Xm棵l;常names滅pace例Remot配ePrin捏t{螺
publ急iccl豈assP秩arser架
{脖
pub緣l蠶icPa眾rser(譽(yù))
{
}擠
pub市l(wèi)ics襲tatic兵Prin遞tElem淹entC尚reate餃Eleme銷nt(Xm矛lNode或elem是ent)
{罵
Pr傳intEl氧ement惕prin竊tElem格ent=倡null熱;鐮
sw阻itch(語eleme嫩nt.Na展me)
{釘
c龜ase"永text"象:祥非print交Eleme擁nt=目newT但ext(e費(fèi)lemen瘡t);酬秧break晨;貨
c孕ase"慢table羨":給朱print拴Eleme膊nt=濁newT午able(記eleme暈nt);訂刮break瀉;筑
d喇efaul剃t:裙嶼print粘Eleme廟nt=眨newP縣rintE廈lemen篩t();挎針break釣;
}究
re耀turn兇print跟Eleme更nt;
}
}}臂好了,核心圖的解析和標(biāo)稀簽的具體打賣印方法已經(jīng)恥完成了,現(xiàn)菌在我們回到矮Print睜Contr合ol中編寫就一些代碼來毫測試我們的浩成果。遞首先,需要坐引用兩個要圈用到的名稱緣空間:裝using腹Syst攜em.Xm姻l;漸using嬸Syst花em.Dr貨awing冠.Prin昌ting;倦側(cè)然后,在打校印之前,需臣要根據(jù)XM袖L文件中的句pages裹ettin訊g標(biāo)簽來設(shè)頌置一下打印晨機(jī)的頁面,勢所以我們先第寫一個方法糾來設(shè)置打印泰機(jī)。在Pr寫intCo匪ntrol夢類中增加一他個私有的方棍法:傘priva傳tevo夫idSe域tting雅Print蹈er(Xm潤lNode翻伐ps){宇
//打印訴方向(縱/屑橫)踢
this貓.prin黎tDocu液ment1魄.Defa播ultPa慧geSet瓣tings麻.Land孤scape何=bo縣ol.Pa燒rse(p貼s["la疊ndsca邪pe"].撒Inner嫩Text)繭;鎮(zhèn)
//設(shè)置芽紙張類型享
stri櫻ngpa襖perna門me=忌ps["p踐aperk丘ind"]越.Inne扒rText士;接
bool崗fitp夸aper該=fal擠se;衣
//獲取宅打印機(jī)支持輝的所有紙張自類型薦
fore克ach(P本aperS第izes政izei陣nthi狀s.pri密ntD屬ocume幣nt1.P宵rinte伯rSett庸ings.圣Paper棗Sizes咱)
{撿
if(汽paper巨name純==si聾ze.Pa高perNa并me)//記看該打印機(jī)風(fēng)是否有我們劉需要的紙張照類型
{駕
th逃is.pr茄intDo鼠cumen值t1.De漁fault聯(lián)PageS覺ettin合gs.Pa惡perSi呈ze=梢size;毯妥
fi伯tpape柱r=t逮rue;
}
}猛
if(!題fitpa謊per)
{獸
//假瞧如沒有我們筐需要的標(biāo)準(zhǔn)賠類型,則使辟用自定義的非尺寸狠
thi帆s.pri楊ntDo叫cumen器t1.De睜fault鋒PageS旁ettin隙gs.Pa耀perSi葉ze=組
ne憑wPap彩erSiz果e("Cu臭stom"陶,int宮.Pars耕e(ps[秩"pape拌rwidt蜜h"].I滾nnerT區(qū)ext),梯妹
in斃t.Par線se(ps腿["pap塞erhei報(bào)ght"]勇.Inne業(yè)rText嬌));
}}碼接下來,我濁們類中添加胳一個Xml旦Docum器ent的對源象和一個靜朝態(tài)變量計(jì)算要頁碼:究priva云teXm雄lDocu文ment腳doc=捉new悼XmlDo紗cumen帝t();龜publi腳csta扛tici奉ntPa肚ges=步1;茂然后再控件蒸的Load襯事件中為該拿對象加載X崗ML報(bào)表數(shù)擾據(jù),代碼如盼下:房priva溫tevo床idPr至intCo境ntrol哪_Load效(obje姑ctse價nder,政Syst蚊em.Ev饑entAr電gse)體{
try
{普
//裝幕載報(bào)表XM途L數(shù)據(jù)勁
thi忘s.lab延el1.T酒ext=敵"正在加?jì)屳d報(bào)表數(shù)據(jù)超,請稍侯.扎..";綿
doc限.Load胖("");康誰
thi風(fēng)s.lab軍el1.T咳ext=發(fā)"報(bào)表數(shù)寸據(jù)加載完畢童!";屈this.旺butto隙n1.En搬abled痰=th裕is.bu危tton2固.Enab彈led=涂this慮.butt翁on3.E租nable掃d=t盼rue;
}鉆
catc您h(Exc害eptio濤nex)哨
{碧
thi燙s.lab蛾el1.T干ext=涂"出現(xiàn)錯距誤:"+啟ex.M奧essag蠟e;
}}炎請注意,我泡們這里只是荷裝入了一個浴本地的測試裕數(shù)據(jù)文件(殘?jiān)撐募木幱缹懻垍⒖肌逗砝肺模Z其實(shí),完全墨可以改成裝峰載網(wǎng)絡(luò)上任劃何地方的靜性態(tài)或者動態(tài)眼的XML文朋件,例如以鎮(zhèn)上的doc制.Load部("")可晶以改寫成:五猴doc.L耍oad("卷");液doc.L拴oad("是");致doc.L默oad("辟?date道=xxx"浴);嗚等等,只要兇裝載的數(shù)據(jù)同是符合我們巷規(guī)定的XM包L數(shù)據(jù)文檔散就可以。守然后在控件偷的構(gòu)造函數(shù)遵中加入打印微事件的委托卸:吉publi鏟cP繩rintC為ontro獨(dú)l(){肅Initi霸alize碑Compo羨nent(累);些this.噴print閉Docum川ent1.向Print胞Page暗+=ne廊wPri找ntPag賺eEven肌tHand薪ler(t絡(luò)his.p盆d_Pri帳ntPag臨e);}礎(chǔ)該委托方法詢的代碼如下德:長priva士tevo趣idpd般_Prin湊tPage崖(obje揪ctse影nder,找Prin掏tPage赴Event菊Args似ev){樣
Grap縮hics嫂g=e勁v.Gra名phics鏡;捷
bool強(qiáng)HasM極orePa能ges=班f目alse;東注
Prin液tElem喜entp酷rintE蓮lemen父t=n歐ull;愚
fore殖ach(X逗mlNod農(nóng)enod威ein她doc["錢root"證]["re栽portt太able"貓].Chi滑ldNod迎es)
{戒
pri子ntEle晃ment獄=Par奔ser.C質(zhì)reate沿Eleme增nt(no跳de);/渡/調(diào)用解析字器生成相應(yīng)戰(zhàn)的對象濁
try竄
{墊
Ha貞sMore搭Pages殊=pr如intEl塘ement筒.Draw西(g);/欲/是否需要特分頁
}跨
cat糖ch(Ex遞cepti應(yīng)on冷ex)
{喬
th找is.la餐bel1.指Text生=ex.侄Messa俱ge;
}
}燕
//在頁瞇底中間輸出壇頁碼猜
Font懲font甜=ne楊wFon琴t("黑體擊",12物.0f);岸晨
Brus療hbru翅sh=麻newS往olidB苦rush(胃Color嚼.Blac綿k);鮮
g.Dr芹awStr痰ing("臨第"+凈Page婚s.ToS冤tring致()+昏"頁",月咸
fon毫t,bru縫sh,ev士.Marg煉inBou港nds.W復(fù)idth謙/2+姑ev.M蝕argin故Bound押s.Le碌ft-斑30,顫
ev.懷PageB放ounds避.Heig躲ht-眉60);獅
if(H械asMor塘ePage昆s)
{議
Pag番es++;禮
}棉
ev.H口asMor睛ePage柴s=H薯asMor喚ePage張s;}冠三個按紐的挺Click楚事件代碼分訂別如下:慎//頁面設(shè)躺置啊priva本tevo宗idbu睛tton1母_Clic匠k(obj悄ects此ender虛,Sys慣tem.E隆ventA否rgse染){坦
this菠.page壟Setup鵝Dialo負(fù)g1.Sh纏owDia哲log()村;凳
this處.糾print要Docum朋ent1.玻Defau項(xiàng)ltPag墊eSett黃ings法=thi鞋s.pag滾eSetu西pDial遮og1.P楚ageSe觸tting突s;}糊//打印預(yù)毯覽收priva槳tevo職idbu因tton2運(yùn)_Clic期k(obj谷ects送ender嬌,Sys麻tem.E米ventA器rgse偽){
try
{患
thi步s.pri起ntPre街viewD塑ialog妻1.Sho鷹wDial橋og();肚
}漿
catc衡h(Exc陜eptio姓nex)猛
{徑
thi于s.lab杠el1.T剩ext=相ex摟.Mess攻age;
}}//打印呈priva筐tevo士idbu每tton3著_Clic共k(obj概ects淚ender忍,Sys伐tem.E易ventA態(tài)rgse炸){
try
{還
thi圾s.pri觀ntDoc煮ument鴉1.Pri黑nt();行
}忍
catc隨h(Exc里eptio藥nex)脖
{相
thi枕s.lab密el1.T士ext=烏ex.M觸essag耽e;
}}紙好了,我們珍的打印控件錦到這里就全姻部做完了,霞選擇生成一臂個Rele意ase的版煤本,然后到禁工程目錄下枝將生成的P岡rin死tCont誰rol.d自ll文件拷睡貝到IIS到的虛擬根目減錄下,然后扒新建一個r桶emote疲print屈.htm的謠HTML格菠式文件,在茂合適的地方援加上:<o炭bject積id="洞print圈"cla秩ssid=株"http焰:Remo珠tePri孤nt.dl弦l#Rem劉otePr襖int.P磁rintC霞o(jì)ntro掃l"Wi筑dth="獎100%"猜Heig搏ht="6暈0"><市/obje龍ct>,為浴了更加形象綿和美觀,還訓(xùn)可以將需要鉆打印的數(shù)據(jù)控做成網(wǎng)頁形妨式放在上面性,如果需要背獲取的XM盜L是動態(tài)數(shù)透據(jù)源,則可降以采用as哄p等動態(tài)腳薪本來生成該皮網(wǎng)頁表格,啄如果需要獲治取的XML辱是一個靜態(tài)湯的文本,則準(zhǔn)可以采用X還SLT直接獸將XML文傍件轉(zhuǎn)換成網(wǎng)戀頁表格。肚打開瀏覽器苦,輸入:,唇如果您已經(jīng)化跟我一樣,克事先做好了底一個XML蹲報(bào)表數(shù)據(jù)文蘭件的話,您星就可以看到緞下圖所示的仍效果輩請注意:該金圖示例中的洞所有數(shù)據(jù)均秀為筆者隨意薦虛擬,網(wǎng)頁折中的表格數(shù)侮據(jù)和打印數(shù)躬據(jù)并非來自疾同一數(shù)據(jù)源箏,也沒有刻寄意去對等,員僅僅只是為遇了演示一下姑效果,因此隆網(wǎng)頁顯示報(bào)作表跟打印預(yù)勁覽中的報(bào)表異有一些出入池是正常的。酸在實(shí)際應(yīng)用姓中可以讓網(wǎng)各頁顯示數(shù)據(jù)仔跟打印輸出簡數(shù)據(jù)完全一件致。培牧扒絕偏鏈籃多堪銳業(yè)老剖霉望熟抖烏方案擴(kuò)充:機(jī)俯有一部分讀描者在來信中死問到如何打袍印一些特殊縣形態(tài)的圖表革,《利》文題中已經(jīng)提到壽,采用本方乳案可以非常圈方便的定義賢出自己所需謹(jǐn)要的標(biāo)簽,舒在理論上可加以打印出任白何樣式的特誕殊圖表。因套此本文打算框詳細(xì)介紹一吳下增加自己擺定義的標(biāo)簽理擴(kuò)充打印格肅式的具體過汪程。慕先假設(shè)我們砌的客戶看了擋打印效果后酸基本上滿意皮,但是還有國覺得一點(diǎn)不槍足,如果需乎要打印一些徒圖表怎么辦龜?例如折線撕圖、K線圖梅、餅狀圖、蹈柱狀圖等等睜。使用我們勿現(xiàn)有的標(biāo)簽侍就不行了,段所以我們首出先要擴(kuò)充我客們的標(biāo)簽庫和,讓它的表印達(dá)能力更加罵強(qiáng)。在這里芝,我將只打替算讓我們的緣打印控件學(xué)細(xì)會畫簡單的允折線圖,??嵬x者能舉勺一反三,創(chuàng)散造出其它各龍種各樣的打牙印效果。身最基本的折宵線圖是由X固坐標(biāo)軸、Y通坐標(biāo)軸和一埋系列點(diǎn)連接輕成的線構(gòu)成朝的,因此,烘我定義了以喉下幾種標(biāo)簽賊:暴1.li褲necha請rt:跟t義able,債text標(biāo)鄙簽一樣,為惹樣式根標(biāo)簽認(rèn)。屬性:無梢2.co經(jīng)ordin借ate:坐愚標(biāo)。屬性:無榨3.xc年oordi黑nate:嘆X軸坐標(biāo)線算屬性:拔#x:起野點(diǎn)X坐標(biāo)值獲讀#y:起拆點(diǎn)Y坐標(biāo)值豪捕#len矩gth:長盞度值歷#str范oke:粗煎細(xì)奮#col憑or:顏色蛛躲#arr細(xì)ow:是否拌有箭頭菠4.yc拘oordi蝦nate:慣Y軸坐標(biāo)線竿嫂屬性:同x起coord膛inate狂。路5.sca誓le:刻度品線環(huán)標(biāo)簽內(nèi)容:籃顯示在刻度給邊的文字屬性:礦#len浴gth:距用離起點(diǎn)長度浪值遼#hei鹿ght:刻直度線高度擠#wid場th:刻度妖線寬度籮#col獅or:顏色提刮#fon付tsize呈:字體大小右紗6.cha奸rt:圖表重根屬性:無私7.lin持es:線段單屬性值:糊#str從oke:粗廣細(xì)四#col焦or:顏色宿枝8.po萍int:點(diǎn)蓮屬性值:笨#x:X昌坐標(biāo)值冷#y:Y當(dāng)坐標(biāo)值冬#rad繳ius:半萄徑擠#col受or:顏色朱蜂其結(jié)構(gòu)圖如腎下所示:狐下面是一段賊用剛才定義順的標(biāo)簽制作升的XML折綿線圖示例:穩(wěn)巖<line斧chart穿>折<coor摘dinat誰e>廟<xcoo肢rdina凈tex=僵"200"鮮y="6壇00"l丟ength駐="800謀"str誤oke="搶2"co補(bǔ)lor="避Black釣"arr詞ow="t站rue">愉鼻<scal賭elen著gth="嘴100"縱heigh水t="10桶"wid壞th="1亂"col貌or="B判l(wèi)ack"失font彼size=另"9">1蹤00</s籮cale>今螺<scal傳elen鷹gth="畜200"撈heigh善t="10鉛"wid秒th="1擴(kuò)"col鋤or="B芬lack"失font創(chuàng)size=痕"9">2接00</s丹cale>趙工<scal沿elen牽gth="樹300"括heigh獅t="10施"wid由th="1象"col封or="B門lack"娃font柿size=協(xié)"9">3踩00</s清cale>現(xiàn)抱<scal錫elen睜gth="捕400"掘heigh務(wù)t="10難"wid致th="1亂"col這or="B豬lack"愉font跪size=案"9">4輔00</s頃cale>姿素<scal詳elen尖gth="切500"捷heigh識t="10啦"wid與th="1括"col補(bǔ)or="B弱lack"修font繳size=喇"9">5絮00</s撞cale>悄刑<scal膠elen奧gth="餅600"仁heigh枕t="10杰"wid蝴th="1纖"col肆or="B芹lack"福font挎size=抱"9">6柄00</s粉cale>鞏托<scal捧elen洗gth="耕700"都heigh藏t="10元"wid濕th="1終"col牧or="B歷lack"瑞font津size=弄"9">7駱00</s瘡cale>幅弦</xco引ordin掙ate>蓬<ycoo艙rdina桿tex=絞"200"袍y="6傻00"l怎ength炕="-40蹤0"st林roke=覺"2"c落olor=撒"Blac俯k"ar仍row="扮true"露>壽<scal續(xù)elen世gth="釀-100"寬heig銷ht="1享0"wi膠dth="碗1"co纖lor="可Black山"fon蹤tsize姐="9">晶100</樣scale固>艇<scal璃elen直gth="夕-200"擔(dān)heig灰ht="1賣0"wi尤dth="波1"co梢lor="駁Black婚"fon你tsize翠="9">趴200</橋scale刑>樹<scal芒elen肅gth="貼-300"詞heig炮ht="1曲0"wi嶼dth="帥1"co定lor="顛Black撫"fon僅tsize耀="9">位300</蓄scale斑>吸</yco兼ordin拴ate>闊</coo匆rdina酷t(yī)e>痕<char貼t>勸<line倘sstr退oke="功1"co獵lor="凝Blue"神>類<poin很tx="偵200"東y="60扶0"ra保dius=運(yùn)"5"c舌olor=割"Blac慈k"/>捕<poin幕tx="個300"嗽y="30冠0"ra皮dius=向"5"c自olor=氧"Blac關(guān)k"/>吳<poin村tx="保400"位y="40葛0"ra比dius=祥"5"c塞olor=續(xù)"Blac控k"/>聽<poin胸tx="壞500"蘋y="50柱0"ra餓dius=央"5"c洪olor=爛"Blac斬k"/>貫<poin駛tx="栽600"者y="30孝0"ra摔dius=狗"5"c羞olor=條"Blac牧k"/>偏<poin慶tx="鑰700"歉y="30奪0"ra貨dius=風(fēng)"5"c萌olor=丑"Blac短k"/>浸<poin洞tx="目800"帥y="60流0"ra慶dius=低"5"c此olor=恥"Blac撤k"/>篩<poin禍tx="狠900"對y="50怖0"ra她dius=特"5"c金olor=唯"Blac拒k"/>梅</lin柄es>累<line罵sstr富oke="快1"co奏l(xiāng)or="跌Red">正址<poin受tx="厭200"雅y="40忌0"ra靜dius=少"5"c謙olor=閣"Blac修k"/>騙<poin甲tx="驗(yàn)300"處y="50護(hù)0"ra散dius=內(nèi)"5"c盯olor=至"Blac估k"/>痛<poin廁tx="獄400"帳y="60近0"ra販dius=廊"5"c弦olor=鄉(xiāng)"Blac僻k"/>勁<poin哄tx="難500"稈y="30在0"ra中dius=侍"5"c緊olor=箏"Blac像k"/>挽<poin完tx="害600"走y="40陶0"ra倆dius=譯"5"c痕olor=序"Blac波k"/>旅<poin誼tx="司700"鳥y="40界0"ra淡dius=狼"5"c頸olor=秧"Blac松k"/>旅<poin干tx="齡800"客y="50括0"ra招dius=盈"5"c裂olor=庫"Blac欠k"/>菊<poin辰tx="耳900"泛y="30掉0"ra持dius=握"5"c約olor=屆"Blac鼓k"/>顧</lin丹es>提</cha坑rt>計(jì)</lin飯echar怎t>每完成了標(biāo)簽糞的定義,下小一步就要來何修改我們的止程序,讓他柔能"讀懂"途這些標(biāo)簽。毅安首先,我們刊先給工程增設(shè)加一個Li瞧neCha沿rt的新類慕,跟Tab船le,Te烘xt類一樣悄,它也是繼奇承自Pri過ntEle六ment類薄,同樣重載莊了Draw秒虛方法。代在碼如下:雕using暖Syst嘴em;王using尺Syst柄em.Xm烈l;園using壺Syst股em.Dr鳳awing打;妨using亭Syst佩em.Dr宜awing較.Draw犧ing2D拴;絞names米pace遷Remot永ePrin安t{握
publ節(jié)iccl碌assL恐ineCh介art:都Prin熔tElem晚ent
{尤
pri腫vate允XmlNo牧dech絞art;袍
pub愿licL出ineCh嘗art(X滅mlNod喘eCha醫(yī)rt)
{牛
ch址art=包Char院t;
}儲
pub葉lico盟verri傻debo覽olDr切aw(Gr保aphic樸sg)
{黑
Dr攏awCoo燈rdina拜te(g,邀char炭t["co姿ordin催ate"]寶);//畫基坐標(biāo)軸笛
Dr軌awCha朋rt(g,進(jìn)char屋t["ch卡art"]堆);兩
re灌turn您false杠;
}勒
pri催vate晌void灣DrawC歸oordi歌nate(洲Graph盤icsg錢,Xml個Node瘋coo)
{射
Dr竿awXCo礎(chǔ)or(g,辛coo[叔"xcoo透rdina戚te"])吳;//畫X泛坐標(biāo)意
Dr尼awYCo裳or(g,卸coo[成"ycoo襯rdina懼te"])輪;//畫Y庸坐標(biāo)
}隊(duì)
pri鞋vate跑void序DrawX法Coor(眾Graph框icsg電,Xml丟Node漲xcoo)禍
{經(jīng)
in殖tx=攪int.獨(dú)Parse忍(xcoo雄.Attr警ibute遭s["x"做].Inn齒erTex沸t);懂
in耀ty=乏int.桃Parse宇(xcoo伯.Attr創(chuàng)ibute侵s["y"的].Inn聲erTex資t);壞
in春tlen旁gth=咳int.古Parse遠(yuǎn)(xcoo煉.Attr宴ibute馳s["le染ngth"蘇].Inn隙erTex賽t);野
bo疑olar已row=拖bool討.Pars杰e(xco泥o.Att閉ribut軟es["a承rrow"渣].Inn逢erTex乳t);橋
in柱tstr探oke=鑒int.波Parse挺(xcoo刊.Attr濱ibute扯s["st仔roke"吐].Inn蠢erTex葉t);礙
Co豆lorc款olor始=Col惱or.Fr絲omNam向e(xco裂o.Att籍ribut飄es["c偷olor"泰].Inn壁erTex料t);爛
Pe獲npen信=ne圓wPen走(colo類r,(f滑loat)膠strok樣e);獸
if岔(arro雕w)//是示否有箭頭
{股
A揉djust始ableA洲r(nóng)rowC堪apAr顏row=蟲new繩Adjus餐table揭Arrow使Cap(敏要(floa僵t)(st覺roke至*1.5飛+1.和5),盼奇(floa壺t)(st筑roke虹*1.5內(nèi)+2)凝,tru撥e);獸
p信en.Cu茫stomE打ndCap史=Ar鼓row;
}其
g.削DrawL遺ine(p閑en,x葡,y,蟲x+l底ength誠,y);秀//畫坐標(biāo)排蒜
//休畫刻度濤
fo轉(zhuǎn)reach世(XmlN倘odes稼cale面inxc孫oo.Ch傳ildNo挖des)
{料
i條ntle籃n=i削nt.Pa排rse(s奶cale.娛Attri房butes廟["len蝶gth"]意.Inne野rText宏);興
i臣nthe踩ight拐=int距.Pars勝e(sca炮le.At紹tribu掉tes["堡heigh當(dāng)t"].I鴿nnerT綿ext);職岸
i惕ntwi挎dth=閥int.眉Parse狐(scal儀e.Att年ribut乳es["w揮idth"鞏].Inn昏erTex飲t);慕
i朋ntfo帽ntsiz集e=i斷nt.Pa貫rse(s點(diǎn)cale.喂Attri桐butes妄["fon幕tsize雄"].In探nerTe氧xt);怒
C吉olor烈clr=無Colo絨r.Fro斜mName盲(scal嚴(yán)e.Att徹ribut于es["c逝olor"魔].Inn棍erTex扣t);然
s拍tring正name瞇=sc媽ale.I壇nnerT詞ext;遍
P您enp苦=new版Pen(夾clr,緩(floa偶t)wid裙th);罰
g項(xiàng).Draw聰Line(娃p,x鉆+len薯,y,來x+l耀en,y拳-he努ight)燭;恨
F塊ontf朵ont=呀new厘Font(翅"Aria滋l",(桿float德)font撫size)有;丘
g正.Draw章Strin奴g(柔勉name,熄font脆,new珍Soli歲dBrus擊h(clr庫),徹針(floa悔t)(x菌+len格-10錦),(f桌loat)征(y+崗10));龍
}
}倚
pri誦vate只void嘉DrawY屋Coor(廣Graph鑰icsg罩,Xml透Node興ycoo)框
{既
in稀tx=狠int.炊Parse憲(ycoo萄.Attr回ibute饅s["x"墻].Inn尋erTex永t);沙
in蠶ty=嘩int.賓Parse惡(ycoo翻.Attr柏ibute凝s["y"腰].Inn涂erTex徐t);膛
in察tlen箭gth=填int.償Parse傻(ycoo死.Attr恥ibute育s["le映ngth"嗓].Inn丟erTex嫂t);翼
bo箭olar泰row=切bool藥.Pars清e(yco亂o.Att嗎ribut新es["a館rrow"被].Inn點(diǎn)erTex巴t);究
in桑tstr鳳oke=敢int.妻Parse魯(ycoo烏.Attr撲ibute屆s["st其roke"勇].Inn怒erTex勉t);范
Co提lorc魂olor招=Col燥or.Fr弊o(hù)mNam穩(wěn)e(yco甜o.Att宰ribut副es["c他olor"般].Inn徹erTex膝t);檔
Pe去npen泳=ne饒wPen環(huán)(colo扣r,(f飽loat)語strok紛e);糧
if參(arro昏w)//是若否有箭頭
{帖
A矛djust臂ableA米rrowC蚊apAr斗row=透new梨Adjus銀table至Arrow遙Cap(蘇蠶(floa辱t)(st擊roke吵*1.5灘+2)析,漿題(floa冷t)(st剪roke鹿*1.5浪+3)思,矮仿true)率;提
p谷en.Cu晨stomE評ndCap推=Ar塑row;
}姑
g.拍DrawL因ine(p行en,x喇,y,鏟x,y言+len形gth);棉//畫坐標(biāo)猾惠
//巨畫刻度件
fo斯reach摧(XmlN包odes衛(wèi)cale螞inyc奇oo.Ch徹ildNo澤des)
{頁
i去ntle害n=i臘nt.Pa勁rse(s沉cale.偷A(chǔ)ttri觸butes跟["len且gth"]嬸.Inne禁rText因);漠
i幸nthe編ight賺=int搏.Pars該e(sca索le.At缸tribu推tes["庭heigh憂t"].I斧nnerT辛ext);弦福
i滋ntwi陽dth=甚int.賺Parse預(yù)(scal鈴e.Att科ribut掌es["w那idth"被].Inn房erTex恢t);弟
i蒼ntfo框ntsiz脫e=i冊nt.Pa玉rse(s遍cale.畝Attri做butes供["fon圓tsize義"].In蓬nerTe揮xt);前
C撿olor碰clr=脆Colo涼r.Fro鄙mName充(scal攀e.Att陡ribut蘇es["c溉olor"川].Inn猜erTex損t);化
s蔥tring推name斥=sc辣ale.I典nnerT惜ext;星
P心enp月=new厭Pen(孩clr,男(floa河t)wid夠th);弟
g遵.Draw秩Line(暮p,x,聰y+中l(wèi)en,戒x+h珠eight積,y+寨len)抽;自
F懸ontf瓜ont=慘new塵Font(劍"Aria衡l",(侄float繁)font返size)摧;處
S灶tring繩Forma拆tsf疏=new里Stri革ngFor濫mat()漿;制
s改f.Ali己gnmen雀t=S院tring啄Align漆ment.侵Far;聯(lián)
R零ectan廢gleF耳rect拐=new挑Rect喝angle秒F(臂今(floa腸t)(x切-100斷),梨妙(floa遷t)(y插+len艘-25譯),膛對90f,年途50f);守散
s纖f.Lin箱eAlig屑nment奏=St驕ringA器lignm棍ent.C霧enter抬;議
g還.Draw怎Strin懷g(nam寧e,fo點(diǎn)nt,n惡ewSo侵lidBr胖ush(c屬lr),伶rect,災(zāi)sf);何
}
}宏
pri名vate陸void卷DrawC州hart(際Graph劑icsg郊,Xml漆Node嘴chart纖)
{址
fo褲reach駁(XmlN呢odel妨ines壩inch意art.C透hildN兵odes)蹦
{景
D紋rawLi勉nes(g展,lin升es);
}
}徐
pri干vate莫void緒DrawL仙ines(宰Graph板icsg央,Xml倆Node濟(jì)lines技)
{財(cái)
in據(jù)tStr躲oke=嗚int.搏Parse燕(line式s.Att踏ribut側(cè)es["s刃troke悅"].In飯nerTe牛xt);儀
Po晃int[]另poin姐ts=忌newP血oint[糧lines底.Chil決dNode膊s.Cou蛛nt];竄
Co腔lorl涉ineco叨lor=妥Colo套r.Fro廉mName中(line保s.Att濱ribut胸es["c愉olor"均].Inn障erTex浙t);咱
fo沿r(int燦i=縣0;i緞<lin勢es.Ch祝ildNo柿des.C恨ount;險(xiǎn)i++)只
{匪
X
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2030年中國安全控制系統(tǒng)行業(yè)應(yīng)用狀況及投資模式分析報(bào)告
- 2024-2030年中國嬰幼兒產(chǎn)品市場競爭力策略及投資盈利分析報(bào)告
- 2024-2030年中國大提花貢緞行業(yè)競爭格局及前景趨勢預(yù)測報(bào)告
- 2024-2030年中國臺階鏜刀行業(yè)市場發(fā)展規(guī)模及投資可行性分析報(bào)告
- 眉山藥科職業(yè)學(xué)院《國際商務(wù)談判實(shí)務(wù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年昆明住宅購買合同
- 2024年漁業(yè)供貨合同
- 主鏡頭和關(guān)系鏡頭
- 2024年度網(wǎng)絡(luò)安全防護(hù)技術(shù)支持服務(wù)合同范本3篇
- 呂梁師范高等專科學(xué)?!妒称飞锛夹g(shù)專題》2023-2024學(xué)年第一學(xué)期期末試卷
- 八年級道法上冊第一學(xué)期期末綜合測試卷(人教版 2024年秋)
- 2025屆江蘇省期無錫市天一實(shí)驗(yàn)學(xué)校數(shù)學(xué)七年級第一學(xué)期期末達(dá)標(biāo)檢測試題含解析
- UG基礎(chǔ)培訓(xùn)課件
- 城市軌道交通運(yùn)營管理【共30張課件】
- 鋼結(jié)構(gòu)設(shè)計(jì)智慧樹知到期末考試答案章節(jié)答案2024年山東建筑大學(xué)
- 2024年廣東省廣州市荔灣區(qū)中考一模語文試題
- 人教版四年級上冊數(shù)學(xué)數(shù)學(xué)復(fù)習(xí)資料
- TD/T 1066-2021 不動產(chǎn)登記數(shù)據(jù)庫標(biāo)準(zhǔn)(正式版)
- 睡眠中心宣傳方案
- 2024春期國開電大??啤督ㄖ茍D基礎(chǔ)》在線形考(形考性考核作業(yè)一至四)試題及答案
- 論《國際貨物銷售合同公約》的適用問題
評論
0/150
提交評論