Enhance image processing performance and flexibility by introducing atomic counters, improving file pattern matching, and refining logo positioning logic.
This commit is contained in:
parent
ba965e8266
commit
68c1106f65
8 changed files with 134 additions and 68 deletions
|
|
@ -88,7 +88,28 @@ namespace MaddoShared
|
|||
|
||||
DirectoryInfo destDir;
|
||||
destDir = new DirectoryInfo(Path.Combine(dirDest.FullName));
|
||||
foreach (FileInfo file in dir.GetFiles(filter))
|
||||
|
||||
// Support multiple patterns separated by ';' or ','
|
||||
var patterns = (filter ?? "*").Split(new[] { ';', ',' }, StringSplitOptions.RemoveEmptyEntries).Select(p => p.Trim()).ToArray();
|
||||
|
||||
// Collect matching files for all patterns and avoid duplicates
|
||||
var matchedFiles = new List<FileInfo>();
|
||||
foreach (var pat in patterns)
|
||||
{
|
||||
try
|
||||
{
|
||||
matchedFiles.AddRange(dir.GetFiles(pat));
|
||||
}
|
||||
catch
|
||||
{
|
||||
// Ignore pattern errors and continue
|
||||
}
|
||||
}
|
||||
|
||||
// Remove duplicates (by FullName)
|
||||
var distinctFiles = matchedFiles.GroupBy(f => f.FullName, StringComparer.OrdinalIgnoreCase).Select(g => g.First()).OrderBy(f => f.Name).ToList();
|
||||
|
||||
foreach (FileInfo file in distinctFiles)
|
||||
{
|
||||
contaFilePerDir += 1;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue