Windows程序设计翻译太烂

windows程序设计 第五版 英文版 和中文版, 以及书中源码,和win32api大全 windows程序设计 第五版 英文版 原版 用多介绍了,E书中的经典之作!网络资源比比皆是!要想学习windows编程,最好从此书开始。过网上大部分都是pdf格式,很难从中复制粘贴重要的内容以用作自我总结,所以本资源除了网上提供的pdf格式以及源码外,特意为广大读者准备了chm格式文本,还包括win32api大全 立即下载
这是《windows程序设计》(第五版)122页的一节.读了之后,百思不得其解,甚使郁闷!设置都不变,居然得出了两种分辨效率:1.每英寸大概就为13像素;2.每英寸就为16像素?还有:10磅字既是10/72英寸,如果乘以96点,每英寸大概就为13像素.这又是什么逻辑啊?

今天,又思考了一番,肯定是翻译错了。然后突然,觉得移动两个逗号后,一切都那么合情合理!以前总以为自己对dpi和ppi不是很了解,所以查的都是介绍两者以及两者方面的资料,今天查了windows程序设计的翻译错误,一切果然一目了然了。除了骂下本书的翻译者,也只能怪自己的英语太烂。
先看看语文的描述:
That's the small font, which is based on a display resolution of 96 dots per inch. I said it's a 10-point font. Ten points is 10/72 inch, which if you multiply by 96 dots per inch yields a result of (approximately) 13 pixels. That's tmHeight minus tmInternalLeading. The line spacing is 12 points, or 12/72 inch, which multiplied by 96 dots per inch yields 16 pixels. That's tmHeight.
Ten points is 10/72 inch, which if you multiply by 96 dots per inch yields a result of (approximately) 13 pixels.其实,翻译的错误在于一个符号:10磅字既是10/72英寸,如果乘以96点每英寸,大概就为13像素.注意,我将那个逗号放到了每英寸的后面!也许一切错误的原因,都是这个小小的逗号.

网上高手发现的:

1.(23页第13行):“宽字符不需要Unicode。Unicode是一种可能的宽字符编码。”这是什么意思?查查原文,原来是:Wide characters aren't necessarrily Unicode. Unicode is one possible wide-character encoding.意思是说:“宽字符并不等同于Unicode。 Unicode只是一种可行的宽字符编码(方案)。”

2.(35页第13行):“你必须用sizeof(TCHAR)将其分开。”其实看书的人看到此处,应该知道这里不应该是什么“分开”,而应该是“除” 查查原文,果不其然:You must divide it by sizeof (TCHAR). 译者是不是已经无知到了只知道divide一词的“分开”这个义项?

