內容簡介
本書以開發人員在項目開發中經常遇到的問題和必須掌握的技術為中心,介紹了套用Java進行程式開發的多方面的知識和技巧,主要包括Java的圖形圖像、動畫遊戲、網路套用技術、Applet套用、XML、JFreeChart圖表開發和PDF文檔處理等內容。全書分為6篇21章,總計598個實例,每個實例都經作者精心篩選,具有很強的實用性,其中一些實例是開發人員難於尋覓的解決方案。
本書附帶有配套DVD光碟,其中提供有書中全部實例的原始碼,這些原始碼都是經過作者精心調試通過的,保證能夠在Windows 2003、Windows XP及Windows 7作業系統下編譯和運行。
本書非常適合Java項目開發人員、Java初學者及編程愛好者使用,同時也可以作為培訓機構、大中專院校老師和學生的實踐參考用書。
前言
前 言
特別說明:
《Java開發實戰1200例》包括第I卷、第II卷總計1200個例子左右,本書是第II卷,包含約600個例子。
程式開發是一項艱辛的工作,它不僅考驗開發人員的智力,更考驗開發人員的體力。縱觀國內的軟體企業,內部開發團隊挑燈夜戰、加班加點是常有的事情。筆者參加過不少項目的開發工作,對編程有深刻的體會。編程是一項複雜的創造性工作,它不僅需要開發人員掌握各方面的知識,還需要開發人員積累豐富的開發經驗。項目開發中的一個問題可能會占用團隊幾天甚至十幾天的時間,但是如果開發人員遇到過類似的問題,也許幾分鐘就可以解決。這就是編程經驗的重要性,也是許多軟體企業用人時選擇有項目開發經驗者的主要原因。
本書精選了項目開發中的598個實例,涵蓋了Java的圖形圖像、動畫遊戲、網路套用技術、Applet套用、XML、JFreeChart圖表開發和PDF文檔處理等方面的內容,每一個知識點都提供了豐富的、具有很強實用性的實例,以幫助開發人員快速解決疑難問題。
本書內容
本書分為6篇21章,總計598個實例。書中所選實例均來源於一線開發人員的實際項目開發,涵蓋了開發中經常使用和需要解決的熱點、難點問題,參考本書,讀者可以快速解決開發中的難題,提高編程效率。本書亮點內容如下圖所示。
為了方便讀者學習和使用本書,書中在講解實例時採用統一的編排樣式,每個實例均由“實例說明”、“關鍵技術”、“設計過程”和“秘笈心法”4部分構成,如下圖所示。
其中,“實例說明”部分採用圖文結合的方式介紹實例的功能和運行效果;“關鍵技術”部分介紹了實例使用的重點、難點技術;“設計過程”部分講解了實例的詳細開發過程;“秘笈心法”部分給出了與實例相關的技巧和經驗總結。
本書特色
* 實例豐富,經驗超值
本書精選了598個實例和598個經驗技巧,涵蓋了編程多個方面的各種套用。用戶開發中所需的技術、技巧、解決方案幾乎都可在本書中找到。
* 易查、易學、易用
本書目錄從套用和技術角度對實例進行分類,方便用戶查找其所需的編程技術。
* 特點突出,功能完善,實用性強
書中所選實例均是項目開發中需要經常使用或實現的技術,有許多實例是開發人員夢寐以求的。
* 贈送所有實例源碼
書中所有實例均提供有原始碼,用戶在開發中可以快速借鑑或套用。
* 段落工整、簡潔,圖文結合,更容易學習
* 編碼規範,注釋詳盡
為了提高用戶的實際開發能力,書中代碼都是經過嚴格審查的,可以與商業源碼媲美。並且為了方便用戶閱讀,幾乎所有代碼都提供有詳細注釋。
超值DVD光碟
為了幫助讀者學習和使用書中的實例,本書附贈有DVD光碟,其中不僅提供有書中所有實例項目的原始碼、素材,還提供了Java學習資料。光碟目錄如下圖所示。
本書約定
* 實例使用方法
用戶在學習本書過程中,可以從光碟中複製實例,去掉實例的唯讀屬性。有些實例需要使用相應的資料庫或第三方資源,這些實例在使用前需要進行相應配置,詳細使用方式請參考本書的光碟使用說明書。此外,如果用戶直接將本書實例用於商業用途,由此產生的不良後果由用戶自己承擔。
* 實例位置
書中實例在光碟中的存儲格式為“MR\實例序號”。例如,“MR\090”表示實例090。
* 部分實例只給出關鍵代碼
由於篇幅限制,書中有些實例只給出了關鍵代碼,完整代碼請參考光碟實例程式。
讀者人群
本書非常適合以下人員閱讀:
* 從事Java編程行業的開發人員
* 有一定語言基礎,想進一步提高技能的人員
* 大中專院校的老師和學生
* 即將走上工作崗位的大學畢業生
* 相關培訓機構的老師和學員
* Java編程愛好者
本書作者
本書由明日科技組織編寫,參加編寫的程式設計師有張振坤、白偉明、王小科、王軍、趙會東、董大永、尹強、李繼業、張磊、賽奎春、高春艷、宋坤、劉銳寧、梁水、李偉明、劉彬彬、安劍、孫秀梅、鞏建華、房大偉、呂雙、劉雲峰、王國輝、李鍾尉、陳丹丹、盧翰、潘凱華、劉欣、李慧、梁曉嵐、楊麗、顧麗麗、劉齡齡、王樂樂、陳英、李賀、朱曉、楊明、肖鑫、李鑫等。
由於筆者水平有限,疏漏和不足之處在所難免,懇請廣大讀者朋友批評指正。
特別提醒:
親愛的讀者朋友,由於近期紙張價格和印製成本大幅上漲,為不增加讀者朋友的負擔,又不減少書的內容,本書的最後幾章內容不得不放在配書光碟中(參見目錄),由此給您帶來了不便,在此深表歉意。
編 者
圖書目錄
第1篇 圖形圖像篇
第1章 Java圖形與文本 2
1.1 繪製圖形和文本 3
實例001 繪製直線 3
實例002 繪製矩形 4
實例003 繪製正方形 5
實例004 繪製橢圓 6
實例005 繪製圓弧 7
實例006 繪製指定角度的填充扇形 8
實例007 繪製多邊形 9
實例008 繪製二次曲線 10
實例009 繪製三次曲線 12
實例010 繪製文本 13
實例011 設定文本的字型 14
實例012 設定文本和圖形的顏色 15
1.2 筆畫和圖形處理 16
實例013 設定筆畫的粗細 16
實例014 設定筆畫樣式 18
實例015 設定連線方式 19
實例016 設定虛線模式 20
實例017 縮放圖形 22
實例018 旋轉圖形 23
實例019 斜切圖形 24
實例020 為圖形填充漸變色 25
實例021 平移坐標軸 27
1.3 繪製圖案 28
實例022 繪製五環圖案 28
實例023 繪製藝術圖案 29
實例024 繪製花瓣 30
實例025 繪製公章 32
1.4 圖形的合併運算 33
實例026 圖形的加運算 33
實例027 圖形的減運算 35
實例028 圖形的交運算 36
實例029 圖形的異或運算 37
第2章 Java圖像處理 39
2.1 圖像處理 40
實例030 繪製圖像 40
實例031 縮放圖像 41
實例032 翻轉圖像 42
實例033 旋轉圖像 44
實例034 傾斜圖像 45
實例035 裁剪圖片 46
2.2 顏色處理 47
實例036 調整圖片的亮度 47
實例037 轉換彩色圖片為灰度圖片 49
實例038 使用像素值生成圖像 50
第3章 繪圖特效 52
3.1 文字特效 53
實例039 立體效果的文字 53
實例040 陰影效果的文字 54
實例041 傾斜效果的文字 55
實例042 漸變效果的文字 56
實例043 會變色的文字 58
實例044 水印文字特效 59
實例045 順時針旋轉文字 60
實例046 動態繪製文本 62
實例047 中文驗證碼 64
實例048 圖片驗證碼 65
實例049 帶干擾線的驗證碼 66
3.2 圖片特效 68
實例050 紋理填充特效 68
實例051 水波效果的圖片 69
實例052 局部圖像放大 71
實例053 圖片半透明特效 73
實例054 圖片溶合特效 74
實例055 以橢圓形顯示圖像 75
實例056 圖片百葉窗特效 76
實例057 圖片馬賽克特效 78
實例058 模糊 80
實例059 銳化 81
實例060 照亮邊緣 82
實例061 反向 84
實例062 光柵圖像 85
實例063 圖片倒影效果 87
第4章 動畫和遊戲 90
4.1 文字動畫 91
實例064 文字淡入淡出 91
實例065 文字縮放 93
實例066 文字跑馬燈 94
實例067 字幕顯示 96
實例068 文字閃現 98
實例069 滾動廣告字幕 99
4.2 圖片動畫 101
實例070 圖片淡入淡出 101
實例071 隨滑鼠指針移動的圖片 103
實例072 通過鍵盤移動圖片 104
實例073 圖片動態拉伸 106
實例074 桌面彈球 107
實例075 循環滾動圖片 109
實例076 撞球動畫 111
實例077 電影膠片特效 113
實例078 隨機移動的圖片 115
實例079 雪花飄落動畫 116
實例080 圖片旋轉動畫 118
實例081 圖片閃現動畫 119
實例082 幀動畫效果 121
實例083 水波動畫 123
4.3 遊戲開發 125
實例084 圖片配對遊戲 125
實例085 小豬走迷宮 128
實例086 拼圖遊戲 130
實例087 海灘捉螃蟹 133
實例088 荒山打獵遊戲 135
實例089 打字母遊戲 137
實例090 警察抓小偷 139
實例091 擲骰子 141
實例092 畫梅花 143
實例093 打造自己的開心農場 144
第5章 列印報表 147
5.1 列印控制 148
實例094 列印對話框 148
實例095 實現列印 149
實例096 列印圖形 150
實例097 列印圖片 152
實例098 列印預覽 153
實例099 倒序列印 155
實例100 為列印內容添加水印 157
實例101 自動為列印內容添加水印 158
5.2 列印的套用 160
實例102 列印快遞單 160
實例103 列印報表 162
實例104 列印桌面圖片 164
實例105 列印柱形圖表 165
實例106 列印餅形圖表 167
實例107 列印折線圖表 169
實例108 列印區域圖表 170
實例109 列印帶柱形圖表的報表 172
實例110 列印帶餅形圖表的報表 174
實例111 列印帶折線圖表的報表 175
實例112 導出報表到Excel表格 177
實例113 導出報表到PDF文檔 179
實例114 批量列印條形碼 181
實例115 相冊特效列印程式 183
實例116 鏡面效果文本列印 186
實例117 透明的列印預覽對話框 187
第6章 管理圖像檔案 189
6.1 圖像的修改與保存 190
實例118 保存圖片檔案 190
實例119 修改圖片檔案名稱 191
實例120 縮放圖片並保存 192
實例121 為圖片添加水印並保存 194
實例122 溶合兩張圖片並保存 196
實例123 模糊圖片並保存 197
實例124 銳化圖片並保存 199
實例125 照亮邊緣並保存 200
實例126 反向並保存圖片 202
實例127 填充紋理並保存為圖片 204
6.2 圖片在資料庫中的存取 205
實例128 圖片存儲到Access資料庫中 205
實例129 圖片存儲到MySQL資料庫中 206
實例130 圖片存儲到SQLServer資料庫中 208
實例131 讀取Access資料庫中存儲的圖片 209
實例132 讀取MySQL資料庫中存儲的圖片 210
實例133 讀取SQLServer資料庫中存儲的圖片 211
實例134 修改Access資料庫中存儲的圖片 212
實例135 修改MySQL資料庫中存儲的圖片 214
實例136 修改SQLServer資料庫中存儲的圖片 215
6.3 其他套用 216
實例137 獲取滑鼠指針在任意位置的顏色值 216
實例138 圖片瀏覽器 218
實例139 轉換圖片格式 219
實例140 繪製石英鐘 221
實例141 畫圖程式 222
實例142 螢幕抓圖程式 224
實例143 螢幕放大鏡 225
第2篇 JFreeChart圖表篇
第7章 JFreeChart基本操作 230
7.1 JFreeChart基礎操作 231
實例144 基本餅圖 231
實例145 顯示圖示 232
實例146 工具列提示 233
實例147 亂碼問題 235
實例148 顯示數值 237
實例149 抗鋸齒設定 238
7.2 設定圖表背景 239
實例150 設定背景圖片 239
實例151 設定圖片對齊方式 241
實例152 設定背景圖片透明度 242
實例153 設定背景顏色 243
7.3 處理圖表的框線 244
實例154 隱藏圖表框線 244
實例155 圖表框線筆觸 245
實例156 圖表框線顏色 247
7.4 修改圖表的圖示 248
實例157 設定圖示背景色 248
實例158 設定圖示框線 249
實例159 設定圖示框線顏色 250
實例160 設定圖示邊緣間距 251
實例161 設定圖示字型顏色 252
實例162 設定圖示位置 253
第8章 基礎圖表技術 255
8.1 普通餅圖 256
實例163 分離餅圖 256
實例164 橢圓形餅圖 257
實例165 餅圖的陰影 258
實例166 餅圖的分類框線顏色 260
實例167 加粗餅圖分類框線 261
實例168 設定餅圖顏色 262
實例169 餅圖旋轉角度 263
實例170 餅圖旋轉順序 265
實例171 隱藏分類標籤連線線 266
8.2 3D餅圖 267
實例172 創建3D餅圖 267
實例173 3D餅圖透明度 269
實例174 3D餅圖的Z軸 270
實例175 逆時針旋轉3D餅圖 271
實例176 順時針旋轉3D餅圖 272
8.3 多餅圖 274
實例177 實現多餅圖 274
實例178 多餅圖亂碼 275
實例179 多餅圖的展示方式 277
實例180 3D多餅圖 278
8.4 基本柱形圖 280
實例181 簡單柱型圖 280
實例182 柱形圖角度 282
實例183 柱形圖負值 283
8.5 X坐標軸 285
實例184 X軸字型 285
實例185 X軸標籤字型 287
實例186 X軸標籤角度 288
實例187 X軸顯示情況 290
實例188 X軸尺度顏色 292
實例189 隱藏X軸尺度 293
實例190 X軸尺度筆觸 295
實例191 X軸尺度標籤角度 296
實例192 X軸分類的間距 298
實例193 X軸分類與原點的間距 299
實例194 X軸的顯示位置 300
8.6 Y坐標軸 302
實例195 Y軸字型 302
實例196 Y軸標籤字型 304
實例197 Y軸顯示情況 305
實例198 Y軸尺度顏色 307
實例199 隱藏Y軸尺度 309
實例200 Y軸尺度筆觸 310
實例201 Y軸尺度標籤角度 312
實例202 Y軸起始值 313
實例203 Y軸箭頭 314
實例204 Y軸主要刻度線 316
實例205 Y軸主要刻度線長度 317
實例206 Y軸次要刻度線 319
實例207 Y軸次要刻度線長度 320
實例208 設定Y軸最大值 322
實例209 設定Y軸數據範圍 323
實例210 Y軸的顯示位置 324
8.7 高級柱形圖 326
實例211 設定格線豎線 326
實例212 設定格線豎線顏色 328
實例213 設定柱形圖文本註解 329
實例214 設定柱形圖文本註解字型 331
實例215 設定柱形圖文本註解顏色 333
實例216 設定柱形圖文本註解錨點 334
實例217 設定柱形圖文本註解類別錨點 336
實例218 設定柱形圖文本註解旋轉錨點 338
實例219 設定柱形圖線條註解 339
實例220 繪製柱形效果 341
實例221 柱形圖陰影 342
實例222 柱形圖陰影偏移 344
實例223 設定柱形的顏色 345
實例224 繪製3D柱形圖 346
實例225 標記柱形圖區間 348
實例226 多系列柱形圖 350
實例227 多系列3D柱形圖 352
第9章 擴展圖表技術 354
9.1 區域圖 355
實例228 基本區域圖 355
實例229 顯示多分類區域圖 357
實例230 設定區域圖透明度 359
實例231 添加說明文字 360
實例232 設定說明文字位置 362
實例233 區域圖X軸顯示位置 363
實例234 區域圖X軸標籤角度 364
實例235 區域圖X軸尺度標籤角度 366
實例236 設定區域顏色 367
9.2 氣泡圖 368
實例237 基本氣泡圖 368
實例238 氣泡圖X軸標籤 371
實例239 氣泡圖Y軸標籤 372
實例240 設定坐標範圍 374
實例241 設定透明度 375
實例242 設定氣泡顏色 377
實例243 氣泡圖X軸標籤角度 378
實例244 氣泡圖X軸尺度標籤角度 379
9.3 分步圖 381
實例245 基本分步圖 381
實例246 加粗分步圖 383
實例247 顯示虛線效果 385
實例248 設定分步圖顏色 386
實例249 隱藏分步圖 387
實例250 分步圖X軸顯示位置 389
實例251 分步圖X軸標籤角度 390
實例252 分步圖X軸尺度標籤角度 391
9.4 聯合分類圖 393
實例253 生成線形圖與柱形圖 393
實例254 設定圖表高度 395
實例255 設定圖表位置 397
實例256 線形圖與分布圖 398
9.5 雙軸圖 400
實例257 基本雙軸圖 400
實例258 基本雙Y圖 402
實例259 雙Y軸字型 404
實例260 3D雙軸圖 406
實例261 設定雙軸圖顏色 407
實例262 雙軸圖X軸標籤角度 409
實例263 雙軸圖X軸尺度標籤角度 410
9.6 折線圖 412
實例264 基本折線圖 412
實例265 多條折線圖 414
實例266 水平折線圖 416
實例267 隱藏折線圖 417
實例268 加粗折線 419
實例269 顯示折線節點 420
實例270 生成節點圖 421
實例271 設定虛線圖 423
實例272 設定折線顏色 424
實例273 3D折線圖 426
實例274 XY折線圖 427
實例275 排序折線圖 429
9.7 環形圖 431
實例276 基本環形圖 431
實例277 環形圖字型 432
實例278 設定環形深度 434
實例279 分離環形圖 436
實例280 橢圓環形圖 437
實例281 環形的陰影偏移 438
實例282 環形的簡單標籤 439
實例283 環形的旋轉角度 441
9.8 堆積條形圖 442
實例284 基本堆積條形圖 442
實例285 橫向堆積條形圖 445
實例286 設定邊線距離 446
實例287 渲染分組堆積條形圖 447
9.9 時序圖 450
實例288 基本時序圖 450
實例289 設定時間顯示格式 452
實例290 添加雙時間軸 453
實例291 雙時間軸位置 455
實例292 動態顯示十字標記 456
實例293 添加Y軸標記 458
實例294 添加X軸標記 459
實例295 設定刻度單位 461
實例296 設定時間軸範圍 462
第3篇 網路技術篇
第10章 網路套用基礎 466
10.1 網路地址解析 467
實例297 獲取本地主機的IP位址 467
實例298 獲取本地主機的域名和主機名 468
實例299 通過域名獲得IP位址 469
實例300 通過IP位址獲得域名和主機名 470
實例301 獲得區域網路的所有IP位址 472
10.2 網路資源管理 474
實例302 獲取網路資源的大小 474
實例303 解析網頁中的內容 475
實例304 網路資源的單執行緒下載 476
實例305 網路資源的多執行緒下載 478
實例306 下載網路資源的斷點繼傳 480
第11章 TCP套接字 483
11.1 Socket基礎 484
實例307 建立伺服器套接字 484
實例308 建立客戶端套接字 485
實例309 設定等待連線的逾時時間 486
實例310 獲取Socket信息 487
實例311 接收和傳送Socket信息 488
實例312 關閉Socket緩衝 491
11.2 TCP網路通信 492
實例313 使用Socket通信 492
實例314 防止Socket傳遞漢字亂碼 495
實例315 使用Socket傳遞對象 497
實例316 使用Socket傳輸圖片 499
實例317 使用Socket傳輸音頻 501
實例318 使用Socket傳輸視頻 503
實例319 一個伺服器與一個客戶端通信 504
實例320 一個伺服器與多個客戶端通信 506
實例321 客戶端一對多通信 508
實例322 客戶端一對一通信 509
實例323 基於Socket的資料庫編程 511
實例324 使用Proxy創建代理伺服器 513
實例325 使用ProxySelector選擇代理伺服器 514
11.3 TCP實用程式 516
實例326 聊天室伺服器端 516
實例327 聊天室客戶端 518
第12章 郵件收發 521
12.1 簡單郵件 522
實例328 配置郵件服務 522
實例329 傳送郵件 526
實例330 接收郵件 528
12.2 複雜郵件 529
實例331 傳送帶附屬檔案的郵件 529
實例332 接收帶附屬檔案的郵件 531
實例333 傳送郵件時進行身份驗證 533
實例334 接收郵件時進行身份驗證 535
實例335 顯示未讀郵件 536
實例336 顯示已讀郵件 539
第4篇 Java安全與Applet套用篇
第13章 Java安全 544
13.1 Java對稱加密 545
實例337 使用BASE64加密 545
實例338 使用BASE64解密 546
實例339 生成DES的密鑰 547
實例340 使用DES加密 548
實例341 使用DES解密 549
實例342 PBE的鹽值 551
實例343 生成PBE的密鑰 552
實例344 使用PBE加密 552
實例345 使用PBE解密 553
13.2 Java非對稱加密 555
實例346 生成RSA密鑰對 555
實例347 使用RSA的簽名 556
實例348 RSA服務端加密 557
實例349 RSA客戶端加密 559
實例350 DH服務端加密 560
實例351 DH客戶端加密 563
13.3 Java單項加密 565
實例352 使用MD5加密 565
實例353 使用Hmac加密 566
實例354 使用DSA加密 568
第14章 Applet的套用 570
14.1 Applet在html中的使用 571
實例355 在html中顯示Applet 571
實例356 設定Applet的顯示位置 572
實例357 Applet獲取頁面傳遞的參數 573
實例358 使用<applet>標記中的archive屬性 574
14.2 Applet的方法 576
實例359 使用paint()方法繪製頁面內容 576
實例360 使用update()方法更新頁面內容 577
實例361 使用repaint()方法重新繪製頁面 578
實例362 Applet顯示地址欄上的路徑 579
實例363 Applet顯示class存放的路徑 581
14.3 Applet中的文字處理 582
實例364 控制Applet字型大小 582
實例365 控制Applet文字位置 583
實例366 控制Applet字型樣式 584
實例367 Applet中繪製立體效果的文字 585
實例368 Applet中繪製陰影效果的文字 586
實例369 Applet中繪製傾斜效果的文字 587
實例370 Applet中繪製漸變效果的文字 588
實例371 Applet中繪製會變色的文字 590
實例372 Applet中繪製順時針旋轉的文字 591
實例373 Applet中動態繪製文本 593
14.4 Applet中的圖形處理 594
實例374 Applet繪製直線 594
實例375 Applet繪製矩形 596
實例376 Applet繪製圓角矩形 597
實例377 Applet繪製橢圓 598
實例378 Applet繪製圓弧 599
實例379 Applet繪製折線 600
實例380 Applet繪製多角形 601
實例381 Applet繪製圖片 602
實例382 Applet中的圖形加運算 603
實例383 Applet中的圖形減運算 604
實例384 Applet中的圖形交運算 606
實例385 Applet中的圖形異或運算 607
實例386 Applet中繪製紋理填充圖形 608
14.5 Applet中的圖像處理 609
實例387 Applet中縮放圖像 609
實例388 Applet中翻轉圖像 610
實例389 Applet中旋轉圖像 612
實例390 Applet中傾斜圖像 613
實例391 Applet中調整圖片的亮度 614
實例392 Applet中繪製中文驗證碼 615
實例393 Applet中繪製圖片驗證碼 617
實例394 Applet中繪製帶干擾線的驗證碼 618
實例395 Applet中模糊圖像 620
實例396 Applet中銳化圖像 621
實例397 Applet中照亮圖像邊緣 622
實例398 Applet中反向圖像 624
實例399 Applet中圖像動態拉伸 625
14.6 Applet中的文字動畫 627
實例400 Applet中文字縮放動畫 627
實例401 Applet中文字跑馬燈動畫 628
實例402 Applet中字幕顯示動畫 630
實例403 Applet中文字閃現動畫 631
實例404 Applet中滾動廣告字幕動畫 633
第5篇 XML篇
第15章 初識XML 636
15.1 XML語言基礎 637
實例405 簡單的XML 637
實例406 驗證XML的格式 638
實例407 XML屬性的使用 639
實例408 XML中CDATA的使用 640
15.2 XML與CSS 642
實例409 在XML中使用CSS 642
實例410 CSS格式化XML布局 643
實例411 CSS格式化XML背景色 645
實例412 CSS格式化XML字型 647
實例413 CSS改變XML中的滑鼠手勢 649
實例414 CSS在XML中添加背景圖 651
實例415 CSS製作XML表格 652
15.3 XML與XSLT的元素 654
實例416 在XML使用XSLT 654
實例417 使用XSLT中的template 656
實例418 使用XSLT中的value-of 657
實例419 使用XSLT中的for-each 659
實例420 使用XSLT中的if 660
實例421 使用XSLT中的sort 662
實例422 使用XSLT中的choose 664
實例423 使用XSLT中的copy-of 665
實例424 使用XSLT中的apply-templates 667
實例425 使用XSLT中的attribute 669
實例426 使用XSLT中的elements 670
15.4 XML與XSLT的內建函式 672
實例427 使用XSLT中的generate-id() 672
實例428 使用XSLT中的format-number() 674
實例429 使用XSLT中的document() 675
15.5 DTD的引用與驗證 678
實例430 在XML內部定義DTD 678
實例431 在XML外部引用DTD 679
實例432 驗證XML是否符合DTD的定義 680
15.6 使用DTD定義XML元素 682
實例433 在DTD聲明元素 682
實例434 在DTD聲明重複元素 683
實例435 在DTD聲明選擇性元素 684
實例436 在DTD中使用ENTITY 686
15.7 使用DTD定義XML屬性 687
實例437 在DTD聲明元素屬性 687
實例438 在DTD聲明帶有#IMPLIED的屬性 688
實例439 在DTD聲明帶有#REQUIRED的屬性 690
實例440 在DTD聲明帶有#FIXED的屬性 691
實例441 在DTD聲明列舉屬性值 692
實例442 類型為ID的屬性實例 693
實例443 類型為IDREF的屬性實例 695
實例444 類型為NMTOKEN的屬性實例 697
第16章 XML Schema 699
16.1 XSD的引用與驗證 700
實例445 在XML中使用XML Schema 700
實例446 驗證XML是否符合Schema的描述 701
實例447 XSD文檔根元素的引用 703
實例448 在XSD中使用注釋 703
16.2 使用XSD簡單類型定義XML元素 704
實例449 在XSD定義XML元素 704
實例450 使用xs:simpleType和xs:restriction 705
實例451 使用xs:list 706
實例452 使用xs:enumeration 708
實例453 使用xs:pattern 710
16.3 使用XSD複雜類型定義XML元素 711
實例454 使用xs:complexType和xs:sequence 711
實例455 使用xs:choice 713
實例456 使用xs:all 714
實例457 使用xs:group 716
實例458 使用xs:extension和xs:simpleContent 718
實例459 使用xs:extension和xs:complexContent 719
實例460 使用xs:restriction和xs:simpleContent 721
實例461 使用xs:restriction和xs:complexContent 723
實例462 使用xs:attributeGroup和xs:attribute 725
16.4 使用XSD的普通類型 727
實例463 在XSD中對字元進行限制 727
實例464 在XSD中對數值進行限制 728
第17章 解析XML檔案 730
17.1 使用SAX讀取XML 731
實例465 從檔案中讀取XML 731
實例466 從數據流中讀取XML 732
實例467 從數據源中讀取XML 733
17.2 使用SAX解析XML 734
實例468 解析XML元素名稱 734
實例469 解析XML元素名稱和內容 736
實例470 解析XML元素屬性和屬性值 738
實例471 使用VO解析XML元素 740
實例472 使用VO解析XML元素和屬性 741
實例473 使用SAX驗證DTD 743
17.3 使用DOM讀取XML 745
實例474 從檔案中讀取XML 745
實例475 從數據流中讀取XML 746
實例476 從數據源中讀取XML 747
17.4 使用DOM解析XML 748
實例477 解析XML元素名稱 748
實例478 解析XML元素名稱和內容 749
實例479 解析XML元素屬性和屬性值 751
實例480 使用VO解析XML元素 752
實例481 使用VO解析XML元素和屬性 753
17.5 使用DOM操作XML 755
實例482 創建簡單的XML檔案 755
實例483 創建基本的XML檔案 757
實例484 使用VO創建XML檔案 759
實例485 使用DOM添加XML元素 761
實例486 使用DOM修改XML元素 764
實例487 使用DOM刪除XML元素 766
第6篇 操作PDF篇
第18章 操作PDF文檔 770
18.1 文檔和文檔屬性 771
實例488 創建PDF文檔 771
實例489 添加PDF文檔標題 772
實例490 添加PDF文檔主題 773
實例491 添加PDF文檔關鍵字 774
實例492 添加PDF文檔作者 775
實例493 添加PDF文檔創建者 776
實例494 添加PDF文檔製作者 777
實例495 添加PDF文檔創建日期 778
18.2 初始化操作 779
實例496 設定頁面大小 779
實例497 橫向顯示頁面 780
實例498 縱向顯示頁面 781
實例499 添加水印 782
實例500 添加頁眉和頁腳 783
實例501 創建新頁 784
實例502 為PDF文檔添加頁碼 785
18.3 字型與中文處理 786
實例503 設定特殊的文本字型 786
實例504 加粗字型 787
實例505 添加下劃線 788
實例506 添加刪除線 789
實例507 在PDF文檔中顯示中文 790
實例508 設定PDF文檔密碼 791
18.4 塊、短語、段落、章節和區域 792
實例509 添加和創建塊 792
實例510 設定上標和下標 793
實例511 設定文本背景顏色 794
實例512 添加和創建短語 795
實例513 添加和創建段落 796
實例514 設定段落首行縮進 797
實例515 設定段落的上下間距 798
實例516 設定段落左右縮進 799
實例517 設定段落的對齊方式 800
實例518 設定段落字型大小 801
實例519 設定段落文本顏色 802
實例520 添加章節 803
實例521 在章節中添加小節 804
實例522 在小節中添加列表 805
實例523 在小節中添加段落 807
實例524 在小節中添加表格 808
實例525 在小節中添加圖片 809
18.5 讀取PDF文檔 810
實例526 文本檔案轉換為PDF文檔 810
實例527 讀取PDF文檔 812
實例528 讀取加密的PDF文檔 813
實例529 編輯PDF文檔 814
實例530 導入已有文檔 816
實例531 導入並添加頁碼 817
實例532 導入並添加水印 818
實例533 導入並添加新頁和內容 819
實例534 拆分PDF文檔 821
實例535 合併PDF文檔 822
實例536 列印PDF文檔 823
特別提醒:
親愛的讀者朋友,由於近期紙張價格和印製成本大幅上漲,為不增加讀者朋友的負擔,又不減少書的內容,本書以下章節內容不得不放在配書光碟中,由此給您帶來了不便,在此深表歉意。
第19章 繪製PDF圖形和圖像 825
(本章內容在配書光碟中)
19.1 繪製圖形 826
實例537 在PDF文檔中繪製直線 826
實例538 在PDF文檔中繪製矩形 827
實例539 在PDF文檔中繪製圓 828
實例540 使用Graphics2D繪製圖形 829
實例541 使用PdfGraphics2D繪製文本 830
實例542 使用PdfGraphics2D繪製圖形 831
實例543 使用PdfGraphics2D繪製有填充色的
圖形 832
實例544 使用PdfGraphics2D旋轉繪製的圖形 833
實例545 使用PdfGraphics2D縮放繪製的圖形 834
實例546 使用PdfGraphics2D平移繪製的圖形 836
19.2 繪製圖像 837
實例547 添加圖片 837
實例548 設定圖片對齊方式 838
實例549 將圖片設定為背景 839
實例550 設定文字環繞 841
實例551 設定圖片大小 842
實例552 調整圖片比例 843
實例553 設定高度和寬度的比例 844
實例554 旋轉圖片 845
實例555 使用PdfGraphics2D繪製圖片 846
第20章 繪製PDF表格 848
(本章內容在配書光碟中)
20.1 Table表格 849
實例556 創建具有指定列數的表格 849
實例557 創建具有指定行列數的表格 850
實例558 設定表格的框線寬度 851
實例559 設定表格的框線顏色 852
實例560 設定單元格間距 853
實例561 設定單元格填距 855
實例562 設定表格的表頭 856
實例563 設定單元格所占的列數 857
實例564 設定單元格所占的行數 859
實例565 設定單元格的背景色 860
實例566 嵌套表格 861
實例567 偏移表格 862
20.2 PdfPTable表格 864
實例568 創建表格 864
實例569 設定表格寬度 865
實例570 設定表格對齊方式 866
實例571 設定表格的列寬 867
實例572 設定絕對寬度 868
實例573 嵌套表格 870
實例574 在表格中添加圖片 871
實例575 設定單元格的高度 872
實例576 設定單元格的對齊方式 873
實例577 設定單元格的填充和行間距 874
實例578 行優先分頁 875
實例579 頁優先分頁 877
實例580 強行在一頁顯示 878
實例581 絕對定位表格 879
實例582 大表格的記憶體處理 881
第21章 設定閱讀器參數 884
(本章內容在配書光碟中)
21.1 設定頁面參數 885
實例583 只顯示一個頁面 885
實例584 單列顯示 886
實例585 雙列顯示奇頁在左 887
實例586 雙列顯示奇頁在右 888
實例587 顯示大綱 889
實例588 顯示縮略圖 890
實例589 不顯示大綱和縮略圖 891
實例590 全螢幕顯示 892
21.2 設定工具列和全螢幕模式參數 893
實例591 顯示和隱藏工具列 893
實例592 顯示和隱藏選單 894
實例593 顯示和隱藏頁面元素 895
實例594 使文檔視窗適合顯示第一頁 896
實例595 在螢幕中央顯示文檔視窗 897
實例596 全螢幕模式下顯示大綱 898
實例597 全螢幕模式下顯示縮略圖 899
實例598 全螢幕模式下不顯示大綱和縮略圖 900