Tämä on ammattimainen ratkaisu TIFF:n pakkaamiseen käyttämällä C#, F#, VB.NET. Käytä TIFF optimointisovellusliittymäämme korkean tason, alustasta riippumattomien ohjelmistojen kehittämiseen .NET ja .NET Core -alustoille. Kokeile verkossa ilmaiseksi!
Pienennä suuria TIFF tiedostoja laadun heikkenemättä. Poista tarpeettomat ja käyttämättömät tiedot. Pienennä TIFF tiedoston kokoa koodissa. C# kirjasto tarjoaa kehittäjille integroidun API TIFF sisällön optimoimiseksi.
C# kirjasto on erillinen ratkaisu, joka ei vaadi kolmannen osapuolen ohjelmiston asentamista.
Häviötön pakkaus ja syvällinen sisällön optimointi on tehty helpoksi 'Aspose.Words for .NET'. Seuraava esimerkki osoittaa, kuinka TIFF tiedoston C# sisältö optimoidaan:
dotnet add package Aspose.Words
Kopio
using Aspose.Words;
var doc = new Document();
var builder = new DocumentBuilder(doc);
var shape = builder.InsertImage("Input.tiff");
var saveOptions = new ImageSaveOptions(SaveFormat.Tiff)
{
TiffCompression = TiffCompression.Lzw
};
shape.GetShapeRenderer().Save("Output.tiff", saveOptions);
using Aspose.Words;
var doc = new Document("Input.tiff");
doc.Cleanup();
var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
if (shape.IsImage)
{
// Kehittäjä voi valita kuvan pakkauskirjaston.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Pakkaa kuva ja aseta se takaisin muotoon.
shape.ImageData.SetImage("yourCompressedImage");
}
}
var saveOptions = new PdfSaveOptions
{
CacheBackgroundGraphics = true
};
doc.Save("Output.tiff", saveOptions);
using Aspose.Words;
var doc = new Document("Input.tiff");
doc.Cleanup();
var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
if (shape.IsImage)
{
// Kehittäjä voi valita kuvan pakkauskirjaston.
using var image = Image.Fromstream(shape.ImageData.ToStream());
// ...
// Pakkaa kuva ja aseta se takaisin muotoon.
shape.ImageData.SetImage("yourCompressedImage");
}
}
doc.Save("Output.tiff");
using Aspose.Words;
var doc = new Document("Input.tiff");
doc.Cleanup();
var nodes = doc.GetChildNodes(NodeType.Shape, true);
foreach (Shape shape in nodes)
{
if (shape.IsImage)
{
// Kehittäjä voi valita kuvan pakkauskirjaston.
using var image = Image.FromStream(shape.ImageData.ToStream());
// ...
// Pakkaa kuva ja aseta se takaisin muotoon.
shape.ImageData.SetImage("yourCompressedImage");
}
}
var saveOptions = new OoxmlSaveOptions
{
CompressionLevel = CompressionLevel.Maximum
};
doc.Save("Output.tiff", saveOptions);
using Aspose.Words;
var doc = new Document();
var builder = new DocumentBuilder(doc);
var shape = builder.InsertImage("Input.tiff");
var saveOptions = new ImageSaveOptions(SaveFormat.Tiff)
{
TiffCompression = TiffCompression.Lzw
};
shape.GetShapeRenderer().Save("Output.tiff", saveOptions);
using Aspose.Words;
using Aspose.Words.Pdf2Word.FixedFormats;
using var pdfStream = File.OpenRead("Input.tiff");
var renderer = new PdfFixedRenderer();
var pdfReadOptions = new PdfFixedOptions
{
ImageFormat = FixedImageFormat.Jpeg,
JpegQuality = 50
};
const double maxPageDimension = 1584;
var pagesStream = renderer.SavePdfAsImages(pdfStream, pdfReadOptions);
var builder = new DocumentBuilder();
for (var i = 0; i < pagesStream.Count; ++i)
{
// Aseta sivun enimmäiskoko välttääksesi nykyisen sivun kuvan skaalaus.
var pageSetup = builder.PageSetup;
SetPageSize(pageSetup, maxPageDimension, maxPageDimension);
var pageImage = builder.InsertImage(pagesStream[i]);
SetPageSize(pageSetup, pageImage.Width, pageImage.Height);
pageSetup.TopMargin = 0;
pageSetup.LeftMargin = 0;
pageSetup.BottomMargin = 0;
pageSetup.RightMargin = 0;
if (i != pagesStream.Count - 1)
builder.InsertBreak(BreakType.SectionBreakNewPage);
}
var saveOptions = new PdfSaveOptions
{
CacheBackgroundGraphics = true
};
builder.Document.Save("Output.tiff", saveOptions);
private void SetPageSize(PageSetup pageSetup, double width, double height)
{
pageSetup.PageWidth = width;
pageSetup.PageHeight = height;
}
Aspose.Words for .NET asentamiseen järjestelmään on kolme vaihtoehtoa. Valitse tarpeitasi vastaava ja seuraa vaiheittaisia ohjeita:
Tuotteemme on täysin monikäyttöinen ja tukee kaikkia tärkeimpiä .NET-toteutuksia:
Sikäli kuin .NET-koodi ei riipu taustalla olevasta laitteistosta tai käyttöjärjestelmästä, vaan vain virtuaalikoneesta, voit vapaasti kehittää kaikenlaisia ohjelmistoja Windowsille, macOS:lle, Androidille, iOS:lle ja Linuxille. Varmista vain, että olet asentanut vastaavan version .NET Framework, .NET Core, Windows Azure, Mono tai Xamarin.
Suosittelemme Microsoft Visual Studion, Xamarinin ja MonoDevelopin integroitujen kehitysympäristöjen käyttöä C#, F#, VB.NET sovellusten luomiseen.
Katso lisätietoja tuotedokumentaatiosta.
Voit optimoida tiedostoja monissa muissa tiedostomuodoissa: