rap page 7 - Dave's Blog

Search
My timeline on Mastodon

Scalable Vector Graphics (SVG) 1.1 (Second Edition)

2009 Aug 24, 4:57"This specification defines the features and syntax for Scalable Vector Graphics (SVG) Version 1.1, a modularized language for describing two-dimensional vector and mixed vector/raster graphics in XML."PermalinkCommentssvg graphic web xml reference w3c technical

Dive Into HTML 5 by Mark Pilgrim with illustrations from the Public Domain

2009 Aug 21, 3:26"Dive Into HTML 5 seeks to elaborate on a hand-picked Selection of features from the HTML 5 specification and other fine Standards. I shall publish Drafts periodically, as time permits." Lovely design.PermalinkCommentsvia:waxy reference programming howto design html5 typography mark-pilgrim html web development technical

Compact E-Cash

2009 Aug 14, 6:20"This paper presents efficient off-line anonymous e-cash schemes where a user can withdraw a wallet containing coins each of which she can spend unlinkably."PermalinkCommentsmoney future reference research economics cryptography technical system:filetype:pdf system:media:document

How myths are made – Bad Science

2009 Aug 12, 8:08"In a formal academic paper, every claim is referenced to another academic paper... This convention gives us an opportunity to study how ideas spread, and myths grow, because in theory you could trace who references what, and how, to see an entire belief system evolve from the original data."PermalinkCommentsscience meme research health medicine ben-goldacre network graph

Choose Your Own Adventure – Most Likely You’ll Die | FlowingData

2009 Aug 11, 5:21"Michael Niggel took a look at Journey Under the Sea, and mapped out all possible paths. It turns out that death and unfavorable endings are in fact much more likely than the rest."PermalinkCommentsvisualization via:ethan_t_hein literature fiction if interactive flowchart infographics chooseyourownadventure

The Future of Data Tags: Bokodes | Brain Pickings

2009 Aug 5, 7:57"Ten times smaller than barcodes, Bokodes’ low-cost optical design can be read from as far as 4 meters away, much farther than barcodes, by taking an out-of-focus photo with any off-the-shelf camera." Love for stuff like this to catch on, however compared to QR codes, these are much more difficult to produce than barcodes in that you can't just print them out and they require changes to the photography technique (must be out of focus) rather than just analyzing any photograph of a barcode. They seem to be solving slightly different problems.
PermalinkCommentsqrcode qr barcode camera information design bokode augmented-reality technical

How Different Groups Spend Their Day - Interactive Graphic - NYTimes.com

2009 Aug 3, 8:30"The American Time Use Survey asks thousands of American residents to recall every minute of a day." I enjoy the graph animation when switching between different groups.PermalinkCommentsvia:swannman graph visualization information graphic nytimes infographics demographics statistics

fontplore // an interactive application designed for searching and exploring font databases

2009 Jul 31, 6:09An interactive touchable table to help you browse and select fonts.PermalinkCommentsart visualization design font typography surface table touchscreen video

Anyone can write this crap (Phil Gyford’s website)

2009 Jul 31, 5:57"Is it worth the sensationalism and scaremongering? The endlessly inaccurate and dangerous science reporting? The pointless and news-free lifestyle articles? Do newspapers that prioritise stories based on celebrities and spectacle rather than importance to the world deserve to exist?"PermalinkCommentsvia:sambrook internet news journalism media

40 Free and Useful GUI Icon Sets for Web Designers | Icons

2009 Jul 28, 9:21PermalinkCommentsweb free css gui icon graphic technical

Bringing Web Fonts Closer | Kernest

2009 Jul 23, 3:23Web fonts plus appropriate style sheets for embedding.PermalinkCommentscss font typography free web design technical

very small array

2009 Jul 12, 3:16Blog of various entertaining graphs and visualizations. Lovely site design too.PermalinkCommentshumor blog art visualization graph statistics information chart design

Real photographs | Everything is Miscellaneous

2009 Jul 12, 2:56"...I asked him if he was allowed to do that, and he said the rule was that he could do anything with Photoshop that he could have done in a darkroom. I thought of him when I saw..." On press sanctioned photoshopping including links at the end.PermalinkCommentsnews photo photoshop photography david-weinberger

PowerShell Scanning Script

2009 Jun 27, 3:42

I've hooked up the printer/scanner to the Media Center PC since I leave that on all the time anyway so we can have a networked printer. I wanted to hook up the scanner in a somewhat similar fashion but I didn't want to install HP's software (other than the drivers of course). So I've written my own script for scanning in PowerShell that does the following:

  1. Scans using the Windows Image Acquisition APIs via COM
  2. Runs OCR on the image using Microsoft Office Document Imaging via COM (which may already be on your PC if you have Office installed)
  3. Converts the image to JPEG using .NET Image APIs
  4. Stores the OCR text into the EXIF comment field using .NET Image APIs (which means Windows Search can index the image by the text in the image)
  5. Moves the image to the public share

Here's the actual code from my scan.ps1 file:

param([Switch] $ShowProgress, [switch] $OpenCompletedResult)

$filePathTemplate = "C:\users\public\pictures\scanned\scan {0} {1}.{2}";
$time = get-date -uformat "%Y-%m-%d";

[void]([reflection.assembly]::loadfile( "C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll"))

$deviceManager = new-object -ComObject WIA.DeviceManager
$device = $deviceManager.DeviceInfos.Item(1).Connect();

