topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Friday April 19, 2024, 12:04 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - nharding [ switch to compact view ]

Pages: [1] 2next
1
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: May 24, 2011, 12:54 AM »
My development system is Windows XP. I will see if I can find the problem on Windows 7.

Neil

2
Mechanical turk uses humans, and is based on the original chess playing robot. It divides tasks and gets people to complete them, who get paid from $0.01 per task. Some tasks can be pretty easy for a person (5 Google Street View images may be displayed, and you are asked to say which of them shows the target address best) which would be almost impossible for a computer.

Neil

3
What would be useful would be to autocorrect shifted characters where one hand or the other is shifted to left or right, I've done that too many times to count. Although that would probably be better as a different program.

Neil

4
Official Announcements / Re: January 2011 Giveaway - Winners Posted
« on: February 04, 2011, 10:29 AM »
Yay, I won the Sagelight Image editor and what looks like a great icon editor as an unexpected bonus too ;) I've been working hard on DCDisplay, and have been writing scrapers to grab lots of data to help populate a comic database. I've got so many features planned, I will still be working on it by the time there is a NANY 2012 (The Apocalypse Edition) :)

Neil

5
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: February 01, 2011, 12:19 PM »
For those of you wondering where the new version is, I decided to include as much data as possible so I wrote a scraper for Comic Vine to get the details of all the characters and I am using GCD to get lists of all publishers, titles, issues and stories and I'm writing extractor to convert the format. Since the data is not needed if you don't want to use the database (and is also over 100MB in size), I will put that data on rapidshare as an optional download.

Neil

6
N.A.N.Y. 2011 / Re: NANY MUGs
« on: January 28, 2011, 12:05 PM »
How do you actually select the logo for the Mug? I searched for Nany, Nany2011, DonationCoder and nothing is showing.

Neil

7
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 24, 2011, 09:13 AM »
Ok, I'm about ready to release a new version, so I'll put everything in a try / catch block so that it will give more detailed description of the problem.

Neil

8
N.A.N.Y. 2011 / Re: NANY 2011: Techniques, Tributes and Tribulations
« on: January 22, 2011, 05:08 PM »
DCDisplay
  • Why were the NANY applications coded? (I mean why decide to code this particular app)
I like CDisplay, it is easy to use but it has not been updated for a few years. I suggested a few improvements years ago to the author, but they were never implemented. I decided to write a replacement, that would add the things I wanted plus a database and some other features that are still in the pipeline.
  • What IDE did you use, if any?
Visual Studio Express.
  • What language(s) is the application written in?
C#
  • Does it rely on any 3rd party libraries / code / graphics?
Yes, I am using a few 3rd party libraries, Nunrar to extract files from rar files, ZipStorer to extract files from zip files, 7ZipSharp to handle a problem with Nunrar on certain archives. Speech Balloon code, and a BTree database implementation.
  • Were any clever design principles used?
No, I wanted to learn C# so I wanted a reasonably complex project to get used to the language.
  • Or any really hairy algorithms that you'd like to boast about?
The file sort took a few months to get working, since it does English language sorting. So A Tale of Two Cities sorts as Tale,2,Cities. It also extracts dates in a variety of formats, so Mar 2001 and 2001-03 are the same, when comparing it works on word by word basis, but some can be ignored. So Computer & Video Games (2001-11) 12.cbr and C&VG 13.cbr would sort correctly (it has abbreviations expansion before it generates the tokens for the name sort).
  • What was the trickiest part?
Handling all the possible naming of files I came across. Since I can't rely on names being a standard format it makes extracting the name and issue number awkward especially with a title like Babylon 5, I added a list of numeric titles that it uses to get the actual issue number.
  • Would you like to make a mention of any other DC members who helped out?
Mouser for some comments and a small donation :)

Neil

9
I've been using my DCDisplay database which is doing 1 image a second (on average, since it has to extract them from archive), and that has been running for 24 hours. I think you should probably decode the images on 1 thread, and do the checksum on a second thread so you would only ever have 1 image being decoded at once.

