{"id":26,"date":"2007-04-11T07:46:44","date_gmt":"2007-04-11T12:46:44","guid":{"rendered":"http:\/\/www.pixelwit.com\/blog\/page-flip\/"},"modified":"2010-06-17T10:23:22","modified_gmt":"2010-06-17T15:23:22","slug":"page-flip","status":"publish","type":"page","link":"https:\/\/www.pixelwit.com\/blog\/page-flip\/","title":{"rendered":"Page Flip"},"content":{"rendered":"<p>The dynamic page flip effect as published on Pixelwit.com in May of 2002:<\/p>\n\n<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"\n\t\t\tid=\"fm_pinuppageflip_897850808\"\n\t\t\tclass=\"flashmovie\"\n\t\t\twidth=\"500\"\n\t\t\theight=\"400\">\n\t<param name=\"movie\" value=\"https:\/\/www.pixelwit.com\/blog\/wp-content\/uploads\/2007\/04\/pinuppageflip.swf\" \/>\n\t<!--[if !IE]>-->\n\t<object\ttype=\"application\/x-shockwave-flash\"\n\t\t\tdata=\"https:\/\/www.pixelwit.com\/blog\/wp-content\/uploads\/2007\/04\/pinuppageflip.swf\"\n\t\t\tname=\"fm_pinuppageflip_897850808\"\n\t\t\twidth=\"500\"\n\t\t\theight=\"400\">\n\t<!--<![endif]-->\n\t\t\n\t<!--[if !IE]>-->\n\t<\/object>\n\t<!--<![endif]-->\n<\/object>\n<p>I've made <a href=\"https:\/\/www.pixelwit.com\/blog\/tag\/swfs\/\" title=\"SWF Files by PixelWit\">lots of neat Flash stuff<\/a> through the years but the interest generated by the PageFlip code has persisted the longest.  Though the pace has slowed significantly since its heyday, I still get at least one e-mail a week asking about the PageFlip's use.  If you're curious,<!--more--> <a href=\"https:\/\/www.pixelwit.com\/blog\/wp-content\/uploads\/2007\/09\/pageflip_notypos.zip\" title=\"PageFlip Source Code\">the original dynamic page flipping source code<\/a> is available to use as you see fit, free of charge.  If you'd like to know how to add more pages or why your \"with action\" failed, I suggest you read the <a title=\"Flash Page Turn Tutorials and Source Files\" href=\"https:\/\/www.pixelwit.com\/blog\/page-flip\/page-flip-help\/\">PageFlip Tutorials<\/a>.<\/p>\n<p>Although not originally designed as such, the PageFlip file has proven to be an excellent test of one's Flash knowledge.  Some of the trickier parts are:<\/p>\n<ul>\n<li>Finding the book.<\/li>\n<li>Finding the code.<\/li>\n<li>Modifying the code.<\/li>\n<li>Modifying pages.<\/li>\n<li>Adding pages.<\/li>\n<li>Understanding the preload structure.<\/li>\n<\/ul>\n<p>I'm not sure how many people figured everything out on their own, but I can tell you that roughly <strong>a billion<\/strong> people contacted me with their questions.  I responded to as many e-mails as I could at first but that grew tiresome since most people wouldn't bother to say \"thanks\" after I took the time to answer their questions.  BUT it's important to note that so far about 30 people have gone out of their way to express their appreciation without asking for any favors in return, two have made donations via PayPal and one even went so far as to send me the prettiest looking loaf of pumpernickel bread never to be eaten.  You can blame either my particular food preferences or her particular cooking abilities, the jury is still out on that one.  Thank you KT wherever you are.  \ud83d\ude09<\/p>\n<p>The Flash page flip effect has evolved a good deal since its inception long ago.  My first attempt to imitate the turning of a book's page was in March 2002 and <a href=\"https:\/\/www.pixelwit.com\/blog\/wp-content\/uploads\/2007\/04\/lamepageflip.zip\" title=\"First Pixelwit Page Flip\">it was ugly<\/a>.  Then in early May of the same year I saw the light.  Tony Hogqvist of <a href=\"http:\/\/www.perfectfools.com\" title=\"Perfect Fools Home Page\">Perfect Fools<\/a> had combined masking, skewing and alpha gradients to simulate <a href=\"http:\/\/www.perfectfools.com\/book\/\" title=\"Perfect Fools Page Flip\">a page \"curl\" effect<\/a> so convincing many people believed the image actually curled or warped as it was flipped over.  After I learned the visual tricks pioneered by the Perfect Fools page flip, I tried improving their basic concept.<\/p>\n<p>Essentially I took what started out as a timeline based animation and modified it to accommodate a near infinite number of page quantities and sizes by leveraging the features which were only available in the then recently released FlashMX.  The new Flash drawing API was used to generate shapes and gradients which in turn were controlled via MX's new dynamic event handlers.  I also tweaked the look of the gradient and initial page angle a bit to make the curl look more natural and disposed of the the skewing aspect since it seemed overly complex and added little visually.<\/p>\n<p>My efforts paid off as the code I wrote <a href=\"http:\/\/www.actionscript.org\/resources\/articles\/242\/1\/ActionScriptorg-Open-Source-Competition-Winners-Announced\/Page1.html\" title=\"Pixelwit Contest Winner\">won a contest on ActionScript.org<\/a>.  As a result, I got a free book of my choosing and a little bit of exposure.<\/p>\n<p>I'm not sure, but I'd like to think my example may have inspired Erik Natzke to make <a href=\"http:\/\/welcome.hp.com\/country\/us\/en\/msg\/corp\/flashdreamworks.html\" title=\"Natzke Page Flip\">his improved version<\/a> of the page flip some time later.  His version used Trigonometry and inertial easing to create a more interactive and realistic dragging effect.<\/p>\n<p>Some time later, possibly mid 2004, <a href=\"http:\/\/www.iparigrafika.hu\/pageflip\/\" title=\"Iparigrafika Page Flip\">Iparigrafika<\/a> released a version which added a brand new feature allowing the user to tear away pages and they reintroduced the use of transparent pages which had originally been featured in the Perfect Fools' version of the page flip effect.<\/p>\n<p>I've made all sorts of <a title=\"PixelWit's Improved PageFlip\" href=\"https:\/\/www.pixelwit.com\/blog\/page-flip\/improved-pageflip\/\">modifications to the page flip<\/a> transition for various clients, Hard Covers, One Click Flipping, XML Table of Contents and Odd Page Shapes to name a few.  If you have an idea which could be \"The Next Big Thing\" <a href=\"https:\/\/www.pixelwit.com\/blog\/contact\/\" title=\"Contact Pixelwit\">contact me now<\/a> to learn how I can help make it happen.<\/p>\n<p>-<a href=\"https:\/\/www.pixelwit.com\/blog\/contact\/\" title=\"Contact Pixelwit\">PiXELWiT<\/a><\/p>\n<p><strong>Why I gave it away<\/strong>: <a href=\"https:\/\/www.pixelwit.com\/blog\/2007\/04\/something-about-sluggy\/\">Something About Sluggy<\/a>.<br \/>\n<strong>Technical questions<\/strong>: <a href=\"\/blog\/page-flip\/page-flip-help\/\">Page Flip Help<\/a>.<br \/>\n<strong>Improved PageFlip<\/strong>: <a title=\"PixelWit's Improved PageFlip\" href=\"https:\/\/www.pixelwit.com\/blog\/page-flip\/improved-pageflip\/\">Implements most requested features<\/a>.<\/p>\n<p><script type=\"text\/javascript\"><!--\ngoogle_ad_client = \"pub-6849630434690366\";\ngoogle_ad_width = 468;\ngoogle_ad_height = 60;\ngoogle_ad_format = \"468x60_as\";\ngoogle_ad_type = \"text\";\n\/\/2007-06-24: PageFlipInfoInlineTop\ngoogle_ad_channel = \"5620887396\";\ngoogle_color_border = \"FFFFFF\";\ngoogle_color_bg = \"FFFFFF\";\ngoogle_color_link = \"4A4E15\";\ngoogle_color_text = \"6A6F2C\";\ngoogle_color_url = \"CFCE85\";\n\/\/-->\n<\/script><br \/>\n<script type=\"text\/javascript\"\n  src=\"http:\/\/pagead2.googlesyndication.com\/pagead\/show_ads.js\">\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The dynamic page flip effect as published on Pixelwit.com in May of 2002: I&#8217;ve made lots of neat Flash stuff through the years but the interest generated by the PageFlip code has persisted the longest. Though the pace has slowed significantly since its heyday, I still get at least one e-mail a week asking about [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","meta":{"ngg_post_thumbnail":0,"footnotes":""},"class_list":["post-26","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.pixelwit.com\/blog\/wp-json\/wp\/v2\/pages\/26","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pixelwit.com\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.pixelwit.com\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.pixelwit.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pixelwit.com\/blog\/wp-json\/wp\/v2\/comments?post=26"}],"version-history":[{"count":0,"href":"https:\/\/www.pixelwit.com\/blog\/wp-json\/wp\/v2\/pages\/26\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.pixelwit.com\/blog\/wp-json\/wp\/v2\/media?parent=26"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}