foreach ($item in $device.Items) {
        $fileIdx = 0;
        while (test-path ($filePathTemplate -f $time,$fileIdx,"*")) {
                [void](++$fileIdx);
        }

        if ($ShowProgress) { "Scanning..." }

        $image = $item.Transfer();
        $fileName = ($filePathTemplate -f $time,$fileIdx,$image.FileExtension);
        $image.SaveFile($fileName);
        clear-variable image

        if ($ShowProgress) { "Running OCR..." }

        $modiDocument = new-object -comobject modi.document;
        $modiDocument.Create($fileName);
        $modiDocument.OCR();
        if ($modiDocument.Images.Count -gt 0) {
                $ocrText = $modiDocument.Images.Item(0).Layout.Text.ToString().Trim();
                $modiDocument.Close();
                clear-variable modiDocument

                if (!($ocrText.Equals(""))) {
                        $fileAsImage = New-Object -TypeName system.drawing.bitmap -ArgumentList $fileName
                        if (!($fileName.EndsWith(".jpg") -or $fileName.EndsWith(".jpeg"))) {
                                if ($ShowProgress) { "Converting to JPEG..." }

                                $newFileName = ($filePathTemplate -f $time,$fileIdx,"jpg");
                                $fileAsImage.Save($newFileName, [System.Drawing.Imaging.ImageFormat]::Jpeg);
                                $fileAsImage.Dispose();
                                del $fileName;

                                $fileAsImage = New-Object -TypeName system.drawing.bitmap -ArgumentList $newFileName 
                                $fileName = $newFileName
                        }

                        if ($ShowProgress) { "Saving OCR Text..." }

                        $property = $fileAsImage.PropertyItems[0];
                        $property.Id = 40092;
                        $property.Type = 1;
                        $property.Value = [system.text.encoding]::Unicode.GetBytes($ocrText);
                        $property.Len = $property.Value.Count;
                        $fileAsImage.SetPropertyItem($property);
                        $fileAsImage.Save(($fileName + ".new"));
                        $fileAsImage.Dispose();
                        del $fileName;
                        ren ($fileName + ".new") $fileName
                }
        }
        else {
                $modiDocument.Close();
                clear-variable modiDocument
        }

        if ($ShowProgress) { "Done." }

        if ($OpenCompletedResult) {
                . $fileName;
        }
        else {
                $result = dir $fileName;
                $result | add-member -membertype noteproperty -name OCRText -value $ocrText
                $result
        }
}

I ran into a few issues:

PermalinkCommentstechnical scanner ocr .net modi powershell office wia

Cory Doctorow's craphound.com - Blog Archive - Little Brother option sold to Don Murphy (Natural Born Killers, From Hell, etc)

2009 Jun 19, 3:34"Don Murphy, producer of such films as Natural Born Killers and From Hell, has bought a film option on Little Brother." You should read Little Brother. Its available via Creative Commons so you can, right now, go read the first chapterPermalinkCommentslittle-brother cory-doctorow don-murphy movie film literature book

Mostly Moved Into New House

2009 Jun 19, 8:07

New House ExteriorThe weekend before the previous, Sarah and I moved our belongings into the new house and spent a lot of time packing and unpacking, and now we're officially living there (interested Facebook friends can find my new address or just ask me). The Saturday of the previous weekend Sarah's family came over for a half house warming and half Sarah's birthday celebration which was fun and served to force us to do more unpacking and forced me to take trips to Home Depot, Bed Bath and Beyond, etc. On Sunday, Sarah and I went out to her favorite restaurant and she opened her gifts that I had to hide to keep her from opening before her birthday. Happy Birthday Sarah!

While at Home Depot I had trouble finding what I was actually looking for, but I did find everything I needed to terminate the Cat5e cables that are wired in the house. Each room has a wall plate with two RJ45 sockets, both sockets wired to Cat5e cable. One of the cables per plate was already hooked up to a standard phone service punchdown board and the other cables per plate were all hanging unterminated next to the punchdown board. So now I've terminated them all with RJ45 connectors and hooked them up to my hub, wireless router, cable modem, etc. I had the same sort of fun setting all that up as I did playing with model train sets as a child. Hopefully no therapy will be required to figure out why that is.

PermalinkCommentspersonal2 train address sarah house new-house birthday

Infrared patterns and paint to screw with tourist video/photos | Brad Ideas

2009 May 29, 9:17"Anyway, the idea is to find techniques, be they arrays of bright infrared LEDs, or paints that shine well in infrared but are not obvious in visible light, and create invisible graffiti that only shows up in tourist photos and videos."PermalinkCommentshumor graffiti ir ir-paint magic tourist photography

The Art Institute of Chicago: The Collection: Examination Techniques

2009 May 29, 9:13"Developed in the late 1960s by Dutch physicist J. R. J. van Asperen De Boer, infrared reflectography (IRR) is a technique used to look through the paint layers. ... Many paints will appear partially or completely transparent while others, such as black, will absorb the infrared radiation and appear dark."PermalinkCommentsart history science ir ir-reflectography

CoCam: Infrared Photography: Recipe for Coating Flash Bulbs with Infrared Paint

2009 May 29, 8:59Don't need to cover _flash bulbs_ with infrared paint, but the paint is to block out all but infrared light so could be useful otherwise. ViaPermalinkCommentsir photography recipe ir-paint

Infrared Goggles for $10, inexpensive IR filters, SCIENCE HOBBYIST

2009 May 29, 8:49Howto on goggles that block out everything but the small range of IR that's barely visible. "INFRARED GOGGLES FOR UNDER $10, A Human IR Vision Experiment, Sept. 14, 2002 Bill Beaty"PermalinkCommentsir infrared hack howto science photography diy hardware light
Older EntriesNewer Entries Creative Commons License Some rights reserved.