If you don't know it, have a look at http://www.photools.com/
These Scripts can be used any way, but also without any kind of warranty!
If you don't agree, please leave now.
= new Script
= updated Script
Multi Database Transmission V 1.2 (06-Jun-2003) - This script transmits Images from a SourceDB to a TargetDB, preserving all Category-Assignments and Property-Entries. (And, *g*, if Mario would give us an updated Timestamp for the DatabaseImageRecords, we could merge Databases by checking which Entry is newer. Think about mobile IMatch.)
Remove Empty Categories from Database V 1.0 (30-May-2003) - This script removes all 'empty'-Categories from the active Database.
OffLineCache Garbage Collector V 1.0 (28-Jun-2003) - This script checks all existing Images in OfflineCacheFolder of the active Database and deletes ownerless OLC-Images. Additionally you can select some Categories from which you want delete the Images OfflineCache-pendants.
Photoshop Conversion (PS 5.5 + 6) V 0.9 (02-Jul-2003) - This Script combines the ManagementPower of IMatch with the ImageManipulationPower of Adobes Photoshop 6.0 in an easy to use way. This Script I have written together with Klaus Schwarzburg. Many thanks for your help, Klaus.
lcms Webgallery Creator V 0.1 (05-Oct-2002) - This script enhance the original Webgallery-Creator-Script with an ICC-Conversion-feature.
little Batch Converter V 1.2 (26-Jun-2003) - This script create resized copies, optionally with ICC-Conversion for Tiff- and Jpeg-sources. Can work with OfflineCacheImages instead of originals and can transmit all Property-, Category- and IPTC-data to the copies.
Registry Functions V 1.0 (01-Nov-2002) - A littleHelper-Script to put and retrieve Data to/from Registry in its correct DataTypes. VB usually provides only the StringType. With this Lib you can store every DataType to Registry (Byte, Integer, Long, Double, Decimal, Boolean, Variant, ...).
Debug Messages V 1.0 (08-Nov-2002) - A littleHelper-Script which handles Debugoutput in Priorityclasses. With this you can have good Informationoutput when you develope a Script and a less or no Output when run the Script in Productivity-Mode. Your DebugmessagePoints can stay in code without any (auswirkung). Usefull for future changes on your code.
This is my first Script.
It enhance the original Webgallery Creator Script with an ICC-ConversionFeature.
To deal with ICC-profiles we can use openSource software of 'the
little cms project'.
For converting TIFF- and JPEG-files between different colorspaces we need the
two commandline tools tifficc.exe
and jpegicc.exe.
To set your Webgallery-Creator ready to deal with ICC-profiles you also need my
enhanced Webgallery Creator Script.
To let you run the original and the new script parallel, i have added a '_hn273'
to every filename. So you can copy these files into your IMatch-scriptfolder and
no existing files or features will be changed.
Ok, for those who know: I've worked with the imwg-files created by ks and djb which are available in the userscript-download-section. So if you use this one and want to work with my new one too, you only need my new one, because if you leave all additional-feature-checkboxes unchecked, it operates like the original one.
The two original Scripts (imwg_main.bas + imwg_core.cls) are from the author of IMatch, Michael Westphal. He shipped them with IMatch as ScriptingExamples.
Explanation
MainScript: New_Part_of_CreateBitmapFunction.txt
Needed Modules: [ICC_ConversionFunction.txt]
New_Part_of_CreateBitmapFunction.txt: (53 lines / 35 real codelines / 0 Subs / 0 Functions / 0 Properties)
1| 2| [...] 3| 4| ' If the sourceImage is of Type JPEG or TIFF it can colorconverted via ICC 5| Dim convProg As String 6| If hn_GetFileType(TheImage.FileName) = ".jpg" Then 7| convProg = "jpeg" 8| End If 9| If hn_GetFileType(TheImage.FileName) = ".tif" Then 10| convProg = "tiff" 11| End If 12| 13| If convProg <> "" Then 14| 15| 'The Sourcefile is of Type JPEG or TIFF and we pass them to the Conversion-Routine 16| Dim tempimage As String 17| tempimage = hn_ICC_conversion(TheImage.FileName,convProg,ImageListName) 18| 19| 'After the Conversion-Routine has finished we check its result 20| Select Case tempimage 21| Case "noprog" 22| 'If the needed Prog or Profiles are not available we do an Error 23| Err.Raise 10107 24| Case "nofile" 25| 'If the needed Prog or Profiles are available but we can find 26| 'a proper sourcefile, we create a placeholder 27| bm.Resize(Size,Size) 28| bm.Fill(RGB(222,222,222)) 29| Dim txt As String 30| txt = "ICC-" & Chr(13) & "conversion" & Chr(13) & "failed!" 31| Dim fnt2 As New IMFont 32| fnt2.FaceName = "Arial" 33| fnt2.Color = RGB(108,0,0) 34| fnt2.Size = 24 35| bm.DrawText(txt,fnt2,imfaCenter,imfaTop,0,0,Size,Size) 36| Set fnt2 = Nothing 37| bm.SaveFile(TargetFileName,IMatch.imbfJPEG24Standard) 38| GoTo FINALLY 39| Case Else 40| 'Everything ok, we load the converted tempfile 41| bm.LoadFile tempimage,24 42| Kill tempimage 43| End Select 44| 45| Else 46| 47| ' If the sourceImage is of another Type it will be passed whitout ICCconversion 48| bm.LoadFile TheImage.FileName,24 49| 50| End If 51| 52| [...] 53|