3.(65页第7行):“……只不过必须认为其大小是某一特定尺寸,或者在程序运行时其大小保持不变。”这似乎有悖常识。对比一下原文( 括号中的部分为之前的句子):( You can do almost anything you want with your program's client area ) —anything, that is, except assume that it will be a particular size or that the size will remain constant while your program is running.while your program is running.显然,从anything一词开始的部分应译:“只是不能认定其大小为一特定尺寸或在程序运 行期间保持不变。”原译的意思正好反过来了。

4.(76页第4行):“它是字体设计者建议加在横向字符之间的空间大小。”这有点不对头,tmExternalLeading明明是一个纵向的长度,怎么 会说“横向字符之间”?看看原文:This is an amount of space that the designer of the font suggests be added between successive rows of displayed text.知道了吧:译书的人把successive rows(意为“相邻行”)译成了“横向字符”,何等荒谬

5.(100页第1行):“当通过GetScrollInfo函数使用SIF_RANGE标志时,应把nMin和nMax字段设置为从函数返回的当前范围。”这明显不对了 原文是:When you use the SIF_RANGE flag with the GetScrollInfo function, the nMin and nMax fields will be set to the current range on return from the function.应译:“调用GetScrollInfo函数时如果指定了SIF_RANGE标志,则函数返回时将nMin 和nMax字段设为当前范围值。”

6.(100页第11行):“在SetScrollInfo函数中仅使用SIF_DISABLENOSCROLL标志。如果指定了此标志,并且新的滚动条参数使滚动条不可见 则禁用该滚动条。”这一段有点莫明其妙。看看原文:You use the SIF_DISABLENOSCROLL flag only with the SetScrollInfo function. If this flag is specified and the new scroll bar arguments would normally render the scroll bar invisible, this scroll renders the scroll bar disabled instead. (I'll explain this more shortly.) 这话应译:SIF_DISABLENOSCROLL 标志只与SetScrollInfo函数配合使用。(在调用此函数时)如果提供了在通常情况下会导致滚动条不可见的新的滚动条参数,而且 指定了这一标志,则此时滚动条只是被禁用而不是被隐藏。”(这句话的翻译稍有难度,为更通顺起见,我的译文在次序上做了一点 调整)

7.(100页倒数第2行):“新滚动条函数的一个好的功能是当使用与滚动条范围一样大的页面时,……”什么叫“使用与滚动条范围一样大的 页面”?看看原文:One nice feature of the new scroll bar functions is that when you use a scroll bar page size。其中 use a scroll bar page size应该译成“使用滚动条页面尺寸”,而不是“使用与滚动条范围一样大的页面”。

8.(107页倒数第5行):“而在较慢的机器上,则可以考虑对GetSystemMetrics使用SB_SLOWMACHINE参数作为替换的处理过程。”我发觉自己 好象不懂汉语了。:-)还是看原文吧:But try your code out on a slow machine, and perhaps think about using the SB_SLOWMACHINE argument to GetSystemMetrics for alternative processing for slow machines. 这应该译作:“但是,你应该 在较慢的机器上测试自己的代码,此外,也可以考虑使用SB_SLOWMACHINE 参数调用tSystemMetrics函数,以便为较慢的机器提供别 的处理过程。”

9.(120页倒数第2行):“这些看起来更像直接的定义。”这好象没什么问题,但对比一下原文:These seem like straightforward definitions until one begins to think through their implications. 这句话被译书的砍掉了后半截,完整的意思应该是:“这 看起来象是直接的定义,但只要思考一下其中的含义就会发现事实并非如此。”

10.(122页第14行):“10磅即是10/72英寸,如果乘以96点,每英寸大概就为13像素。”这肯定不对。来看原文:Ten points is 10/72 inch, which if you multiply by 96 dots per inch yields a result of (approximately) 13 pixels.这下明白问题之所在了吧 ?dots per inch是分辨率的单位,应该译成“点每英寸”或“点/英寸”(就象速度的单位是“米每秒”或“米/秒”一样)。知道 了这一点,此句其实很简单:“10磅即是10/72英寸,乘以96点每英寸,那就大约是13个像素。”后面第18行也有类似问题。其中的 “乘以120点,每英寸等于”应改成“乘以120点每英寸,等于”。

11.(122页第19行):“像第四章一样,再次强调所显示的是实际的度量大小,因此您可以理解它工作的方式。不要在您的程序中对此编写代 码。”什么叫“对此编写代码”?看一下原文:As in Chapter 4, let me emphasize again that I'm showing you actual metrics so that you can understand how this works. Do not code these numbers in your programs。这并不难译:“就象在 第4章中做的那样,我要再次强调,在此展示这些实际尺寸只是为了让你理解其工作机制。在你的程序中不要直接使用这些数字。”

12.(125页倒数第9行):“注意最重要的位是标为0的8位,”我怎么也搞不懂:这8个0为什么会是“最重要的”。来看原文:Notice that the most-significant 8 bits are zero。most-significant在这里意思是“最高的”而不是什么“最重要的”!

13.(128页第17行):“大多数程序员以不同的方式使用SaveDC和RestoreDC。然而,更像汇编语言中的PUSH和POP指令,当您调用SaveDC时, 不需要保存返回值。”大多数程序员的方式是什么?来看原文:Most programmers use SaveDC and RestoreDC in a different manner, however, much like PUSH and POP instructions in assembly language. When you call SaveDC, you don't need to save the return value。这应该译成:“但是,大多数程序员以另一种方式使用SaveDC和RestoreDC,就如同在汇编语言中使用PUSH 和POP指令一样。当调用SaveDC时,你并不需要保存返回值。”

14.(153页倒数第2行):“您可以设想从一个无穷大的封闭区域内部的点画线,”真是这样吗?让原文来回答:you can imagine a line drawn from a point in an enclosed area to infinity。这应该译成:“你可以设想从封闭区域中的一个点作一直线延伸到无穷远 处”。译书的人那种译法真的是有点搞笑了。154页第4行那句“您仍旧可以……”也有同样的问题。毕竟,同一只猪放的只能是同样 的臭屁!:-)

15.(163页第3行):“更像客户区坐标。”单看这句倒没什么问题,但与与前面的内容结合,就大有疑问。对比一下原文吧:most likely client-area coordinates.老天,译手们竟然把likely译成“象”!!!我都有点不好意思把这样简单的句子写出来了:“多半是客 户区坐标。”

16,Windows将xViewExt设置为某个像素数而将xWinExt设置为xViewExt像素占据的一英寸内有几百像素的长度。”什么叫“xViewExt像素占据 的一英寸内有几百像素的长度”?来看原文:Windows sets xViewExt to be a certain number of pixels and xWinExt to be the length in hundredths of an inch occupied by xViewExt pixels。这个句子稍有难度,但即便
英文水平粗疏如我之人也应该能给出正确的译文:“Windows将xViewExt设置为某一像素数,并将xWinExt设置为以百分之一英寸为单 位的、xViewExt个像素所占据的长度。”后面一句“比值给出了一英寸内有几百个像素的数值”一句也是同样的问题,应改成“比值 给出了百分之一的长度内包含的像素数”。

17.(193页第1行):“在一些交叠的操作中通常相互补充使用。”什么叫“交叠的操作”?看看原文:often complementing each other with some overlap。这很简单,应该译成:“它们的功能常常互为补充,也有一些重叠。”

18.(199页倒数第1行):“在面向工作组的Windows中”熟悉Windows的人一看就知道这是个什么问题:原文中此处是Windows forWorkgroups 那是微软Windows系列产品中的一种,译手们把这个产品名直接译出来虽然意思没错,但却会让不明就里的人一头雾水。对于产品名 ,一般是不译的,直接使用就行了。就象Office中的PowerPoint一样,你如果硬要把它译出来,那就是“电源插座”(我实在不知道 微软怎么会给自己的产品取这么一个名字:-))。你如果想知道某人的电脑有没有装PowerPoint,你要是问他:“你的电脑有没有‘ 电源插座’”,他肯定会象看一个怪物似的盯着你,回答说:“当然有。不但电脑上有,墙上还有几个!”呵呵!

19.(213页第9行):“这些字符消息是我们将文本传递给窗口过程时遇到的第一个消息。它们不是唯一的消息。”有点看不懂?来看原文: These character messages are the first messages we've encountered that deliver text to the window procedure. They're not the only ones。这显然应该译:“这些消息是我们遇到的第一批向窗口过程传递文本的消息。它们不是唯一具有这一功能的消 息。”

20.(213页第11行):“任何窗口过程都与您用RegisterClassA(RegisterClass的ANSI版)注册的窗口类相联系,从而获得含有ANSI字符代 码的消息。”岂有此理!那RegisterClassW呢?干什么用?来看原文:Any window procedure associated with a window class that you register with RegisterClassA (the ANSI version of RegisterClass) gets messages that contain ANSI character codes。初中生都不应该看不懂这句话!其意思应该是:“与你用RegisterClassA(RegisterClass函数的ANSI版本)注册的窗口类相 关的任何窗口都会接收到含ANSI字符代码的消息。”

21.(P681页的最下方),书上写的RowLength = ((bmch.bcWidth * bmch.bcBitCount + 31) & 31) 〉〉 3;我看不明白,&31的话不是截留低 5位吗,显然应该是RowLength = ((bmch.bcWidth * bmch.bcBitCount + 31) & ~ 31) 〉〉 3; 这样才等价于“/32”啊。


错误远不止这么多,不想说了,结合英文版来看吧!

 
Windows程序设计 英文版 立即下载

相关推荐

Windows程序设计 第6版 (英文版)

[电子书] Windows程序设计 第6版 (英文版)

【Window程序设计:第五版】翻译勘误 转载

出处 http://www.cnblogs.com/volcanol/tag/Windows%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1/ Exp1:用词精确 书中正文14页 “1.3.4 程序入口      正像main是C程序的入口一样,windows程序的入口是WinMain,它总是以下面的面目出现:”  这里用语就是很精确, “面目”这个词

skysys的研究小屋 887

Windows 程序设计(英文版)(第五版)Programming Windows EN

"Windows程序设计(第5版)对于Windows程序员来说,“从 Chares 的(Window程序设计)一书中寻找答案。”几乎成了一句至理名言。而(Windows程序设计》第5版是专门为在Microsoft Windows 98、Microsoft Windows NT 4和 Windows NT 5下编程的开发人员编写的。内容博大精深,并有大量的源代码来帮助读者掌握Windows编程。本书覆盖了Windows编程的方方面面,是广大编程人员和学习Windows编程的读者必备的一本好书。"<br/><br/>

