Com incorporar imatges en un TIFF de múltiples pàgines en .NET

Com incorporar imatges en un TIFF de múltiples pàgines en .NET

Cada vegada que necessito arxiu o compartir un gran conjunt d’escans, receptors o docs, TIFF de múltiples pàgines encara és rei - especialment per complir o lliurar les coses a una oficina de l’escola antiga.

Per què el Multi-Page TIFF?

PDFs són arreu, però molts sistemes d’herència o fluxos de treball de documents demanda TIFFs (especialment per a registres mèdics o legals). Vostè vol un arxiu, totes les pàgines dins, no fuss.

La meva solució

Vaig llançar totes les meves imatges de font (JPG, PNG, fins i tot vells BMPs) en una carpeta, executar aquest guió C#, i sortir pops un net, multi-pàgines TIFF. funciona cada vegada - i es pot automatitzar o personalitzar si cal.

Prerequisits

  • Visual Studio 2019+ (o només el .NET CLI)
  • .NET 6.0+ (o .Net Framework 4.6.2+)
  • Aspose.Imaging per a .NET (NuGet fa la vida més fàcil)
  • Una carpeta d’imatges per fusionar
PM> Install-Package Aspose.Imaging

Aquí teniu la manera de construir el TIFF de múltiples pàgines

Pas 1: Recollir totes les imatges

Vaig agafar totes les imatges de la meva ./input El cartell:

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

Pas 2: Carregar imatges i configurar les exportacions TIFF

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

Pas 3: Salvar totes les pàgines en un únic 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());

Pas 4: Inspecció sanitària i solució de problemes

  • Obre el TIFF en IrfanView, Photoshop, o fins i tot Windows Photos. Si sembla bé, està configurat.
  • Si teniu pàgines negres / blanques: comproveu els formats d’imatge i les profunditats de colors. TIFF és picky sobre alguns tipus de color.

Pas 5: Tweaks de bonificació

  • Change Compression per a Lzw per a la coloració de color o None Per la pèrdua
  • Per a les tasques de batxillerat, envolta el codi anterior en un rumb per a múltiples mapes
  • Paral·lelis si la teva màquina pot gestionar-ho - només no obrir massa arxius alhora!

El que m’atreveix de vegades

  • Ordeig de fitxers: Assegureu-vos que els vostres arxius són anomenats o classificats com voleu que apareixin
  • Formats Weird: Alguns formats rars necessiten la conversió a PNG/JPG primer
  • Els arxius grans: grans batxes o pàgines d’alta velocitat = gran memòria; processar en trossos més petits si cal

Tipus de Pro

  • Mantenim les meves imatges de font guardades – una vegada que es fusionen, no es pot “un-bake” fàcilment
  • Per a la conformitat, adherir-se a les compressions comunes (Lzw, Fax4)
  • Utilitzeu un nom clar per als TIFFs de sortida (data, projecte, etc.)

FAQ

**Q: Puc combinar colors i imatges de gris?**A: Sí, però comprova la sortida — els TIFFs poden ser estranys si les pàgines són radicalment diferents

**Q: Com puc automatitzar això per a cada carregament?**A: Posa aquesta lògica en una tasca d’observació o programada - fàcil amb tasques .NET o serveis de Windows

**Q: Què passa amb OCR o TIFFs buscables?**A: Necessitaràs un pas OCR —Aspose.OCR o similar— abans/després de la fusió si necessites text buscable

Conclusió

Amb Aspose.Imaging per a .NET i un senzill guió, es pot anar de fitxers mossos a TIFFs compliants, arxivables i compartibles en minuts.

See Aspose.Imaging per a .NET API Referència per a més TIFF, batxillerat i consells multipàgins.

 Català