Hur Man Fusionerar Bilder I En Multi-Page TIFF I .NET
Varje gång jag behöver arkivera eller dela en stor uppsättning skanningar, mottagningar eller doker, är flersidiga TIFF fortfarande kung – speciellt för överensstämmelse eller överlämnande av saker till ett gammalt skolkontor.
Varför flera sidor TIFF?
PDF-filer finns överallt, men många arvssystem eller dokumentarbetsflöden efterfrågan TIFFs (särskilt för medicinska eller juridiska register). Du vill ha en fil, alla sidor inuti, ingen fuss.
Go-to lösning
Jag kastar alla mina källbilder (JPG, PNG, till och med gamla BMPs) i en mapp, kör detta C#-skript och poppar ut en ren, flersidig TIFF. Det fungerar varje gång – och jag kan automatisera eller anpassa det om det behövs.
förutsättningar
- Visual Studio 2019+ (eller bara .NET CLI)
- .NET 6.0+ (eller .Net Framework 4.6.2+)
- Aspose.Imaging för .NET (NuGet gör livet enklare)
- En mapp av bilder för att kombinera
PM> Install-Package Aspose.Imaging
Här är hur jag bygger Multi-Page TIFF
Steg 1: Samla alla bilder
Jag tar bara alla bilder från min ./input
Föregående folder:
string[] files = Directory.GetFiles("./input", "*.jpg"); // tweak pattern for PNG, BMP, etc.
Steg 2: Ladda upp bilder och ställa in TIFF Export
var images = files.Select(f => Image.Load(f)).ToList();
var tiffOptions = new Aspose.Imaging.ImageOptions.TiffOptions(Aspose.Imaging.FileFormats.Tiff.Enums.TiffExpectedFormat.Default);
tiffOptions.Compression = Aspose.Imaging.FileFormats.Tiff.Enums.TiffCompressions.CcittFax4; // good for scans; use Lzw or None for color
Steg 3: Spara alla sidor i en enda TIFF
string outFile = "./output/merged_multipage.tiff";
using (var tiffImage = Aspose.Imaging.Image.Create(tiffOptions, images[0].Width, images[0].Height, false))
{
for (int i = 0; i < images.Count; i++)
{
var srcImg = images[i];
// For first page, just draw
if (i == 0)
{
var g = new Aspose.Imaging.Graphics(tiffImage);
g.DrawImage(srcImg, 0, 0, srcImg.Width, srcImg.Height);
}
else
{
// Add a new page for each image
tiffImage.AddPage(srcImg);
}
}
tiffImage.Save(outFile);
}
images.ForEach(img => img.Dispose());
Steg 4: Sanitetskontroll och problemlösning
- Öppna TIFF i IrfanView, Photoshop eller till och med Windows Photos. Om det ser bra ut är du inställd.
- Om du får svart/vit sidor: kolla in bildformat och färgdjup. TIFF är picky om vissa färgtyper.
Steg 5: Bonus Tweaks
- Change
Compression
tillLzw
för färger ellerNone
För förlust - För batchjobb, häll koden ovan i en loop för flera mappar
- Parallellt om din maskin kan hantera det – bara öppna inte för många filer på en gång!
Vad tränger mig upp ibland
- File order: Se till att dina filer är namngivna eller sorterade som du vill att de ska visas
- Weird-format: Vissa sällsynta format behöver konvertering till PNG/JPG först
- Hög filer: Stora partier eller höga sidor = stor minne; bearbetning i mindre bitar om det behövs
Pro tips
- Jag håller mina källbilder säkerhetskopierade – när du går samman, kan du inte ”un-bake” dem lätt
- För överensstämmelse, hålla sig till vanliga komprimeringar (Lzw, Fax4)
- Använd tydliga namn för dina output TIFF (datum, projekt, etc.)
FAQ
**Q: Kan jag kombinera färg och gråskala bilder?**A: Ja, men kolla in utgången – TIFF kan vara konstigt om sidorna är radikalt olika
**Q: Hur automatiserar jag detta för varje uppladdning?**A: Hämta denna logik i en klocka eller planerat jobb – enkelt med .NET-uppgifter eller Windows-tjänster
**Q: Vad sägs om OCR eller sökbara TIFF?**A: Du behöver ett OCR-steg – Aspose.OCR eller liknande – innan/efter sammanslagning om du behöver sökbar text
slutsatser
Med Aspose.Imaging för .NET och en enkel skript kan du gå från missy mappar till kompatibla, arkiverbara och delbara TIFF i minuter.
See Aspose.Imaging för .NET API Referens för mer TIFF, batch och flersidiga tips.