windows程序设计翻译错误

"那是小字体,它基于的显示分辨率为每英寸96点.我说过它是10磅字体。10磅字既是10/72英寸,如果乘以96点,每英寸大概就为13像素.这即是tmHeight减去tmInternalLeading的值.行距是12磅,或12/72英寸,它乘以96点,每英寸就为16像素.这即是tmHeight的值."  这是《windows程序设计》(第五版)122页的一节.读了之后,百思得其解,甚使郁闷!设

1210

经典Windows编程书单

转载:http://www.ituring.com.cn/article/506991 说好的这次写一个图形编程书单……但是看起来是很好整理,这类书散落的家里到处都是…… 先把经典Windows编程的书整理一下吧,Windows的也到处都是很多都找到了,只能把找到的拍个照,可能很多这次拍个照就永远压箱底了。 按照惯例,首先回答一个无聊的问题:”你买这么多,都看完了吗?“,答案...

Rxiang12的博客 840

windows 程序设计 学习笔记(一)

最近看这本书,顺便写下笔记, 做了有两年的Windows 开发 ,一直自学 ,打算看下基本经典的书,查缺补漏,我这人有强迫症 ,必须得系统学,话说这中文版的翻译太烂了 ,将就着看吧,谁让咱英语好呢,错了要喷 ,纯粹是笔记。 #include int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmd

wxl1380610的专栏 168

Windows 程序设计(第六版)》(英文版)

作为Windows开发圣经的最新版本,本书的主题是Windows 8应用程序开发,全面介绍Windows程序设计所涉及的细枝末节,旨在帮助读者从高屋见瓴的角度建立完整的知识体系,为以后的职业生涯奠定良好的基础。

windows程序设计第五版(英文版)

本书是一本经典的Windows编程圣经,涵盖基础知识和中高级主题,全面地介绍了Windows程序设计所涉及的细枝末节,旨在帮助读者从高屋见瓴的角度,建立完整的知识体系,为以后的职业生涯奠定良好的基础。

我个人的这几年读书经历[转贴]

出处:http://www.china-pub.com/computers/bbs/addfollow.asp?id=40572&rootid=2&boardid=11. 《C++程序设计》钱能著,清华大学出版社读大学的刚开始懂C++,于是自己去书店挑了这本书。冲着清华大学那几个字去的,后来才发现作者是在浙江杭州。优点:这本书简单易学,个人觉得整本书大致模仿了谭浩强那本《C程序设计》,交待得很有

darkbasic的专栏 1585

[自我总结]我个人的这几年读书经历

其实这是我发在China-pub上的一个帖子,现在放到Blog上来。套个俗话吧:书山有路勤为径。一步步走过来,总有收获和体会~===================================================================================1. 《C++程序设计》钱能著,清华大学出版社读大学的刚开始懂C++,于是自己去书店挑了这本书。冲着清华大

Wrote Ideas Down, Together with Skills 2863

我的书架——一些关于书的拉杂胡说(转贴)

 (作者doggyzone是一位淡泊名利的大好人,估计太愿意主动把这篇帖子转到CSDN来。我就越俎代庖了。)近日在网上看了少帖子,感到我们的计算机图书市场还真是发生了很大的变化。CSDN刚开坛的时候,看到关于图书最多的抱怨是“好书太少”,后来就变成了“烂书太多”,而后是“翻译太烂”,而最近最为热门的论调则莫过于“书价太贵”。可以说是因为无聊,或者是因为确实想搞清楚自己到底在书上画了多少钱,

透明思考@CSDN 3736

学习vc的经验之谈

      我开始学vc时就是自己一个人在啃,也没什么人指导,当时没有条件上网,资料特别少,在书店里随便买本书就学了,在学vc的过程中走了许多弯路,现在回想起来觉得做了很多无用功。看见大家在这里畅所欲言,有高手也有新入门的ddmm,我也来谈谈学vc的一点“捷径”吧,这条“捷径”纯粹走的是c/c++的路子,考虑学习其他语言。(我只会c/c++,略懂vb和java,所以对于通过其他语言来切入vc的没

Joe_wang的专栏 4064
上一篇: 字符串函数strupr
下一篇: ListCtrl控件的滚动条拖动疑难杂症
dlyhlq
博客等级 码龄19年 128粉丝 116原创
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值