| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2005, 2006, 2010, 2011 Apple Inc. All rights reserved. | 2 * Copyright (C) 2005, 2006, 2010, 2011 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2006 Alexey Proskuryakov | 3 * Copyright (C) 2006 Alexey Proskuryakov |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
| 7 * are met: | 7 * are met: |
| 8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 } | 117 } |
| 118 | 118 |
| 119 const SimpleFontData* SimpleFontData::getCompositeFontReferenceFontData(NSFont *
key) const | 119 const SimpleFontData* SimpleFontData::getCompositeFontReferenceFontData(NSFont *
key) const |
| 120 { | 120 { |
| 121 if (key && !CFEqual(RetainPtr<CFStringRef>(AdoptCF, CTFontCopyPostScriptName
(CTFontRef(key))).get(), CFSTR("LastResort"))) { | 121 if (key && !CFEqual(RetainPtr<CFStringRef>(AdoptCF, CTFontCopyPostScriptName
(CTFontRef(key))).get(), CFSTR("LastResort"))) { |
| 122 if (!m_derivedFontData) | 122 if (!m_derivedFontData) |
| 123 m_derivedFontData = DerivedFontData::create(isCustomFont()); | 123 m_derivedFontData = DerivedFontData::create(isCustomFont()); |
| 124 if (!m_derivedFontData->compositeFontReferences) | 124 if (!m_derivedFontData->compositeFontReferences) |
| 125 m_derivedFontData->compositeFontReferences.adoptCF(CFDictionaryCreat
eMutable(kCFAllocatorDefault, 1, &kCFTypeDictionaryKeyCallBacks, NULL)); | 125 m_derivedFontData->compositeFontReferences.adoptCF(CFDictionaryCreat
eMutable(kCFAllocatorDefault, 1, &kCFTypeDictionaryKeyCallBacks, NULL)); |
| 126 else { | 126 else { |
| 127 const SimpleFontData* found = static_cast<const SimpleFontData*>(CFD
ictionaryGetValue(m_derivedFontData->compositeFontReferences.get(), static_cast<
const void *>(key))); | 127 const SimpleFontData* found = toSimpleFontData(CFDictionaryGetValue(
m_derivedFontData->compositeFontReferences.get(), static_cast<const void *>(key)
)); |
| 128 if (found) | 128 if (found) |
| 129 return found; | 129 return found; |
| 130 } | 130 } |
| 131 if (CFMutableDictionaryRef dictionary = m_derivedFontData->compositeFont
References.get()) { | 131 if (CFMutableDictionaryRef dictionary = m_derivedFontData->compositeFont
References.get()) { |
| 132 NSFont *substituteFont = [key printerFont]; | 132 NSFont *substituteFont = [key printerFont]; |
| 133 | 133 |
| 134 CTFontSymbolicTraits traits = CTFontGetSymbolicTraits(toCTFontRef(su
bstituteFont)); | 134 CTFontSymbolicTraits traits = CTFontGetSymbolicTraits(toCTFontRef(su
bstituteFont)); |
| 135 bool syntheticBold = platformData().syntheticBold() && !(traits & kC
TFontBoldTrait); | 135 bool syntheticBold = platformData().syntheticBold() && !(traits & kC
TFontBoldTrait); |
| 136 bool syntheticOblique = platformData().syntheticOblique() && !(trait
s & kCTFontItalicTrait); | 136 bool syntheticOblique = platformData().syntheticOblique() && !(trait
s & kCTFontItalicTrait); |
| 137 | 137 |
| (...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 447 RetainPtr<CGFontRef> runCGFont(AdoptCF, CTFontCopyGraphicsFont(runFont,
0)); | 447 RetainPtr<CGFontRef> runCGFont(AdoptCF, CTFontCopyGraphicsFont(runFont,
0)); |
| 448 if (!CFEqual(runCGFont.get(), cgFont.get())) | 448 if (!CFEqual(runCGFont.get(), cgFont.get())) |
| 449 return false; | 449 return false; |
| 450 } | 450 } |
| 451 | 451 |
| 452 addResult.storedValue->value = true; | 452 addResult.storedValue->value = true; |
| 453 return true; | 453 return true; |
| 454 } | 454 } |
| 455 | 455 |
| 456 } // namespace WebCore | 456 } // namespace WebCore |
| OLD | NEW |