袁鋒 Windows圖形編程

>>>  文章華國詩禮傳家—精彩書評選  >>> 簡體     傳統

本書詳細介紹Windows圖形系統,包括Win32 GDI和 DirectDraw API的技術細節:設備環境、坐標空間和變換、像素、填充區域、位圖、圖像處理、文字處理、元文件、打印處理等。本書內容翔實、例子豐富、分析透徹,是Windows編程人員的實用參考書。附帶光盤包含書中實例、實用程序、相關信息等。

譯者序
前言
第1章 基本技術和知識
第2章 Windows圖形系統體系結構
第3章 GDI/DirectDraw內部數據結構
第4章 Windows圖形系統窺視
第5章 圖形設備抽象
第6章 坐標空間和變換
第7章 像素
第8章 直線和曲線
第9章 區域
第10章 位圖基礎
第11章 高級位圖圖形學
第12章 用Windows位圖進行圖像處理
第13章 調色板
第14章 字體
第15章 文本

  本書詳細介紹Windows圖形系統,包括Win32 GDI和 DirectDraw API的技術細節:設備環境、坐標空間和變換、像素、填充區域、位圖、圖像處理、文字處理、元文件、打印處理等。本書內容翔實、例子豐富、分析透徹,是Windows編程人員的實用參考書。附帶光盤包含書中實例、實用程序、相關信息等。
  
  
 

目錄

第1章 基本技術和知識
1. l 用 c/c++進行基本的 windows編程
1.1.1 hello world(版本 1):啟動測覽器
1. 1.2 hello world(版本 2):直接繪制到桌面
1. 1. 3 hello world(版本 3):創建一個全屏窗口
1. 1.4 hello world(版本4):用directdraw畫圖
1.2 匯編語言
l.3 程序開發環境
1.3.l 開發與測試系統
1. 3.2 編譯器
l.3.3 microsoft平臺軟件開發工具
1.3.4 microsoft驅動程序開發工具
l. 3. 5 microsoft開發網絡庫
1. 4 win32可執行文件格式
1. 4. 1 導入目錄
1.4.2 導出目錄
1.5 microsoft windows操作系統的體系結構
1.5.l 硬件抽象層
1.5.2 微內核
1.5.3 設備驅動程序

譯者序

   當我第一次接過這本書的英文版樣書時,我就驚詫于這本書是一個中國人寫的。
   本書作者 Feng Yuan是一位留美學者,軟件工程學博士,畢業于南京大學。在過去的四年中,他在HP溫哥華研究與開發實驗室從事DeskJet打印機驅動程序的開發。本書正是在此基礎上寫作的,它凝結了作者多年實際開發的汗水。
   本書的內容覆蓋了Windows的圖形系統,從Win32API的表層到最底層的顯示和打印機的驅動程序,特別集中在 Win32 GDI和 DirectX的 DirectDraw部分。它主要集中討論了Windows NT4和Window 2000平臺,還覆蓋了如下一些內容:Windows圖形系統的體系結構、GDI和Direct-Draw的數據結構、繪圖設備、GDI對象、像素、直線和曲線、填充區域和位圖、邏輯字體和文本格式化、元文件、打印和打印池、DirectDraw接口、GDI調試工具、EMF反編譯器、圖像繪制和3D效果。
   本書的最大特點是其實用性。它不僅講述了這些內容,重要的是,它還給出了實際編程中用到的分析問題和解決問題的方法。本書是從實際工作中收集而來的,而不是利用其他參考文獻中編輯而成的,并且它提供了許多可以直接重用的函數、C++類、示例程序源代碼,這對于從事Windows圖形編程工作的人員來說,如圖形軟件工程師,排版系統、中文辦公軟件的工程師,以及對Windows內幕感興趣的程序員,大多數是可以直接使用的。本書是一本名副其實的Windows圖形編程寶典。
   本書由英宇工作室的鄧浩組織翻譯,參加翻譯的人員還有裘強、薛賽男、林碧森、歐陽宇、易重英、陸紹飛、牛韜、王安鵬、祁力、徐繼偉、謝君英、劉舫、李超、陽愛軍、朱翠蓮。郭增元、楊青青、李娜。還有部分人員參與了錄人和排版工作,他們是溫春美,李明生。林江勇、武堂、王明舉、郭茜茜。
   我們一直在盡力將本書翻譯好,但由于時間倉促,加之譯者水平有限,書中肯定會有不少疏漏,懇請讀者指正。我們接收廣大讀者意見的郵箱為: yingu@263.net。
   2001年12月
  

