Cum se combină imagini într-un TIFF multi pagini în .NET
De fiecare dată când am nevoie să arhivez sau să împărtășesc o mulțime de scanări, recepții sau docuri, TIFF multi-page este încă rege – mai ales pentru conformitate sau pentru a livra lucruri la un birou de școală.
De ce Multi-Page TIFF?
PDF-urile sunt peste tot, dar multe sisteme de moștenire sau fluxuri de lucru pentru documente Cererea TIFF-uri (în special pentru documente medicale sau juridice).Vrei un singur fișier, toate paginile în interior, fără fuss.
Soluția mea Go-to
Am aruncat toate imaginile mele de sursă (JPG, PNG, chiar și vechi BMPs) într-o folderă, executam acest script C# și expun un TIFF curat, multi pagini. funcționează de fiecare dată – și îl pot automatiza sau personaliza dacă este necesar.
Prevederile
- Visual Studio 2019+ (sau doar .NET CLI)
- .NET 6.0+ (sau .Net Framework 4.6.2+)
- Aspose.Imaging pentru .NET (NuGet face viata mai usor)
- Un folder de imagini pentru a merge
PM> Install-Package Aspose.Imaging
Iată cum construiesc multi-pagina TIFF
Pasul 1: Colectați toate imaginile
Am luat toate imaginile de la mine. ./input
Folderă :
string[] files = Directory.GetFiles("./input", "*.jpg"); // tweak pattern for PNG, BMP, etc.
Pasul 2: Încărcați imagini și configurați exportul 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
Pasul 3: Salvați toate paginile într-un singur 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());
Pasul 4: Verificarea și rezolvarea problemelor de sănătate
- Deschideți TIFF în IrfanView, Photoshop sau chiar Windows Photos. dacă arată bine, sunteți setat.
- Dacă obțineți pagini negre / albe: verificați formatele imaginii și adâncimea culorii. TIFF este picky despre unele tipuri de culori.
Pasul 5: Bonus Tweaks
- Change
Compression
pentruLzw
pentru coloranţi sauNone
Pentru pierderi - Pentru job-uri de batch, înfășurați codul de mai sus într-un loop pentru mai multe dosare
- Paralelizați dacă mașina dvs. poate gestiona acest lucru – pur și simplu nu deschideți prea multe fișiere deodată!
Ce mă trezește uneori
- Comanda de fișiere: Asigurați-vă că fișierele dvs. sunt denumite sau sortate așa cum doriți ca acestea să apară
- Formate Weird: Unele formate rare au nevoie de conversie în PNG/JPG mai întâi
- File mari: Pagini mari sau pagini cu rezime ridicate = memorie mare; procesarea în bucăți mai mici dacă este necesar
Tipuri Pro
- Îmi păstrează imaginile de sursă în siguranță – odată ce vă furați, nu le puteți „un-bake” ușor
- Pentru conformitate, țineți cont de compresiile comune (Lzw, Fax4)
- Utilizați denumirea clară pentru TIFF-urile de ieșire (data, proiectul etc.)
FAQ
**Q: Pot combina imagini de culoare și grayscale?**A: Da, dar verificați rezultatul – TIFF-urile pot fi ciudate dacă paginile sunt radical diferite
**Q: Cum pot automatiza acest lucru pentru fiecare încărcare?**A: Încărcați această logică într-un loc de muncă sau programat – ușor cu sarcinile .NET sau serviciile Windows
**Q: Ce se întâmplă cu OCR sau TIFF-urile care pot fi căutate?**A: Veți avea nevoie de un pas OCR – Aspose.OCR sau similar – înainte/după fuzionarea dacă aveți nevoie pentru a căuta text
concluziile
Cu Aspose.Imaging pentru .NET și un script simplu, puteți merge de la dosare înșelătoare la TIFF-uri compatibile, arhivabile și partajabile în minute.
See Aspose.Imaging pentru .NET API Referință Pentru mai multe tipuri TIFF, batch și multi-page.