183 lines
10 KiB
HTML
183 lines
10 KiB
HTML
<!DOCTYPE html>
|
||
<html prefix="og: http://ogp.me/ns# article: http://ogp.me/ns/article# " lang="en">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||
<title>BINS Photo Album | duckland.org news</title>
|
||
<link href="../assets/css/all-nocdn.css" rel="stylesheet" type="text/css">
|
||
<link rel="alternate" type="application/rss+xml" title="RSS" href="../rss.xml">
|
||
<link rel="canonical" href="http://www.duckland.org/posts/200705bins-photo-album.html">
|
||
<!--[if lt IE 9]><script src="../assets/js/html5.js"></script><![endif]--><meta name="author" content="Don Harper">
|
||
<link rel="prev" href="200703strayed-from-the-path.html" title="Strayed from the path" type="text/html">
|
||
<link rel="next" href="200705ikog-the-simple-todo-list.html" title="iKog - the simple todo list" type="text/html">
|
||
<meta property="og:site_name" content="duckland.org news">
|
||
<meta property="og:title" content="BINS Photo Album">
|
||
<meta property="og:url" content="http://www.duckland.org/posts/200705bins-photo-album.html">
|
||
<meta property="og:description" content="BINS Photo Album
|
||
|
||
The BINS Photo Album is a package to generate static web pages from the command line. Why would you want to do this? Well, most of the dynamic web photo albums require that the serve">
|
||
<meta property="og:type" content="article">
|
||
<meta property="article:published_time" content="2007-05-21T18:05:00-05:00">
|
||
<meta property="article:tag" content="cli">
|
||
<meta property="article:tag" content="photo">
|
||
<meta property="article:tag" content="software">
|
||
</head>
|
||
<body>
|
||
<a href="#content" class="sr-only sr-only-focusable">Skip to main content</a>
|
||
|
||
<!-- Menubar -->
|
||
|
||
<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation"><div class="container">
|
||
<!-- This keeps the margins nice -->
|
||
<div class="navbar-header">
|
||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse">
|
||
<span class="sr-only">Toggle navigation</span>
|
||
<span class="icon-bar"></span>
|
||
<span class="icon-bar"></span>
|
||
<span class="icon-bar"></span>
|
||
</button>
|
||
<a class="navbar-brand" href="http://www.duckland.org/">
|
||
|
||
<span id="blog-title">duckland.org news</span>
|
||
</a>
|
||
</div>
|
||
<!-- /.navbar-header -->
|
||
<div class="collapse navbar-collapse navbar-ex1-collapse">
|
||
<ul class="nav navbar-nav">
|
||
<li>
|
||
<a href="../index.html">Home</a>
|
||
</li>
|
||
<li>
|
||
<a href="../stories/about.html">About me</a>
|
||
</li>
|
||
<li class="dropdown">
|
||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">My Sites<b class="caret"></b></a>
|
||
<ul class="dropdown-menu">
|
||
<li>
|
||
<a href="http://www.donaldharper.com">My Photo Blog</a>
|
||
</li>
|
||
<li>
|
||
<a href="http://p365.donaldharper.com">My Attempt at a Project 365</a>
|
||
</li>
|
||
<li>
|
||
<a href="http://www.duckland.org">My Personal and Tech Blog</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li class="dropdown">
|
||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Social Sites<b class="caret"></b></a>
|
||
<ul class="dropdown-menu">
|
||
<li>
|
||
<a href="https://twitter.com/duckunix">My Twitter</a>
|
||
</li>
|
||
<li>
|
||
<a href="https://plus.google.com/+DonHarper/">My Google+</a>
|
||
</li>
|
||
<li>
|
||
<a href="http://www.linkedin.com/in/donaldharper/">My LinkedIN</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li>
|
||
<a href="../archive.html">Archive</a>
|
||
</li>
|
||
<li>
|
||
<a href="../categories/index.html">Tags</a>
|
||
</li>
|
||
<li>
|
||
<a href="../rss.xml">RSS</a>
|
||
|
||
|
||
</li>
|
||
</ul>
|
||
<ul class="nav navbar-nav navbar-right"></ul>
|
||
</div>
|
||
<!-- /.navbar-collapse -->
|
||
</div>
|
||
<!-- /.container -->
|
||
</nav><!-- End of Menubar --><div class="container" id="content">
|
||
<div class="body-content">
|
||
<!--Body content-->
|
||
<div class="row">
|
||
|
||
|
||
<article class="post-text h-entry hentry postpage" itemscope="itemscope" itemtype="http://schema.org/Article"><header><h1 class="p-name entry-title" itemprop="headline name"><a href="#" class="u-url">BINS Photo Album</a></h1>
|
||
|
||
<div class="metadata">
|
||
<p class="byline author vcard"><span class="byline-name fn">Don Harper</span></p>
|
||
<p class="dateline"><a href="#" rel="bookmark"><time class="published dt-published" datetime="2007-05-21T18:05:00-05:00" itemprop="datePublished" title="2007-05-21">2007-05-21</time></a></p>
|
||
|
||
|
||
</div>
|
||
|
||
|
||
</header><div class="e-content entry-content" itemprop="articleBody text">
|
||
<h1>BINS Photo Album</h1>
|
||
|
||
<p>The <a href="http://bins.sautret.org/">BINS Photo Album</a> is a package to generate static web pages from the command line. Why would you want to do this? Well, most of the dynamic web photo albums require that the server do all the work when the client requests the images, thus either slowing it down, or requiring a very beefy server. Also, you introduce the chance for a script-kiddie from hacking your site. Not good.</p>
|
||
|
||
<p>Enter BINS. Some of its features include [<a href="http://bins.sautret.org/intro.html">from the web page</a>]:</p>
|
||
|
||
<ul>
|
||
<li>generated album is <strong>static</strong> : it’s just plain HTML/CSS/Javascript files (Javascript is not mandatory to view the album), no need of any dynamic language (php, asp, etc.) nor database on server side. Album can be burned on CD or DVD.</li>
|
||
<li>album can contains other albums (<strong>sub albums</strong>): the album can have a tree structure ;</li>
|
||
<li>generation of a <strong>thumbnail</strong> and of <strong>scaled images</strong> for each picture ;</li>
|
||
<li>generated album appearance is <strong>fully customizable</strong> by using <strong>HTML templates</strong> (5 different templates sets are currently provided) and <strong>configuration parameters</strong>: colors, number and size of thumbnails per page, number and size of scaled pictures (in pixels or percentage of the original image for the size), fields to display, etc. Those parameters can be <strong>set globally</strong> (system wide or per user), <strong>per album</strong> or sub album or <strong>per picture</strong> (for example, you can change the colors of one sub album or one just one picture page in an album by editing its description file) ;</li>
|
||
<li>several <strong>description fields</strong> (date, location, etc…) can be associated with the pictures (in text or HTML format). You can easily add or customize these fields ;</li>
|
||
<li>description fields can be set or modified via a <strong>command line interface</strong> or a <strong>GTK+/GNOME-based GUI</strong> ;</li>
|
||
<li>A <strong>search engine</strong> is included in the album : you can find some pictures by searching keywords in their description fields.</li>
|
||
<li>Album can be generated from pictures managed by <a href="http://www.nother.net/zoph/">Zoph</a>.</li>
|
||
<li>
|
||
<strong>speed up</strong> album browsing by performing a clean up of HTML code to reduce its size and by <strong>pre-loading</strong> thumbnails in browser cache using <em>JavaScript</em> code ;</li>
|
||
<li>
|
||
<p>Exif information and <strong>Digital camera support</strong> :</p>
|
||
|
||
<ul>
|
||
<li>use the EXIF data structure found on some image files (usually, those produced by digital cameras) to fill automatically some fields (date and time for example).</li>
|
||
<li>BINS use the Orientation EXIF tag (which is normally set when you rotate a image on you DigiCam) to <strong>rotate the picture to correct orientation</strong>.</li>
|
||
<li>For each image, a page provides all information available on the picture and the <strong>DigiCam settings</strong> when the photo was taken.</li>
|
||
<li>Additional information are provided for <strong>Canon DigiCams</strong>.</li>
|
||
<li>Tooltips provide information about the meaning of some of the fields.</li>
|
||
<li>All EXIF information is saved in the XML description file, preventing they disappear when the image is modified ;</li>
|
||
</ul>
|
||
</li>
|
||
<li>
|
||
<strong>internationalization</strong> (generation of album in different languages) using gettext. Current languages supported are Catalan, Dutch, English, Esperanto, Finish, French, German, Hungarian, Italian, Japanese, Polish, Russian, Spanish and Traditional Chinese ;</li>
|
||
<li>
|
||
<strong>customizable charset encoding</strong> for HTML generation, including <strong>UTF-8 (Unicode)</strong> support by default. Generation of the Apache <code>.htaccess</code> file for correct encoding charset in HTTP headers ;</li>
|
||
<li>use of <strong>XML files</strong> to save user description of pictures and albums/subalbums and Exif data from image file ;</li>
|
||
<li>handle correctly file and directory names with spaces or other odd characters (excepted ‘/’), and create <strong>valid escaped URLs</strong> ;</li>
|
||
<li>generate <strong>valid HTML/XHTML</strong> code. The level of HTML depends of the style used. Some of the styles are valid, table free XHTML.</li>
|
||
</ul>
|
||
<p>The web site has some great <a href="http://bins.sautret.org/examples.html">example.</a> Go check them out.</p>
|
||
</div>
|
||
<aside class="postpromonav"><nav><ul itemprop="keywords" class="tags">
|
||
<li><a class="tag p-category" href="../categories/cli.html" rel="tag">cli</a></li>
|
||
<li><a class="tag p-category" href="../categories/photo.html" rel="tag">photo</a></li>
|
||
<li><a class="tag p-category" href="../categories/software.html" rel="tag">software</a></li>
|
||
</ul>
|
||
<ul class="pager">
|
||
<li class="previous">
|
||
<a href="200703strayed-from-the-path.html" rel="prev" title="Strayed from the path">Previous post</a>
|
||
</li>
|
||
<li class="next">
|
||
<a href="200705ikog-the-simple-todo-list.html" rel="next" title="iKog - the simple todo list">Next post</a>
|
||
</li>
|
||
</ul></nav></aside></article>
|
||
</div>
|
||
<!--End of body content-->
|
||
|
||
<footer>
|
||
Contents © 2015 <a href="mailto:duck@duckland.org">Don Harper</a> - Powered by <a href="http://getnikola.com" rel="nofollow">Nikola</a>
|
||
|
||
</footer>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<script src="../assets/js/all-nocdn.js"></script><script>jQuery("a.image-reference").colorbox({rel:"gal",maxWidth:"100%",maxHeight:"100%",scalePhotos:true});</script><!-- fancy dates --><script>
|
||
moment.locale("");
|
||
fancydates(1, "YYYY-MM-DD");
|
||
</script><!-- end fancy dates -->
|
||
</body>
|
||
</html>
|