دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش:
نویسندگان: David Gelphman. Bunny Laden
سری: The Morgan Kaufmann Series in Computer Graphics
ISBN (شابک) : 9780123694737
ناشر: Morgan Kaufmann
سال نشر: 2006
تعداد صفحات: 670
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 14 مگابایت
در صورت تبدیل فایل کتاب Programming with Quartz: 2D and PDF Graphics in Mac OS X به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب برنامه نویسی با کوارتز: 2D و PDF Graphics در Mac OS X نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
\"من قویاً برنامه نویسان غیر مکینتاش را تشویق می کنم که این کتاب را بگیرند و پیدا کنند برای خودشان چه پلتفرم توسعه واقعا عالی در مکینتاش داریم. برنامه نویسان و مدیران نرم افزار در فروشگاه های ویندوز، لینوکس و یونیکس باید به طور جدی Macintosh را به عنوان افزودنی (یا جایگزینی برای) پلتفرم های پایدار فعلی خود در نظر بگیرند. استودیوهای فیلم، خانههای انیمیشن و امکانات جلوههای ویژه بهتر است در نظر داشته باشند که با مکینتاش، یک پلتفرم واحد میتواند هر آنچه را که نیاز دارند فراهم کند...\" از پیشگفتار فیلیپ جی اشنایدر، آر.
"I strongly encourage
non-Macintosh programmers to pick up this book and find
out for themselves what a truly great development
platform we have in the Macintosh. Programmers and
software managers at Windows, Linux, and Unix shops
should seriously consider the Macintosh as an addition
to (or replacement for!) their current stable of
platforms. In particular, movie studios, animation
houses, and special-effects facilities would do well to
consider that with Macintosh, a single platform can
provide everything they need..."from the foreword by
Philip J. Schneider, R&D Engineer, Industrial Light +
Magic
"Finally, the book I've wanted for years is here! As a
graphics programmer, I appreciate the clear
explanations of how Quartz has packaged the state of
the art for mere mortals. As a Cocoa programmer, I
appreciate the clear explanation of which facilities of
Quartz Cocoa is already leveraging. This will become a
well-thumbed resource for all graphics programmers on
Mac OS X, whether or not they're using Cocoa, Carbon,
or porting code from another platform."Dr. Michael B.
Johnson, Pixar Animation Studios
"I've been using Quartz since the first release of Mac
OS X and this book covers it all! Great advice, good
sample codeit's the book to have if you want to learn
everything about Quartz."Stephane Marcouiller, SDE,
Microsoft Corporation
"Not only do the authors of Programming with
Quartz have a superb understanding of their subject
matter, but they have conveyed their knowledge in a
clear, concise, and readable manner. Programming
with Quartz has saved me quite a bit of time on my
first major Quartz project, and its more general
lessons on graphics programming techniques and concepts
will prove valuable when using any modern graphics
API."Josh Aas, Software Engineer, Mozilla
Corporation
"Even after implementing several features using Quartz,
I still learned things from this book that I did not
know. For example, the chapter on handling PDF images
is very thorough in its descriptions and the issues it
raises. I wish I had this chapter when I implemented
this feature. The book is very well written and covers
many complex topics in 2D graphics clearly and at a
level appropriate for all programmers. Programming
with Quartz continues Apple's tradition of
producing excellent documentation for its
developers."Ron Ullmann, Macintosh Business Unit,
Microsoft Corporation
0123694736......Page 1
Contents......Page 8
Foreword......Page 16
Our Objective......Page 20
Outline......Page 21
Conventions and Assumptions......Page 23
Source Code......Page 24
Header Files......Page 25
Quartz Technologies......Page 26
See Also......Page 27
Acknowledgments......Page 29
A Bit of History......Page 30
Quartz 2D Overview......Page 37
What Software Can Use Quartz 2D?......Page 39
See Also 1......Page 41
Quartz Graphics Contexts......Page 44
Filling a Rectangle......Page 45
Stroking a Rectangle......Page 47
The Order of Fill and Stroke Operations......Page 49
Transforming the Coordinate System......Page 52
Painting with Alpha......Page 59
Making Dashed Lines......Page 61
Clipping a Drawing......Page 65
Drawing PDF Content......Page 67
More About Graphics Contexts......Page 70
Summary 2......Page 71
See Also 2......Page 72
3 Using Quartz 2D in Cocoa......Page 74
Creating a Cocoa Xcode Project in Tiger......Page 75
Creating a View in Interface Builder......Page 78
Connecting the Interface to the Code......Page 82
Obtaining a Graphics Context in Cocoa......Page 84
Writing the Drawing Code......Page 85
Examining the Drawing Output......Page 87
Cocoa Framework Drawing and Quartz......Page 88
See Also 3......Page 91
4 Using Quartz 2D in Carbon......Page 94
Creating a Carbon Xcode Project......Page 95
Setting Up a Carbon Window......Page 97
Creating an Event Handler......Page 102
Examining the Drawing Output......Page 105
Using QDBeginCGContext......Page 108
Summary 4......Page 110
See Also 4......Page 111
User Space and Device Space......Page 112
Coordinate Transformations......Page 115
The Current Transformation Matrix......Page 116
The Mathematics of Affine Transforms......Page 117
Saving and Restoring a Coordinate System......Page 120
Affine Transform Convenience Functions......Page 123
Creating a Skewed Coordinate System......Page 127
Summary 5......Page 129
See Also 5......Page 130
6 Drawing with Paths......Page 132
Properties of Paths......Page 133
Path Construction Primitives......Page 134
Path Construction Convenience Functions......Page 140
Stroking Paths......Page 148
Filling Paths......Page 155
Clipping with Paths......Page 158
CGPath Objects (Jaguar)......Page 160
Anti-aliasing......Page 163
Path Utility Functions......Page 166
See Also 6......Page 173
7 Color, Alpha Transparency, and the Quartz Graphics State......Page 176
Color and Color Spaces......Page 177
Alpha Transparency......Page 195
Graphics State Parameters......Page 202
Summary 7......Page 210
See Also 7......Page 211
8 Data Providers and Data Consumers......Page 214
Data Providers......Page 215
Data Consumers......Page 227
See Also 8......Page 231
9 Drawing Images......Page 232
Creating CGImage Objects......Page 233
Best Practices for Working with Images......Page 270
Image Utility Functions......Page 273
Writing Image Data Using CGImageDestination (Tiger)......Page 284
Exporting to JPEG Using a QuickTime Exporter......Page 287
Summary 9......Page 288
See Also 9......Page 289
10 Image Masking......Page 292
Creating an Image Mask......Page 293
Masking an Image (Tiger)......Page 302
Using Color as a Mask (Tiger)......Page 308
Clipping to a Mask (Tiger)......Page 311
See Also 10......Page 316
11 Text......Page 318
Text Drawing Parameters......Page 319
Drawing Text Using Quartz......Page 325
Drawing Text Using Cocoa......Page 335
Drawing Text Using Carbon......Page 353
Drawing Text in a Flipped Coordinate System......Page 367
See Also 11......Page 370
12 Creating Bits......Page 374
Bitmap Graphics Context......Page 375
CGLayers (Tiger)......Page 400
Caching Drawing Offscreen......Page 408
Replacing CopyBits......Page 420
See Also 12......Page 422
13 Opening and Drawing PDF Documents......Page 426
PDF Document Properties......Page 427
Opening a PDF Document......Page 429
Using PDF as a Graphical Interchange......Page 430
Drawing PDF Pages......Page 435
Handling Protected PDF Documents (Jaguar)......Page 453
PDF Document Utility Functions......Page 458
See Also 13......Page 460
Creating New PDF Documents......Page 464
Copying PDF Content to a Pasteboard......Page 472
Adding Content to Existing PDF Documents......Page 476
Adding Links to PDF Documents (Tiger)......Page 484
Creating Encrypted PDF Output (Tiger)......Page 491
PDF Document Generation Issues......Page 495
Examining PDF Document Content (Panther, Tiger)......Page 496
See Also 14......Page 507
Drawing with Patterns......Page 510
Drawing with Shadows (Panther)......Page 541
Drawing with Transparency Layers (Panther)......Page 551
Drawing with Shadings (Jaguar)......Page 560
Summary 15......Page 591
See Also 15......Page 592
16 Supporting PostScript and EPS Data......Page 594
Overview of the Conversion Process......Page 595
Quartz Conversion Functions and Callbacks (Panther)......Page 596
Creating a PDF Data File from PostScript Data......Page 598
Using Converted PostScript Data in Your Application......Page 604
PSConverter Advanced Issues......Page 609
Printing Source EPS Data......Page 611
Guidelines for Supporting EPS Data in Your Application......Page 618
Summary 16......Page 619
See Also 16......Page 620
Optimizing Performance......Page 622
Debugging Your Drawing......Page 642
Summary 17......Page 655
See Also 17......Page 656
18 Creating Quartz Tools and Python Scripts......Page 660
Python Scripting with Quartz (Panther)......Page 661
Using Quartz in UNIX Tools......Page 666
The PDF Workflow in Printing (Jaguar)......Page 668
See Also 18......Page 675
Index......Page 676