努力使用PyLiff,Libtiff或其他可行的方法将多个文件合并为多页TIFF。
我整合了数千个文件,其中包含任意八位数ID,后跟页码:
名为date \ images \ 1999 \ 10 \ 14
的目录文件组1 01234567_0001.tif,01234567_0002.tif,01234567_0003.tif
文件组2 07654321_0001.tif,07654321_0002.tif
转化后,我想要两个文件:
等等。请提供有关将按前8位数分隔的脚本和合并的指导,合并具有该唯一八位数的文件,并将新(合并)文件重命名为相应的 8位数字.tiff < / p>
我意识到这似乎毫不费力。我有许多不同的脚本和方法会使这个论坛的水域变得混乱。
答案 0 :(得分:0)
Ruby能够提供的解决方案(Imagemagick实际进行了转换)。希望这对其他人有帮助:
#!/usr/bin/env ruby
require 'find'
require 'set'
start_path = ARGV.shift || "~\Desktop\in"
output_path = ARGV.shift || "~\Desktop\out"
unless File.exist? start_path
raise "cannot catalog contents; '#{start_path}' does not exist"
end
unless File.exist? output_path
raise "cannot catalog contents; '#{output_path}' does not exist"
end
#make sure the output directory has a trailing slash
unless output_path =~ /\\$/
output_path += "\\"
end
documents = Set.new
#look at each file
Find.find(start_path) do |file_path|
#look for the document pattern
if file_path =~ /^(.*?(\d{8}))_\d{4}.tif/
#track it so we can get the unique document list
documents.add({:path => $1, :name => $2})
end
end
documents.each do |doc|
command = "convert #{doc[:path]}*.tif* #{output_path}#{doc[:name]}.tif"
puts command
`#{command}`
end