I found a problem with Texture2D.FromFile (it failed with CYMK format jpg files) so when that fails I use the code below

if (imageCache == null)
{
  memory.Seek(0, SeekOrigin.Begin);   //Probably safest to do this
  using (System.Drawing.Image image = SD.Bitmap.FromStream(memory))
  using (MemoryStream bitmapStream = new MemoryStream())
  {
     image.Save(bitmapStream, System.Drawing.Imaging.ImageFormat.Bmp);
     bitmapStream.Seek(0, SeekOrigin.Begin);
     imageCache = Texture2D.FromFile(context, bitmapStream);
     bitmapStream.Close();
  }
}                           

But for your case you can just use the bitmap stream to calculate the checksum (BMP is a really simple format, and it means all the exif data has been stripped)

Neil Harding

10
Mini-Reviews by Members / Re: Image viewer speed benchmark
« on: January 19, 2011, 08:00 PM »
Have you tried DCDisplay  (it's designed as a comic viewer but it can view all the files in a directory). It can view up to 60 fps (hold down and after 1/2 second it goes into turbo mode :))

Neil

11
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 18, 2011, 07:36 PM »
I've extended the database features, it now generates 3 sets of files rather than just by title (it generates by title, date, & path) and then generates index files that refer to each of those. I've also improved the Browser, so it has BACK, PREV, NEXT, buttons.

02-Database.jpg

Neil

12
Developer's Corner / Re: Executing a file from a link
« on: January 16, 2011, 11:00 AM »
I know there are problems, which is why I was thinking of server where you could mark programs as safe for remote execution (there are Safe for Scripting activeX objects for example). I just wanted to be able to add an application as safe for scripting. That is why the syntax would be something like "DCDisplay cmd line"  which would search internal list for DCDisplay and call that executable.

That is why I've gone for an internal implementation, and wrote I intercept links, if the link is .html it loads it it and displays otherwise it loads the file and displays it in the main window.

Neil

13
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 15, 2011, 01:11 AM »
Ok, should have a new version this weekend. I have the database present (it takes a while, but you can quit and carry on again another time) which creates a html summary which you can browse. It checks for each image to find any corrupted ones, reports any embedded zip / rar files inside an archive, reports number of pages found (it assumes 2 pages if width > height), works out a checksum so it can find duplicates (it's image based checksum, so even if files are renamed and archived in a different format it can still identify it), and also gives the average resolution (some older scans were too low rez and probably need to be rescanned).

I've got a new installer. I'm using native c# code for uncompressing the zip and rar files so I've made it threaded to make the UI more responsive. I've got cross process communication (so if you start a 2nd instance it will pass the command line to the first instance and then exit). Pressing F1 will now load the Readme.cbr file and backspace will load the previous file you were reading.

Neil

14
N.A.N.Y. 2011 / Re: NANY 2011 Release: Duplicate Photo Finder
« on: January 14, 2011, 09:47 PM »
When you do the check hashes for identical files, you can speed that up significantly by only calculation the hashes for duplicate file sizes. So if you have 8 files
a.jpg [102456 bytes] b.jpg [232583 bytes] c.jpg [104356 bytes] d.jpg [232483 bytes] e.jpg [102456 bytes] f.jpg [232583 bytes] g.jpg [38914 bytes] h.jpg [89583 bytes] then you only need to calculate hashes for the files that are 102456 or 232583 bytes long. This is what I do as part of my check all archives for duplicates in DCDisplay (only there, since I want to go via image data, I check if hash maps then I check number of pages, and average resolution)

Neil Harding

15
Developer's Corner / Re: Executing a file from a link
« on: January 09, 2011, 08:37 AM »
I've decided to embed a web browser into the application, so it can be used to control the application (selecting a link will open that archive), but I still think it would be useful to be able to start an application from within a html page.

Neil Harding

16
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 08, 2011, 01:08 PM »
It should run portably, it uses xml file in the application directory to store settings rather than registry entries.

Neil

17
Developer's Corner / Re: Executing a file from a link
« on: January 08, 2011, 01:07 PM »
Actually thinking about it, I guess it would be possible using a java app to launch the real app, but the java security model would still cause problems.

Neil Harding

18
Developer's Corner / Executing a file from a link
« on: January 08, 2011, 09:36 AM »
Hi,

I am writing DCDisplay, and one of the things I've added is the ability to scan your hard drive to produce a report. I have a html template that outputs the file, size, thumbnail image, any problems found, any duplicate copies, average resolution, and number of pages. I wanted the links in the report to be "live" so that you can do <a href="file:\\c:\DCDisplay\DCDisplay.exe c:\path\file.cbr">FileName</a> but this doesn't work.

Has anyone got a small webserver service that can be used with <a href="1270.0.0.1:2012:\\DCDisplay c:\path\file.cbr">, for example ,otherwise I can add it to the application, but I think it's something that could be more general (with whitelisted applications, so DCDisplay would have to be registered to run c:\DCDisplay\DCDisplay.exe for example.

Neil Harding

19
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 06, 2011, 12:28 PM »
I plan on adding scanlation support (so you select a word balloon and then you can translate the text), so I'll add it when I start on the scanlation support.

Neil

20
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 06, 2011, 09:21 AM »
I'll have a look at the installer, I just use the Publish command in C# to generate the install.

Ctrl T should show 2 pages at a time (it assumes a page is double page if width > height, in which it skips that page (it also assumes 1st and last pages are double pages as well, so that it's like reading a book with a front and back cover).

Neil

21
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 06, 2011, 12:07 AM »
I've carried on working on DCDisplay. I've been adding a check all files mode, it recurses all the hard drives on your computer and examines every archive (zip & rar). It reports any problems it finds, and also any duplicate files (it does an image checksum of all the images in the archive, so if you have cbr and cbz version of the same contents it will match as a duplicate). I use a html template match that I wrote, so you can style the output (there is a simple default template with all fields present in a table.).

It generates a thumbnail of the first page in each archive that can be used in the html output, and it saves the results as it checks the files so you only have to do it once (and then the next time, it will just examine the new files although it will still compare with all the original files). It reports problems it finds, including nested archives (zip files inside another zip for example), thumbs.db inside the archive (no point at all, and increases the size). MAC format zip (MACOSX directory, which causes CDisplay to crash, although DCDisplay can handle it with ease), corrupt images, and malformed archives.

I've also replaced the 7Zip extractor, and now use native C# code to read rar and zip files with no dll dependency. I have a few TB of data that I am testing it with, so it will take a while to run (it's been running for over 30 hours non stop and seems to be working fine), once the report is generated I will update the release with a new version.

Neil

22
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 01, 2011, 03:39 PM »
Try the Ctrl T 2 page mode which is very nice way of reading a comic, and Ctrl S brings up a settings menu where you can adjust a bunch of parameters for the shader (at the moment the settings are not saved but they will be once I have the database installed, I want to be able to set settings for an individual comic (or page)).

If you view an image larger than the screen, and use space it will scroll around the image.

You can also use the wheel on the mouse to scroll through a comic as well. I'd like to add PDF support at a later date, since Acrobat is terrible :)

Neil

23
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 01, 2011, 03:04 PM »
Hi Mouser,

I made the keys compatible with CDisplay, but I will make it reload the mini comic if you press F1 or select Help. The background color will be added once I add in the configuration screen (I plan on making it so that you can reassign the keys), at the moment you could manually modify settings.xml to change options but that won't be required for the final release. The filename sorting took a lot longer than I expected, it is designed to work in cases where people do not name files consistently.

Neil

24
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 01, 2011, 02:16 PM »
You can use any directory of images that you put into a zip file (cbz) or rar file (cbr). http://goldenagecomics.co.uk//index.php was a bunch of public domain comics.

Neil

25
N.A.N.Y. 2011 / Re: NANY 2011 Release: DCDisplay
« on: January 01, 2011, 01:21 PM »
No I don't use the registry, I save the settings to an xml file (so they can be modified by hand if need be, although I will be modifying the application further so that all the settings will be accessible from within the program)

Neil

Pages: [1] 2next