<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Codec</title>
	<atom:link href="http://www.trembl.org/codec/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.trembl.org/codec</link>
	<description>A Personal Polylogic Code/Decode &#039;Zettelkasten&#039;</description>
	<lastBuildDate>Thu, 11 Feb 2010 09:17:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Zero-Padding</title>
		<link>http://www.trembl.org/codec/381/</link>
		<comments>http://www.trembl.org/codec/381/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 09:17:05 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[if]]></category>
		<category><![CDATA[NSString]]></category>
		<category><![CDATA[padding]]></category>
		<category><![CDATA[substring]]></category>
		<category><![CDATA[zero]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=381</guid>
		<description><![CDATA[The age-old problem. Files, that are stored with padded zeros 000, 001, 002, 003 &#8211; and a counter that doesn&#8217;t have this zero-padding. There are probably myriad solution to that problem, here&#8217;s my take:
Create a temporary string consisting of a minimum of 3 characters length.
NSString *tempZeros = [NSString stringWithFormat:@"00%i", i];

Get the last 3 characters, shave [...]]]></description>
			<content:encoded><![CDATA[<p>The age-old problem. Files, that are stored with padded zeros 000, 001, 002, 003 &#8211; and a counter that doesn&#8217;t have this zero-padding. There are probably myriad solution to that problem, here&#8217;s my take:</p>
<p><em>Create a temporary string consisting of a minimum of 3 characters length.</em></p>
<pre><code>NSString *tempZeros = [NSString stringWithFormat:@"00%i", i];</code>
<pre>
<p><em>Get the last 3 characters, shave off the rest.</em></p>
<pre><code>NSString *zeroPaddedIndex = [tempZeros substringFromIndex:[tempZeros length] - 3];</code>
<pre>
<p>No if's, no but's, no clauses.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/381/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Never use a beta SDK for active development</title>
		<link>http://www.trembl.org/codec/379/</link>
		<comments>http://www.trembl.org/codec/379/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 09:03:16 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[Beta]]></category>
		<category><![CDATA[Error]]></category>
		<category><![CDATA[message]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[SDK]]></category>
		<category><![CDATA[Xcode]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=379</guid>
		<description><![CDATA[As seen in iPhone SDK 3.2 beta 2 and the &#8220;A signed resource has been added, modified, or deleted.&#8221; error message.
Solution? Switch back to iPhone SDK 3.1.3 with XCode 3.2.1
Apparently several different versions of XCode (and the Developer Folder) can happily coexist. Just rename one DeveloperBeta or something like that&#8230;
]]></description>
			<content:encoded><![CDATA[<p>As seen in iPhone SDK 3.2 beta 2 and the &#8220;A signed resource has been added, modified, or deleted.&#8221; error message.</p>
<p>Solution? Switch back to iPhone SDK 3.1.3 with XCode 3.2.1</p>
<p><em>Apparently several different versions of XCode (and the Developer Folder) can happily coexist. Just rename one DeveloperBeta or something like that&#8230;</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/379/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Variable length of accuracy of float in NSString</title>
		<link>http://www.trembl.org/codec/376/</link>
		<comments>http://www.trembl.org/codec/376/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 10:47:22 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[accuarcy]]></category>
		<category><![CDATA[float]]></category>
		<category><![CDATA[NSLog]]></category>
		<category><![CDATA[NSString]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=376</guid>
		<description><![CDATA[float f = 1.23456;

NSLog(@"%.2f", f);
NSLog(@"%.0f", f);
NSLog(@"%.0f", f);
1.23
1
1.23456
]]></description>
			<content:encoded><![CDATA[<pre><code>float f = 1.23456;

NSLog(@"%.2f", f);
NSLog(@"%.0f", f);
NSLog(@"%.0f", f);</code></pre>
<p>1.23<br />
1<br />
1.23456</p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/376/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Delay method execution, part II</title>
		<link>http://www.trembl.org/codec/374/</link>
		<comments>http://www.trembl.org/codec/374/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 09:13:09 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[delay]]></category>
		<category><![CDATA[execution]]></category>
		<category><![CDATA[method]]></category>
		<category><![CDATA[NSTimer]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=374</guid>
		<description><![CDATA[[NSTimer scheduledTimerWithTimeInterval:1.0
target:self selector: @selector(methodName:)
userInfo:nil repeats:NO];	
Alternative to Part I [35], has the possibility of repetetive calls.
]]></description>
			<content:encoded><![CDATA[<pre><code>[NSTimer scheduledTimerWithTimeInterval:1.0
target:self selector: @selector(methodName:)
userInfo:nil repeats:NO];	</code></pre>
<p>Alternative to <a href="http://www.trembl.org/codec/35/">Part I [35]</a>, has the possibility of repetetive calls.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/374/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Missing constants in RubyCocoa for Snow Leopard</title>
		<link>http://www.trembl.org/codec/367/</link>
		<comments>http://www.trembl.org/codec/367/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 07:02:50 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[cocoa]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=367</guid>
		<description><![CDATA[Not sure if anyone except me will need this information again.  
Situation: A legacy RubyCocoa Application that runs fine in OSX 10.5, but refuses to compile in 10.6. RubyCocoa is working, only access to constants seems to be problematic.
So far the following workarounds:
OSX::KCGScreenSaverWindowLevel ➯➤➲ OSX::NSScreenSaverWindowLevel
Bug Report and Workaround about inproper mapped constants in Bridgesupport [...]]]></description>
			<content:encoded><![CDATA[<p>Not sure if anyone except me will need this information again.  </p>
<p>Situation: A legacy RubyCocoa Application that runs fine in OSX 10.5, but refuses to compile in 10.6. RubyCocoa is working, only access to constants seems to be problematic.</p>
<p>So far the following workarounds:</p>
<pre><code><del datetime="2010-02-02T06:57:40+00:00">OSX::KCGScreenSaverWindowLevel</del> ➯➤➲ OSX::NSScreenSaverWindowLevel</code></pre>
<p>Bug Report and Workaround about inproper mapped constants in Bridgesupport on Snow Leopard<br />
<a href="http://lists.macosforge.org/pipermail/macruby-devel/2009-October.txt">http://lists.macosforge.org/pipermail/macruby-devel/2009-October.txt</a></p>
<p>Notes<br />
<a href="http://ruby-doc.org/core/classes/Struct.html">Structs in Ruby</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/367/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Project templates for PyObjC and RubyCocoa</title>
		<link>http://www.trembl.org/codec/365/</link>
		<comments>http://www.trembl.org/codec/365/#comments</comments>
		<pubDate>Fri, 29 Jan 2010 10:17:35 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[cocoa]]></category>
		<category><![CDATA[pyhton]]></category>
		<category><![CDATA[pyobjc]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[rubycocoa]]></category>
		<category><![CDATA[temlpates]]></category>
		<category><![CDATA[Xcode]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=365</guid>
		<description><![CDATA[svn co http://svn.macosforge.org/repository/ruby/MacRuby/trunk/misc/xcode-templates/ ruby-templates
svn co http://svn.red-bean.com/pyobjc/trunk/pyobjc/pyobjc-xcode/ python templates
Info from here: http://developer.apple.com/mac/library/releasenotes/DeveloperTools/RN-Xcode/index.html
]]></description>
			<content:encoded><![CDATA[<p><code>svn co http://svn.macosforge.org/repository/ruby/MacRuby/trunk/misc/xcode-templates/ ruby-templates</p>
<p>svn co http://svn.red-bean.com/pyobjc/trunk/pyobjc/pyobjc-xcode/ python templates</code></p>
<p>Info from here: <a href="http://">http://developer.apple.com/mac/library/releasenotes/DeveloperTools/RN-Xcode/index.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/365/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Transparent Background of Custom Drawing Class</title>
		<link>http://www.trembl.org/codec/361/</link>
		<comments>http://www.trembl.org/codec/361/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 07:38:19 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[alpha]]></category>
		<category><![CDATA[background]]></category>
		<category><![CDATA[opaque]]></category>
		<category><![CDATA[transparent]]></category>
		<category><![CDATA[UIView]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=361</guid>
		<description><![CDATA[Usually common problems already have simple solution. Like that one:
Problem
You subclassed UIView, you want to do some custom drawing in drawRect, but no matter what you do or where you draw, the background of the view remains black.
- (void)drawRect:(CGRect)rect {
 // Drawing code
 CGContextRef context = UIGraphicsGetCurrentContext();
 CGContextSetRGBFillColor(context, 0.0, 0.0, 1.0, 1.0);
 CGContextFillEllipseInRect(context, rect);
}
Solution
In the [...]]]></description>
			<content:encoded><![CDATA[<p>Usually common problems already have simple solution. Like that one:</p>
<p><strong>Problem</strong><br />
You subclassed UIView, you want to do some custom drawing in drawRect, but no matter what you do or where you draw, the background of the view remains black.</p>
<pre><code>- (void)drawRect:(CGRect)rect {
 // Drawing code
 CGContextRef context = UIGraphicsGetCurrentContext();
 CGContextSetRGBFillColor(context, 0.0, 0.0, 1.0, 1.0);
 CGContextFillEllipseInRect(context, rect);
}</code></pre>
<p><strong>Solution</strong><br />
In the ViewController, which call the drawing class, add</p>
<pre><code>myDrawingClass.opaque = NO;</code></pre>
<p>- or even nicer. In the drawing class&#8217; init function:</p>
<pre><code>self.opaque = NO;</code></pre>
<p><del datetime="2010-01-25T07:38:22+00:00"><strong>And not like that</strong><br />
- adding &#8220;self.opaque = NO;&#8221; in the drawRect: function<br />
- CGContextClearRect(context, rect);<br />
- CGContextSetAlpha(context, 0.5f);</del></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/361/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Programmatically capture UIView</title>
		<link>http://www.trembl.org/codec/355/</link>
		<comments>http://www.trembl.org/codec/355/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 07:59:08 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[camera]]></category>
		<category><![CDATA[capture]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[pixel]]></category>
		<category><![CDATA[screen]]></category>
		<category><![CDATA[UIView]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=355</guid>
		<description><![CDATA[Ok, a bit late to the party. Apple officially approved the use of UIGetScreenImage().
After carefully considering the issue, Apple is now allowing applications to use the function UIGetScreenImage() to programmatically capture the current screen contents.  The function prototype is as follows:
CGImageRef UIGetScreenImage(void);

https://devforums.apple.com/message/149553
How to caputure a view, ideally the live input of the camera? Unfortunaly [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, a bit late to the party. Apple officially approved the use of UIGetScreenImage().</p>
<blockquote><p>After carefully considering the issue, Apple is now allowing applications to use the function UIGetScreenImage() to programmatically capture the current screen contents.  The function prototype is as follows:</p>
<pre><code>CGImageRef UIGetScreenImage(void);</code></pre>
</blockquote>
<p><a href="https://devforums.apple.com/message/149553">https://devforums.apple.com/message/149553</a></p>
<p><del datetime="2010-01-22T08:19:38+00:00">How to caputure a view, ideally the live input of the camera? Unfortunaly there&#8217;s no clean and clear interface for that. Only the undocumented UIGetScreenCapture() call:</del></p>
<p><a href="http://www.iphonedevsdk.com/forum/iphone-sdk-development/11219-screenshots-we-allowed-use-uigetscreenimage.html">http://www.iphonedevsdk.com/forum/iphone-sdk-development/11219-screenshots-we-allowed-use-uigetscreenimage.html</a></p>
<p><a href="http://stackoverflow.com/questions/1531815/takepicture-vs-uigetscreenimage">http://stackoverflow.com/questions/1531815/takepicture-vs-uigetscreenimage</a></p>
<p><a href="http://svn.saurik.com/repos/menes/trunk/iphonevnc/iPhoneVNC.mm">http://svn.saurik.com/repos/menes/trunk/iphonevnc/iPhoneVNC.mm<br />
</a></p>
<p><a href="http://blogs.oreilly.com/iphone/2008/10/creating-a-full-screen-camera.html<br />
">http://blogs.oreilly.com/iphone/2008/10/creating-a-full-screen-camera.html<br />
</a></p>
<p>But since UIGetScreenCapture() is an undocumented call (in 3.1), here are official ways to get the content of a view.</p>
<pre><code>UIGraphicsGetImageFromCurrentImageContext();</code></pre>
<p><a href="http://icodeblog.com/2009/07/27/1188/">http://icodeblog.com/2009/07/27/1188/</a></p>
<p><a href="http://www.elrepositorio.com/?p=31">http://www.elrepositorio.com/?p=31</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/355/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UIImage → pixelData → UIImage Rountrip</title>
		<link>http://www.trembl.org/codec/347/</link>
		<comments>http://www.trembl.org/codec/347/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 06:17:30 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[2D]]></category>
		<category><![CDATA[CGImageRef]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[NSData]]></category>
		<category><![CDATA[pixel]]></category>
		<category><![CDATA[pixel value]]></category>
		<category><![CDATA[Quartz]]></category>
		<category><![CDATA[UIImage]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=347</guid>
		<description><![CDATA[The questions is rather simple: How to manipulate single pixels of an UIImage?
The answer is rather long; but includes a joyful trip into Quartz 2D Graphic land&#8230;
// load image, convert to CGImageRef
UIImage *c = [UIImage imageNamed:@"c.png"];
CGImageRef cRef = CGImageRetain(c.CGImage);

// png alpha to mask
NSData* pixelData = (NSData*) CGDataProviderCopyData(CGImageGetDataProvider(cRef));
// image raw data

//NSData* pixelDataRep = UIImagePNGRepresentation(c);
// compressed png [...]]]></description>
			<content:encoded><![CDATA[<p>The questions is rather simple: How to manipulate single pixels of an UIImage?<br />
The answer is rather long; but includes a joyful trip into Quartz 2D Graphic land&#8230;</p>
<pre><code>// load image, convert to CGImageRef
UIImage *c = [UIImage imageNamed:@"c.png"];
CGImageRef cRef = CGImageRetain(c.CGImage);

// png alpha to mask
NSData* pixelData = (NSData*) CGDataProviderCopyData(CGImageGetDataProvider(cRef));
// image raw data

//NSData* pixelDataRep = UIImagePNGRepresentation(c);
// compressed png data

//NSLog(@"pixelData %i", [pixelData length]);
//NSLog(@"pixelDataRep %i", [pixelDataRep length]);
//NSLog(@"pixelDataRep equal to pixelData: %@", [pixelData isEqualToData:pixelDataRep] ? @"YES" : @"NO");

//UIImage* newImage = [UIImage imageWithData:pixelData];
//[newImage drawInRect:CGRectMake(10, 340, 65, 65)];

//NSLog(@"pixelData %@", pixelData);

unsigned char* pixelBytes = (unsigned char *)[pixelData bytes];
// return pointer to data

// step through char data
for(int i = 0; i < [pixelData length]; i += 4) {
	// change accordingly
	pixelBytes[i] = pixelBytes[i];
	pixelBytes[i+1] = pixelBytes[i+1];
	pixelBytes[i+2] = pixelBytes[i+2];
	pixelBytes[i+3] = 255;
}
//1ms in Simulator , 5ms on iPhone 3GS , 65x65 pixel

// copy bytes in new NSData
NSData* newPixelData = [NSData dataWithBytes:pixelBytes length:[pixelData length]];
//NSLog(@"newPixelData %@", newPixelData);
//NSLog(@"newPixelData: %@", newPixelData ? @"ok" : @"nil");
//NSLog(@"newPixelData equal to pixelData: %@", [pixelData isEqualToData:newPixelData] ? @"YES" : @"NO");

// cast NSData as CFDataRef
CFDataRef imgData = (CFDataRef)pixelData;

//NSLog(@"CFDataGetLength %i", CFDataGetLength(imgData) );

	// Make a data provider from CFData
	CGDataProviderRef imgDataProvider = CGDataProviderCreateWithCFData(imgData);

	// testing... create data provider from file.... works
	//NSString* imageFileName = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"c.png"];
	//CGDataProviderRef imgDataProvider = CGDataProviderCreateWithFilename([imageFileName UTF8String]);

// does not work like that
// new image needs to get PNG properties
//CGImageRef throughCGImage = CGImageCreateWithPNGDataProvider(imgDataProvider, NULL, true, kCGRenderingIntentDefault);

// get PNG properties from cRef
size_t width = CGImageGetWidth(cRef);
size_t height = CGImageGetHeight(cRef);
size_t bitsPerComponent = CGImageGetBitsPerComponent(cRef);
size_t bitsPerPixel = CGImageGetBitsPerPixel(cRef);
size_t bytesPerRow = CGImageGetBytesPerRow(cRef);
CGColorSpaceRef colorSpace = CGImageGetColorSpace(cRef);
CGBitmapInfo info = CGImageGetBitmapInfo(cRef);
CGFloat *decode = NULL;
BOOL shouldInteroplate = NO;
CGColorRenderingIntent intent = CGImageGetRenderingIntent(cRef);

// cRef PNG properties + imgDataProvider's data
CGImageRef throughCGImage = CGImageCreate(width, height, bitsPerComponent, bitsPerPixel, bytesPerRow, colorSpace, info, imgDataProvider, decode, shouldInteroplate, intent);
CGDataProviderRelease(imgDataProvider);

//NSLog(@"c %i, throughCGImage: %i", CGImageGetHeight(cRef), CGImageGetHeight(throughCGImage) );
CGImageRelease(throughCGImage);

// make UIImage with CGImage
UIImage* newImage = [UIImage imageWithCGImage:throughCGImage];
//NSLog(@"newImage: %@", newImage);

// draw UIImage
[newImage drawInRect:CGRectMake(10, 340, 65, 65)];

</code></pre>
<p>References:<br />
- <a href="http://iphoneincubator.com/blog/tag/cgimageref">http://iphoneincubator.com/blog/tag/cgimageref</a><br />
- <a href="http://www.nixwire.com/getting-uiimage-to-work-with-nscoding-encodewithcoder/">http://www.nixwire.com/getting-uiimage-to-work-with-nscoding-encodewithcoder/</a><br />
- <a href="http://developer.apple.com/mac/library/qa/qa2007/qa1509.html">http://developer.apple.com/mac/library/qa/qa2007/qa1509.html</a><br />
- <a href="http://stackoverflow.com/questions/1282830/uiimagepickercontroller-uiimage-memory-and-more">http://stackoverflow.com/questions/1282830/uiimagepickercontroller-uiimage-memory-and-more</a><br />
<strong>- <a href="http://lists.apple.com/archives/Quartz-dev/2008//Aug/msg00073.html">http://lists.apple.com/archives/Quartz-dev/2008//Aug/msg00073.html</a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/347/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Accessing RGBA Pixel Data</title>
		<link>http://www.trembl.org/codec/338/</link>
		<comments>http://www.trembl.org/codec/338/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 07:20:41 +0000</pubDate>
		<dc:creator>Georg Tremmel</dc:creator>
				<category><![CDATA[Raw]]></category>
		<category><![CDATA[alpha]]></category>
		<category><![CDATA[Mask]]></category>
		<category><![CDATA[NSData]]></category>
		<category><![CDATA[pixel value]]></category>
		<category><![CDATA[RGBA]]></category>
		<category><![CDATA[UIImage]]></category>

		<guid isPermaLink="false">http://www.trembl.org/codec/?p=338</guid>
		<description><![CDATA[
NSData* pixelData = (NSData*)
	CGDataProviderCopyData(CGImageGetDataProvider(c.CGImage));
unsigned char* pixelBytes = (unsigned char *)[pixelData bytes];
for(int i = 0; i < [pixelData length]; i += 4) {
		NSLog(@"pixelBytes[i] R:%i G:%i B:%i A:%i ",
		(int)pixelBytes[i],
		(int)pixelBytes[i+1],
		(int)pixelBytes[i+2],
		(int)pixelBytes[i+3]);
		/*
		pixelBytes[i] = pixelBytes[i+3];
		pixelBytes[i+1] = pixelBytes[i+3];
		pixelBytes[i+2] = pixelBytes[i+3];
		pixelBytes[i+3] = 0;
		 */
    }
	NSData* newPixelData = [NSData dataWithBytes:pixelBytes length:[pixelData length]];
	UIImage* newImage = [UIImage imageWithData:newPixelData];
]]></description>
			<content:encoded><![CDATA[<pre><code>
NSData* pixelData = (NSData*)
	CGDataProviderCopyData(CGImageGetDataProvider(c.CGImage));
unsigned char* pixelBytes = (unsigned char *)[pixelData bytes];
for(int i = 0; i < [pixelData length]; i += 4) {
		NSLog(@"pixelBytes[i] R:%i G:%i B:%i A:%i ",
		(int)pixelBytes[i],
		(int)pixelBytes[i+1],
		(int)pixelBytes[i+2],
		(int)pixelBytes[i+3]);
		/*
		pixelBytes[i] = pixelBytes[i+3];
		pixelBytes[i+1] = pixelBytes[i+3];
		pixelBytes[i+2] = pixelBytes[i+3];
		pixelBytes[i+3] = 0;
		 */
    }
	NSData* newPixelData = [NSData dataWithBytes:pixelBytes length:[pixelData length]];
	UIImage* newImage = [UIImage imageWithData:newPixelData];</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://www.trembl.org/codec/338/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
