Kako uključiti slike u multi-page TIFF u .NET-u

Kako uključiti slike u multi-page TIFF u .NET-u

Svaki put kada mi je potrebno arhivirati ili dijeliti veliki niz skeniranja, recepata ili doksa, multi-page TIFF je još uvijek kralj – osobito za usklađenost ili isporuku stvari u stari školski ured.

Zašto Multi-Page TIFF?

PDF-ovi su svugdje, ali puno nasljednih sustava ili radnih tokova dokumenata Potražnja TIFF (posebno za medicinske ili pravne evidencije).Želite jedan datoteku, sve stranice unutar, bez fuss.

Moje rješenje

Sve moje izvorne slike (JPG, PNG, čak i stari BMPs) stavljam u mapu, pokrenem ovaj C# skript i izlazim čisti, multi-page TIFF. Radim svaki put – i mogu ga automatizirati ili prilagoditi ako je potrebno.

Preduzeća

  • Visual Studio 2019+ (ili samo .NET CLI)
  • .NET 6.0+ (ili .Net Framework 4.6.2+)
  • Aspose.Imaging za .NET (NuGet olakšava život)
  • Fotografije koje se mogu kombinirati
PM> Install-Package Aspose.Imaging

Evo kako napraviti multi-page TIFF

1. korak: prikupljajte sve slike

Uzeo sam sve slike iz moje ./input Slijedeći folder:

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

Korak 2: Preuzmite slike i postavite TIFF izvoz

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

Korak 3: Sačuvajte sve stranice u jednom TIFF-u

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());

Korak 4: Sanitarni pregled i rješavanje problema

  • Otvorite TIFF u programu IrfanView, Photoshop ili čak i Windows Fotografije.
  • Ako dobijete crno/bijele stranice: provjerite formate slike i dubine boje.

Korak 5: Bonus Tweaks

  • Change Compression na Lzw u boji ili None Za gubitke
  • Za batch radove, uvrsti kod iznad u krug za više dosjea
  • Paralelirajte ako ga vaš stroj može upravljati – jednostavno nemojte otvoriti previše datoteka odjednom!

Što me ponekad povlači

  • File Order: Uvjerite se da su vaše datoteke nazvane ili razvrstane kako želite da se pojavljuju
  • Weird formati: Neke rijetke formate trebaju prvo pretvoriti u PNG/JPG
  • Veličanstveni datoteci: Veliki setovi ili stranice s visokim rasponom = velika memorija; proces u manjim komadićima ako je potrebno

Pro savjeti

  • Ja zadržavam svoje izvorne slike zaštićene – kad se pomiješate, ne možete ih lako “un-bake”
  • Za usklađenost, držite se uobičajenih kompresija (Lzw, Fax4)
  • Koristite jasno ime za TIFF izlaska (datum, projekt, itd.)

FAQ

**Q: Mogu li kombinirati crvene i šljunčane slike?**A: Da, ali provjerite izlazak – TIFF-ovi mogu biti čudni ako su stranice radikalno različite

**Q: Kako mogu automatizirati ovo za svaki upload?**Odgovor: Uklonite ovu logiku u čuvar ili planiran posao – jednostavno s .NET zadatcima ili Windows uslugama

**Q: Što je s OCR ili pretraživim TIFF-ovima?**Odgovor: Potrebno vam je korak OCR – Aspose.OCR ili sličan – prije/poslije spajanja ako trebate pretraživ tekst

zaključak

Uz Aspose.Imaging za .NET i jednostavan scenarij, možete ići od mješovitih dosjea na odgovarajuće, arhivirane i dijelljive TIFF-ove u nekoliko minuta.Ovaj pristup me je sačuvala satima – i vjerujem u to svaki put.

See Aspose.Imaging za .NET API reference Za više TIFF, batch i multi-page savjeta.

 Hrvatski