前言

   一本關于Windows編程的新書,要想真正有價值,它應該是深人的、完整的、最新的、正確的、基于實踐的和對讀者有幫助的。
   一本深人的書應該從API的底層談起,一直講到API的設計原理、內部數據結構以及實現方法。它應該為你提供檢查和探測工具。
   一本完整、最新的書,應該把注意力集中在迄今為止對Win32 API的最好實現--Windows 2000上(它將是微軟將來的操作系統的基礎),并覆蓋它的所有新特性。
   一本正確的書,應該是對Win32 API功能進行實際探索,并驗證所有細節后書寫的。只閱讀微軟的開發文檔顯然是不夠的,因為這些文檔只是MAP的概要,并且有些不完全的。過時的甚至是模棱兩可的信息。
   一本實用的、有用的書,對于程序員和軟件工程師來說,不應該只描述API和提供一些簡單例子,而應該解決現實世界的問題,提供可重用的生成模塊,提供有用的工具,并鼓勵讀者寫出很專業的程序。
   特別是,這種書一般都需要闡述Win32 GDI,或者Windows圖形編程,它是所有Windows編程的基礎生成部分。到目前為止,講解最深的可能是 Matt Pietrek的書,它討論了 Windows3.1GDI的內部工作原理。關于GDI最完整和最新的描述由微軟的 MSDN庫提供。 CharlesPetzold最有名的一本書《Programming Windows》,第五版,其中有一半的篇幅講解 Windows 98GDI編程。
   但是因為所有的Windows編程中經常需要處理Windows GDI,所以,需要一本更深入、更完整、更新、更正確和更有用的書來講解Windows GDI。這就是本書的寫作目標。
   本書內容
   本書講解如何用 Win32 GDI API進行圖形編程,同時介紹了 DirectDraw和 Direct3D立即模式。它覆蓋了在所有Win32平臺上實現的共同特性,僅在Windows NT/2000下實現的純32位特性,及在 Windows 2000和 Windows 98中增加的最新特性。例如,對 alpha混合、透明位傳輸、漸變填充。從右到左的閱讀順序、分層窗口、向打印機發送JPEG/PNG圖像等都進行了詳細講解。
   本書是關于Windows編程的,并更深一步介紹這些東西是如何實現的,因此,使讀者可以更高效、自信地使用 Win32 API。
   本書教你全面地、分析地閱讀Win32文檔,盡力理解 Win32 API設計和實現者的思路,并用邏輯推理和實驗來完整理解Win32 API,甚至找出文檔中遺漏的信息或錯誤的信息。
   本書教你如何使用編程工具來理解Win32API。更重要的是,本書示范了如何建立你自己的工具,經常使用核心硬件級的系統編程技術,并設計一些有趣的實驗對Win32 API的沒有文檔記載的世界進行探索。開始的幾章可以作為系統級Windows編程書,也可用于Windows編程的其他領域。
   本書教你創建可重用的生成塊以方便實際使用。除了一些簡單的測試和示例程序外,本書包含了大量的可重用函數、C++類、驅動程序、工具和重要程序,可用于產品級的 Windows程序。它開發了一個面向對象的 Windows編程C++類庫,支持簡單的窗口、SDI窗口、MDI窗口、對話框、工具欄、狀態窗口、屬性表、子類、通用對話柜等等。它提供一些類,處理DIB/DDB/DIB段、EMF繪制、圖像處理、顏色量化、錯誤擴散半色調,JPEG圖像解碼/編碼、字體文件解碼、字體嵌人、PANOSE字體匹配、圖元繪制、3D文本、設備無關的多重頁面布局、DirectDraw封裝、 Direct3D IM封裝等。
   本書的代碼不依賴于 Microsoft FoundationClass,或者任何的第三方類庫,可用于任何C++程序。所有這些類命名為以K打頭,因此你可以很容易地將他們與MFC、ATL、OWL或者你自己的類庫混合使用。
   本書組織結構
   本書覆蓋了Windows圖形編程的三個層次:實現層、API層和應用層。
   實現層覆蓋了 Win32 GDI API和 DirectX COM接口背后的內容,它是 Window圖形引擎和Win32子系統客戶DLL沒有文檔記載的領域。第2、3、4章覆蓋了實現層的所有內容,為理解API層建立一個堅固的基礎。
   API層提供了 Win32 GDI API、 DirectDraw以及一些 Direct3D IM的精辟的、準確的、一步一步的描述。應用層建立在 API層之上,用于解決現實領域的問題、實現可重用函數、C++類和重要程序。API層和應用層根據一些主題一起討論。一般說來,一章的開始部分覆蓋API層,接著轉移至與現實應用相關的程序。對于講述更復雜的主題(如位圖),用一章覆蓋基本的主題,兩章覆蓋更高級的應用。
   第1章"基本技術和知識",回顧了基本的Windows編程技術,這些在本書的后面將是有用的。它包括基本的Windows編程、Intel匯編語言、程序開發環境、Win32可執行文件格式以及Windows操作系統的體系結構。我最喜歡的部分是API"鉤子",它通過重寫Win32模塊的導入/導出目錄來實現。
   第2章"Window圖形系統體系結構"從整體上瀏覽了Windows圖形系統,從Win32子系統DLL一直到圖形設備驅動程序。它講述了Windows圖形系統組件、GDI體系結構、DirectX體系結構、打印子系統體系結構、圖形引擎、顯示驅動程序和打印機驅動程序。我最喜歡的部分是對系統服務調用的描述,它在用戶模式GDI實現代碼和核心模式圖形引擎之間架起了一座橋梁,列出沒有文檔記載的系統服務調用(從GDI32.DLL、USER32.DLL、NTDLL.DLL和WIN32K.SYS)的工具和一個簡單的打印機驅動程序,它能生成帶嵌入位圖的HTML頁面。

 


網載 2013-07-04 14:50:14

[新一篇] 《點石成金》筆記

[舊一篇] 《代碼整潔之道》(Clean Code)
回頂部
寫評論


評論集


暫無評論。

稱謂:

内容:

驗證:


返回列表