Hvordan forbinde bilder til en Multi-Page TIFF i .NET

Hvordan forbinde bilder til en Multi-Page TIFF i .NET

Hver gang jeg har behov for å arkivere eller dele et stort sett av skanninger, inntekter eller dokker, er multi-page TIFF fortsatt konge – spesielt for overholdelse eller levering av ting til en gammel skole kontor.

Hvorfor Multi-Page TIFF?

PDF-er er overalt, men mye arvsystemer eller dokumentarbeidsflyter Etterspørsel TIFFs (spesielt for medisinske eller juridiske opplysninger). Du vil ha en fil, alle sidene inne, ingen fuss.

Go-to løsning

Jeg kaster alle mine kildebilder (JPG, PNG, selv gamle BMPs) i en mappe, kjører dette C#-skriptet, og ut pops en ren, multi-page TIFF.

Prerequisites

  • Visual Studio 2019+ (eller bare .NET CLI)
  • .NET 6.0+ (eller .Net Framework 4.6.2+)
  • Aspose.Imaging for .NET (NuGet gjør livet enklere)
  • En mappe av bilder for å fusjonere
PM> Install-Package Aspose.Imaging

Her er hvordan jeg bygger Multi-Page TIFF

Steg 1: Samle alle bildene

Jeg tar bare alle bildene fra meg. ./input Foldere av:

string[] files = Directory.GetFiles("./input", "*.jpg"); // tweak pattern for PNG, BMP, etc.

Steg 2: Last ned bilder og sette opp TIFF eksport

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

Trinn 3: Lagre alle sidene i en enkelt 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 og problemløsning

  • Åpne TIFF i IrfanView, Photoshop eller til og med Windows Photos. Hvis det ser bra ut, er du satt.
  • Hvis du får svart/hvitt sider: sjekk bildeformater og farge dybder.

Steg 5: Bonus Tweaks

  • Change Compression til Lzw for farge dokker eller None For tapte
  • For batch jobber, henger koden ovenfor i en loop for flere mapper
  • Sammenlign hvis maskinen din kan håndtere det – bare ikke åpne for mange filer på en gang!

Hva truer meg opp noen ganger

  • Fileordre: Sørg for at filene dine er navngitt eller sortert slik du vil at de vises
  • Weird-format: Noen sjeldne format krever konvertering til PNG/JPG først
  • ** Store filer:** Store partier eller høye sider = stor minne; prosess i mindre stykker hvis det er nødvendig

Pro tips

  • Jeg holder mine kildebilder backup – når du fusjonerer, kan du ikke «un-bake» dem lett
  • For overholdelse, holde seg til vanlige kompressjoner (Lzw, Fax4)
  • Bruk klart navn for utgang TIFF (dato, prosjekt, etc.)

FAQ

**Q: Kan jeg kombinere farge og grayscale bilder?**A: Ja, men sjekk utgangen – TIFF kan være merkelig hvis sidene er radikalt forskjellige

**Q: Hvordan kan jeg automatisere dette for hver upload?**A: Vurder denne logikken i en Watcher eller planlagt jobb – enkelt med .NET-oppgaver eller Windows-tjenester

**Q: Hva med OCR eller søkbare TIFF?**A: Du trenger et OCR-steg – Aspose.OCR eller lignende – før/etter fusjon hvis du trenger søkbar tekst

Conclusion

Med Aspose.Imaging for .NET og et enkelt skript, kan du gå fra messy mapper til compliant, arkiverbar og delbare TIFFs i minutter.

See Aspose.Imaging for .NET API Referanse For mer TIFF, batch og multi-page tips.

 Norsk