2013-11-04 9 views
6

मैं दो छवियों को मिश्रित करने के लिए CISourceOverCompositing का उपयोग कर रहा हूं। यह इस कोड के साथ एक ही आकार छवियों के साथ ठीक काम करता है:सीआईफ़िल्टर: विभिन्न आकार छवियों को मिलाएं

CIFIlter *filter1 = [CIFilter filterWithName: @"CISourceOverCompositing"]; 
[filter1 setDefaults]; 
[filter1 setValue: imageForeground forKey: @"inputImage"]; 
[filter1 setValue: imageBackground forKey: @"inputBackgroundImage"]; 
CIImage *outputImage = [filter1 outputImage]; 

अब मैं अलग छवि आकार है, उदाहरण के लिए:

imageForeground: 50px x 50px

imageBackground: 500px एक्स 500px

पिछला कोड outputImage की छवि (0, 0) स्थिति पर अग्रभूमि सेट करें।

मैं छवियों को स्थिति में रखने वाली इन छवियों को कैसे मिश्रित कर सकता हूं, उदाहरण के लिए, (100, 100) स्थिति पर?

अग्रिम धन्यवाद!

उत्तर

12

यह बहुत आसान है - बस इतना की तरह इनपुट छवि को बदलने:

[filter1 setValue:[imageForeground imageByApplyingTransform:CGAffineTransformMakeTranslation(100, 100)] forKey:kCIInputImageKey] 
+0

पूरी तरह से काम करता है। धन्यवाद! –

+0

धन्यवाद भाई, मेरा दिन बचाओ .... – hmdeep

संबंधित मुद्दे