
C#‘da XPS’yi JPG’ye nasıl dönüştürebilirim?
XPS belge biçimi, dijital belgeleri kolayca paylaşmanıza, oluşturmanıza, yazdırmanıza ve kaydetmenize olanak tanır, ancak destekleyici yazılımı yüklemeniz gerekebilir. Bir .NET programcısıysanız ve bir XPS dosyasını programlı olarak JPG/JPEG formatına aktarmak istiyorsanız, bu makale XPS’nin C#’ta JPG’ye nasıl dönüştürüleceğini açıklayacaktır.
Bu makalede aşağıdaki noktalar ele alınacaktır:
XPS’yi JPG’ye dönüştürmek için C# .NET API
Bu yazıda XPS’yi JPG’ye dönüştürmek için Conholdate.Total for .NET kullanacağız. Bu kitaplık, mevcut ve yeni XPS belgelerini oluşturmanıza, düzenlemenize ve kaydetmenize olanak tanır. Bu nedenle, DLL’yi indirebilir veya NuGet kullanarak bu XPS dönüştürme API’sini yükleyebilirsiniz.
Install-Package Conholdate.Total
C# dilinde XPS’yi programlı olarak JPG/JPEG’e dönüştürme
XPS dönüştürme API’si, XPS dosyalarınızı JPG biçimine dönüştürmenize olanak tanır.
Bir XPS dosyasını JPG görüntüsüne dönüştürme adımları şunlardır:
- XPS belgeleri için Stream sınıfının nesnesini başlatın.
- XPS akışını (önceki adımda oluşturuldu) ve XpsLoadOptions sınıfının nesnesini parametre olarak kullanarak XpsDocument sınıfının bir örneğini oluşturun.
- JpegSaveOptions sınıfının nesnesini gerekli parametrelerle başlatın.
- ImageDevice sınıfının bir örneğini oluşturun.
- [XpsDocument.Save(Device cihazı, SaveOptions options)]]19 öğesini çağırarak JPG’yi ImageDevice nesnesine kaydedin.
- JPG’yi diske kaydetmek için ImageDevice‘i kullanın (aşağıdaki kod örneğinde gösterildiği gibi).
Aşağıdaki kod örneği, C# kullanarak XPS’nin JPG’ye nasıl dönüştürüleceğini gösterir:
string inputFileName = "input.xps";
//Çıkış dosyası
string outputFileName = "XPStoImage_out.jpg";
// XPS giriş akışını başlat
using (Stream xpsStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read))
{
// Akıştan XPS belgesini yükleyin
XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
// Seçenekler nesnesini gerekli parametrelerle başlatın.
JpegSaveOptions options = new JpegSaveOptions()
{
SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality,
Resolution = 300,
PageNumbers = new int[] { 1, 2, 6 }
};
// Resim için işleme cihazı oluştur
ImageDevice device = new ImageDevice();
document.Save(device, options);
// Belge bölümleri boyunca yineleme yapın (XPS terimleriyle sabit belgeler)
for (int i = 0; i < device.Result.Length; i++)
// Bölüm sayfalarını yineleyin
for (int j = 0; j < device.Result[i].Length; j++)
{
// Görüntü çıkış akışını başlat
using (Stream imageStream = System.IO.File.Open(Path.GetDirectoryName(outputFileName) +
Path.GetFileNameWithoutExtension(outputFileName) + "_" + (i + 1) + "_" + (j + 1) +
Path.GetExtension(outputFileName), System.IO.FileMode.Create, System.IO.FileAccess.Write))
// Resim yaz
imageStream.Write(device.Result[i][j], 0, device.Result[i][j].Length);
}
}
Ücretsiz lisans alın
API’yi değerlendirme sınırlamaları olmadan test etmek için bir ücretsiz geçici lisans alabilirsiniz.
Çözüm
Bu makaleyi sonuçlandırmak için, XPS dönüştürme API’sini kullanarak XPS’yi C#’ta JPG’ye nasıl dönüştüreceğinizi öğrendiğinizi umuyoruz. XPS dönüştürme kitaplığının diğer özelliklerini keşfetmek için belgeleri ziyaret edebilirsiniz.
Bir soru sor
Sorularınızı veya sorularınızı forumumuzda bize bildirebilirsiniz.